diff options
| author | Michael Biebl <biebl@debian.org> | 2015-11-24 00:06:32 +0100 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2015-11-24 00:06:32 +0100 |
| commit | a6ece1a2aa19a6268335c87d4fdef20123dd04a5 (patch) | |
| tree | 87f1961faacdfafb1c4fee5f2feb6bcb5c06813b | |
| parent | 81836c2d44802b4cca833d7775dd627e0797a7e2 (diff) | |
Imported Upstream version 1.0.8 upstream/1.0.8
373 files changed, 16999 insertions, 10651 deletions
diff --git a/Makefile.in b/Makefile.in index 58cc69bf..749a36f7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -388,6 +388,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/NEWS b/NEWS index 5f6e145a..4966050a 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,74 @@ =============================================== +NetworkManager-1.0.8 +Overview of changes since NetworkManager-1.0.6 +=============================================== + +This is a new stable release of NetworkManager. Notable changes include: + +* MTU indicated by a VPN gateway is now properly applied. + +* Fixed MSS setting when MTU changes. + +* The default route is properly restored on device disconnect. + +* Build with older toolchains has been fixed. + +* The team devices can now properly be enslaved to bridges. + +* Failed DHCP attempts for assumed connections are now retried after + a timeout. + +* Default wired connection is now created after udev registers the device. + +* Support for Bluetooth DUN devices with Bluez 5 has been fixed. + +* The ipv6.ignore-auto-dns property is now properly honored making it + possible to override automatically obtained name servers. + +* Invalid permanent MAC adddresses as reported by some devices are now + ignored. + +* Device links reported by more recent versions of Linux kernel that reside + in different network namespaces are no longer confused with links in + the namespace NetworkManager runs in. + +* MAC address changes of VLANs enslaved to a bond are now properly + propagated to the master device. + +* Fixed error handling for teaming devices with invalid configuration. + +* Wi-Fi AP list is now updated correctly after AP mode has been used. + +* Management of a device is not attempted until the device has been + registered with udev. + +* The error handling for VPN secret agents is now significantly more robust. + +* Detection of s390 CTC devices now works properly. + +* A GATEWAY property in /etc/sysconfig/network now no longer affects + non-static connections. + +* Added support for IPv6-only VPN connections. + +* The systemd service now uses HUP signal to reload configuration. + +* Change VLAN default flags to set REORDER_HDR for new connections. + +* nmtui is now able to ignore automatically configured routes. + +* Numerous bash shell autocompletion fixes for nmcli. + +* Allow setting IPv6 and PPP settings for GDM and CDMA connections via + nmcli. + +* Added support for adding ADSL connections in nmcli. + +* Numerous crash fixes. + +* Updates to Swedish, Italian and Polish translations. + +=============================================== NetworkManager-1.0.6 Overview of changes since NetworkManager-1.0.4 =============================================== diff --git a/build-aux/ltmain.sh b/build-aux/ltmain.sh index 63ae69dc..0f0a2da3 100644 --- a/build-aux/ltmain.sh +++ b/build-aux/ltmain.sh @@ -1,9 +1,12 @@ +#! /bin/sh +## DO NOT EDIT - This file generated from ./build-aux/ltmain.in +## by inline-source v2014-01-03.01 -# libtool (GNU libtool) 2.4.2 +# libtool (GNU libtool) 2.4.6 +# Provide generalized library-building support services. # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, -# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. +# Copyright (C) 1996-2015 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. @@ -23,881 +26,2112 @@ # General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, -# or obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program. If not, see <http://www.gnu.org/licenses/>. -# Usage: $progname [OPTION]... [MODE-ARG]... -# -# Provide generalized library-building support services. -# -# --config show all configuration variables -# --debug enable verbose shell tracing -# -n, --dry-run display commands without modifying any files -# --features display basic configuration information and exit -# --mode=MODE use operation mode MODE -# --preserve-dup-deps don't remove duplicate dependency libraries -# --quiet, --silent don't print informational messages -# --no-quiet, --no-silent -# print informational messages (default) -# --no-warn don't display warning messages -# --tag=TAG use configuration variables from tag TAG -# -v, --verbose print more informational messages than default -# --no-verbose don't print the extra informational messages -# --version print version information -# -h, --help, --help-all print short, long, or detailed help message -# -# MODE must be one of the following: -# -# clean remove files from the build directory -# compile compile a source file into a libtool object -# execute automatically set library path, then run a program -# finish complete the installation of libtool libraries -# install install libraries or executables -# link create a library or an executable -# uninstall remove libraries from an installed directory -# -# MODE-ARGS vary depending on the MODE. When passed as first option, -# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that. -# Try `$progname --help --mode=MODE' for a more detailed description of MODE. -# -# When reporting a bug, please describe a test case to reproduce it and -# include the following information: -# -# host-triplet: $host -# shell: $SHELL -# compiler: $LTCC -# compiler flags: $LTCFLAGS -# linker: $LD (gnu? $with_gnu_ld) -# $progname: (GNU libtool) 2.4.2 -# automake: $automake_version -# autoconf: $autoconf_version -# -# Report bugs to <bug-libtool@gnu.org>. -# GNU libtool home page: <http://www.gnu.org/software/libtool/>. -# General help using GNU software: <http://www.gnu.org/gethelp/>. PROGRAM=libtool PACKAGE=libtool -VERSION=2.4.2 -TIMESTAMP="" -package_revision=1.3337 +VERSION=2.4.6 +package_revision=2.4.6 -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + +## ------ ## +## Usage. ## +## ------ ## + +# Run './libtool --help' for help with using this script from the +# command line. + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# After configure completes, it has a better idea of some of the +# shell tools we need than the defaults used by the functions shared +# with bootstrap, so set those here where they can still be over- +# ridden by the user, but otherwise take precedence. + +: ${AUTOCONF="autoconf"} +: ${AUTOMAKE="automake"} + + +## -------------------------- ## +## Source external libraries. ## +## -------------------------- ## + +# Much of our low-level functionality needs to be sourced from external +# libraries, which are installed to $pkgauxdir. + +# Set a version string for this script. +scriptversion=2015-01-20.17; # UTC + +# General shell script boiler plate, and helper functions. +# Written by Gary V. Vaughan, 2004 + +# Copyright (C) 2004-2015 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. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. + +# As a special exception to the GNU General Public License, if you distribute +# this file as part of a program or library that is built using GNU Libtool, +# you may include this file under the same distribution terms that you use +# for the rest of that program. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# Evaluate this file near the top of your script to gain access to +# the functions and variables defined here: +# +# . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh +# +# If you need to override any of the default environment variable +# settings, do that before evaluating this file. + + +## -------------------- ## +## Shell normalisation. ## +## -------------------- ## + +# Some shells need a little help to be as Bourne compatible as possible. +# Before doing anything else, make sure all that help has been provided! + +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac + case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# NLS nuisances: We save the old values to restore during execute mode. -lt_user_locale= -lt_safe_locale= -for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +# NLS nuisances: We save the old values in case they are required later. +_G_user_locale= +_G_safe_locale= +for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do - eval "if test \"\${$lt_var+set}\" = set; then - save_$lt_var=\$$lt_var - $lt_var=C - export $lt_var - lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" - lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" + eval "if test set = \"\${$_G_var+set}\"; then + save_$_G_var=\$$_G_var + $_G_var=C + export $_G_var + _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" + _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" fi" done -LC_ALL=C -LANGUAGE=C -export LANGUAGE LC_ALL -$lt_unset CDPATH +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Make sure IFS has a sensible default +sp=' ' +nl=' +' +IFS="$sp $nl" + +# There are apparently some retarded systems that use ';' as a PATH separator! +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + -# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh -# is ksh but when the shell is invoked as "sh" and the current value of -# the _XPG environment variable is not equal to 1 (one), the special -# positional parameter $0, within a function call, is the name of the -# function. -progpath="$0" +## ------------------------- ## +## Locate command utilities. ## +## ------------------------- ## +# func_executable_p FILE +# ---------------------- +# Check that FILE is an executable regular file. +func_executable_p () +{ + test -f "$1" && test -x "$1" +} + + +# func_path_progs PROGS_LIST CHECK_FUNC [PATH] +# -------------------------------------------- +# Search for either a program that responds to --version with output +# containing "GNU", or else returned by CHECK_FUNC otherwise, by +# trying all the directories in PATH with each of the elements of +# PROGS_LIST. +# +# CHECK_FUNC should accept the path to a candidate program, and +# set $func_check_prog_result if it truncates its output less than +# $_G_path_prog_max characters. +func_path_progs () +{ + _G_progs_list=$1 + _G_check_func=$2 + _G_PATH=${3-"$PATH"} + + _G_path_prog_max=0 + _G_path_prog_found=false + _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} + for _G_dir in $_G_PATH; do + IFS=$_G_save_IFS + test -z "$_G_dir" && _G_dir=. + for _G_prog_name in $_G_progs_list; do + for _exeext in '' .EXE; do + _G_path_prog=$_G_dir/$_G_prog_name$_exeext + func_executable_p "$_G_path_prog" || continue + case `"$_G_path_prog" --version 2>&1` in + *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; + *) $_G_check_func $_G_path_prog + func_path_progs_result=$func_check_prog_result + ;; + esac + $_G_path_prog_found && break 3 + done + done + done + IFS=$_G_save_IFS + test -z "$func_path_progs_result" && { + echo "no acceptable sed could be found in \$PATH" >&2 + exit 1 + } +} + + +# We want to be able to use the functions in this file before configure +# has figured out where the best binaries are kept, which means we have +# to search for them ourselves - except when the results are already set +# where we skip the searches. + +# Unless the user overrides by setting SED, search the path for either GNU +# sed, or the sed that truncates its output the least. +test -z "$SED" && { + _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for _G_i in 1 2 3 4 5 6 7; do + _G_sed_script=$_G_sed_script$nl$_G_sed_script + done + echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed + _G_sed_script= + + func_check_prog_sed () + { + _G_path_prog=$1 + + _G_count=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo '' >> conftest.nl + "$_G_path_prog" -f conftest.sed <conftest.nl >conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin + rm -f conftest.sed + SED=$func_path_progs_result +} + + +# Unless the user overrides by setting GREP, search the path for either GNU +# grep, or the grep that truncates its output the least. +test -z "$GREP" && { + func_check_prog_grep () + { + _G_path_prog=$1 + + _G_count=0 + _G_path_prog_max=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo 'GREP' >> conftest.nl + "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' <conftest.nl >conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin + GREP=$func_path_progs_result +} + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# All uppercase variable names are used for environment variables. These +# variables can be overridden by the user before calling a script that +# uses them if a suitable command of that name is not already available +# in the command search PATH. : ${CP="cp -f"} -test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} +: ${ECHO="printf %s\n"} +: ${EGREP="$GREP -E"} +: ${FGREP="$GREP -F"} +: ${LN_S="ln -s"} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} -: ${Xsed="$SED -e 1s/^X//"} -# Global variables: -EXIT_SUCCESS=0 -EXIT_FAILURE=1 -EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. -EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. - -exit_status=$EXIT_SUCCESS -# Make sure IFS has a sensible default -lt_nl=' -' -IFS=" $lt_nl" +## -------------------- ## +## Useful sed snippets. ## +## -------------------- ## -dirname="s,/[^/]*$,," -basename="s,^.*/,," +sed_dirname='s|/[^/]*$||' +sed_basename='s|^.*/||' -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - func_dirname_result=`$ECHO "${1}" | $SED "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} # func_dirname may be replaced by extended shell implementation - - -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "${1}" | $SED "$basename"` -} # func_basename may be replaced by extended shell implementation +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='s|\([`"$\\]\)|\\\1|g' +# Same as above, but do not quote variable references. +sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi - func_basename_result=`$ECHO "${1}" | $SED -e "$basename"` -} # func_dirname_and_basename may be replaced by extended shell implementation +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' +# Sed substitution that converts a w32 file name or path +# that contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' + +# Re-'\' parameter expansions in output of sed_double_quote_subst that +# were '\'-ed in input to the same. If an odd number of '\' preceded a +# '$' in input to sed_double_quote_subst, that '$' was protected from +# expansion. Since each input '\' is now two '\'s, look for any number +# of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. +_G_bs='\\' +_G_bs2='\\\\' +_G_bs4='\\\\\\\\' +_G_dollar='\$' +sed_double_backslash="\ + s/$_G_bs4/&\\ +/g + s/^$_G_bs2$_G_dollar/$_G_bs&/ + s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g + s/\n//g" -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; - esac -} # func_stripname may be replaced by extended shell implementation +## ----------------- ## +## Global variables. ## +## ----------------- ## -# These SED scripts presuppose an absolute path with a trailing slash. -pathcar='s,^/\([^/]*\).*$,\1,' -pathcdr='s,^/[^/]*,,' -removedotparts=':dotsl - s@/\./@/@g - t dotsl - s,/\.$,/,' -collapseslashes='s@/\{1,\}@/@g' -finalslash='s,/*$,/,' +# Except for the global variables explicitly listed below, the following +# functions in the '^func_' namespace, and the '^require_' namespace +# variables initialised in the 'Resource management' section, sourcing +# this file will not pollute your global namespace with anything +# else. There's no portable way to scope variables in Bourne shell +# though, so actually running these functions will sometimes place +# results into a variable named after the function, and often use +# temporary variables in the '^_G_' namespace. If you are careful to +# avoid using those namespaces casually in your sourcing script, things +# should continue to work as you expect. And, of course, you can freely +# overwrite any of the functions or variables defined here before +# calling anything to customize them. -# func_normal_abspath PATH -# Remove doubled-up and trailing slashes, "." path components, -# and cancel out any ".." path components in PATH after making -# it an absolute path. -# value returned in "$func_normal_abspath_result" -func_normal_abspath () -{ - # Start from root dir and reassemble the path. - func_normal_abspath_result= - func_normal_abspath_tpath=$1 - func_normal_abspath_altnamespace= - case $func_normal_abspath_tpath in - "") - # Empty path, that just means $cwd. - func_stripname '' '/' "`pwd`" - func_normal_abspath_result=$func_stripname_result - return - ;; - # The next three entries are used to spot a run of precisely - # two leading slashes without using negated character classes; - # we take advantage of case's first-match behaviour. - ///*) - # Unusual form of absolute path, do nothing. - ;; - //*) - # Not necessarily an ordinary path; POSIX reserves leading '//' - # and for example Cygwin uses it to access remote file shares - # over CIFS/SMB, so we conserve a leading double slash if found. - func_normal_abspath_altnamespace=/ - ;; - /*) - # Absolute path, do nothing. - ;; - *) - # Relative path, prepend $cwd. - func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath - ;; - esac - # Cancel out all the simple stuff to save iterations. We also want - # the path to end with a slash for ease of parsing, so make sure - # there is one (and only one) here. - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"` - while :; do - # Processed it all yet? - if test "$func_normal_abspath_tpath" = / ; then - # If we ascended to the root using ".." the result may be empty now. - if test -z "$func_normal_abspath_result" ; then - func_normal_abspath_result=/ - fi - break - fi - func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$pathcar"` - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$pathcdr"` - # Figure out what to do with it - case $func_normal_abspath_tcomponent in - "") - # Trailing empty path component, ignore it. - ;; - ..) - # Parent dir; strip last assembled component from result. - func_dirname "$func_normal_abspath_result" - func_normal_abspath_result=$func_dirname_result - ;; - *) - # Actual path component, append it. - func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent - ;; - esac - done - # Restore leading double-slash if one was found on entry. - func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result -} +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. -# func_relative_path SRCDIR DSTDIR -# generates a relative path from SRCDIR to DSTDIR, with a trailing -# slash if non-empty, suitable for immediately appending a filename -# without needing to append a separator. -# value returned in "$func_relative_path_result" -func_relative_path () -{ - func_relative_path_result= - func_normal_abspath "$1" - func_relative_path_tlibdir=$func_normal_abspath_result - func_normal_abspath "$2" - func_relative_path_tbindir=$func_normal_abspath_result - - # Ascend the tree starting from libdir - while :; do - # check if we have found a prefix of bindir - case $func_relative_path_tbindir in - $func_relative_path_tlibdir) - # found an exact match - func_relative_path_tcancelled= - break - ;; - $func_relative_path_tlibdir*) - # found a matching prefix - func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" - func_relative_path_tcancelled=$func_stripname_result - if test -z "$func_relative_path_result"; then - func_relative_path_result=. - fi - break - ;; - *) - func_dirname $func_relative_path_tlibdir - func_relative_path_tlibdir=${func_dirname_result} - if test "x$func_relative_path_tlibdir" = x ; then - # Have to descend all the way to the root! - func_relative_path_result=../$func_relative_path_result - func_relative_path_tcancelled=$func_relative_path_tbindir - break - fi - func_relative_path_result=../$func_relative_path_result - ;; - esac - done +# Allow overriding, eg assuming that you follow the convention of +# putting '$debug_cmd' at the start of all your functions, you can get +# bash to show function call trace with: +# +# debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name +debug_cmd=${debug_cmd-":"} +exit_cmd=: - # Now calculate path; take care to avoid doubling-up slashes. - func_stripname '' '/' "$func_relative_path_result" - func_relative_path_result=$func_stripname_result - func_stripname '/' '/' "$func_relative_path_tcancelled" - if test "x$func_stripname_result" != x ; then - func_relative_path_result=${func_relative_path_result}/${func_stripname_result} - fi +# By convention, finish your script with: +# +# exit $exit_status +# +# so that you can set exit_status to non-zero if you want to indicate +# something went wrong during execution without actually bailing out at +# the point of failure. +exit_status=$EXIT_SUCCESS - # Normalisation. If bindir is libdir, return empty string, - # else relative path ending with a slash; either way, target - # file name can be directly appended. - if test ! -z "$func_relative_path_result"; then - func_stripname './' '' "$func_relative_path_result/" - func_relative_path_result=$func_stripname_result - fi -} +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath=$0 -# The name of this program: -func_dirname_and_basename "$progpath" -progname=$func_basename_result +# The name of this program. +progname=`$ECHO "$progpath" |$SED "$sed_basename"` -# Make sure we have an absolute path for reexecution: +# Make sure we have an absolute progpath for reexecution: case $progpath in [\\/]*|[A-Za-z]:\\*) ;; *[\\/]*) - progdir=$func_dirname_result + progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` progdir=`cd "$progdir" && pwd` - progpath="$progdir/$progname" + progpath=$progdir/$progname ;; *) - save_IFS="$IFS" + _G_IFS=$IFS IFS=${PATH_SEPARATOR-:} for progdir in $PATH; do - IFS="$save_IFS" + IFS=$_G_IFS test -x "$progdir/$progname" && break done - IFS="$save_IFS" + IFS=$_G_IFS test -n "$progdir" || progdir=`pwd` - progpath="$progdir/$progname" + progpath=$progdir/$progname ;; esac -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed="${SED}"' -e 1s/^X//' -sed_quote_subst='s/\([`"$\\]\)/\\\1/g' -# Same as above, but do not quote variable references. -double_quote_subst='s/\(["`\\]\)/\\\1/g' +## ----------------- ## +## Standard options. ## +## ----------------- ## -# Sed substitution that turns a string into a regex matching for the -# string literally. -sed_make_literal_regex='s,[].[^$\\*\/],\\&,g' +# The following options affect the operation of the functions defined +# below, and should be set appropriately depending on run-time para- +# meters passed on the command line. -# Sed substitution that converts a w32 file name or path -# which contains forward slashes, into one that contains -# (escaped) backslashes. A very naive implementation. -lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' - -# Re-`\' parameter expansions in output of double_quote_subst that were -# `\'-ed in input to the same. If an odd number of `\' preceded a '$' -# in input to double_quote_subst, that '$' was protected from expansion. -# Since each input `\' is now two `\'s, look for any number of runs of -# four `\'s followed by two `\'s and then a '$'. `\' that '$'. -bs='\\' -bs2='\\\\' -bs4='\\\\\\\\' -dollar='\$' -sed_double_backslash="\ - s/$bs4/&\\ -/g - s/^$bs2$dollar/$bs&/ - s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g - s/\n//g" - -# Standard options: opt_dry_run=false -opt_help=false opt_quiet=false opt_verbose=false -opt_warning=: -# func_echo arg... -# Echo program name prefixed message, along with the current mode -# name if it has been set yet. -func_echo () +# Categories 'all' and 'none' are always available. Append any others +# you will pass as the first argument to func_warning from your own +# code. +warning_categories= + +# By default, display warnings according to 'opt_warning_types'. Set +# 'warning_func' to ':' to elide all warnings, or func_fatal_error to +# treat the next displayed warning as a fatal error. +warning_func=func_warn_and_continue + +# Set to 'all' to display all warnings, 'none' to suppress all +# warnings, or a space delimited list of some subset of +# 'warning_categories' to display only the listed warnings. +opt_warning_types=all + + +## -------------------- ## +## Resource management. ## +## -------------------- ## + +# This section contains definitions for functions that each ensure a +# particular resource (a file, or a non-empty configuration variable for +# example) is available, and if appropriate to extract default values +# from pertinent package files. Call them using their associated +# 'require_*' variable to ensure that they are executed, at most, once. +# +# It's entirely deliberate that calling these functions can set +# variables that don't obey the namespace limitations obeyed by the rest +# of this file, in order that that they be as useful as possible to +# callers. + + +# require_term_colors +# ------------------- +# Allow display of bold text on terminals that support it. +require_term_colors=func_require_term_colors +func_require_term_colors () { - $ECHO "$progname: ${opt_mode+$opt_mode: }$*" + $debug_cmd + + test -t 1 && { + # COLORTERM and USE_ANSI_COLORS environment variables take + # precedence, because most terminfo databases neglect to describe + # whether color sequences are supported. + test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} + + if test 1 = "$USE_ANSI_COLORS"; then + # Standard ANSI escape sequences + tc_reset='[0m' + tc_bold='[1m'; tc_standout='[7m' + tc_red='[31m'; tc_green='[32m' + tc_blue='[34m'; tc_cyan='[36m' + else + # Otherwise trust the terminfo database after all. + test -n "`tput sgr0 2>/dev/null`" && { + tc_reset=`tput sgr0` + test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` + tc_standout=$tc_bold + test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` + test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` + test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` + test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` + test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` + } + fi + } + + require_term_colors=: } -# func_verbose arg... -# Echo program name prefixed message in verbose mode only. -func_verbose () + +## ----------------- ## +## Function library. ## +## ----------------- ## + +# This section contains a variety of useful functions to call in your +# scripts. Take note of the portable wrappers for features provided by +# some modern shells, which will fall back to slower equivalents on +# less featureful shells. + + +# func_append VAR VALUE +# --------------------- +# Append VALUE onto the existing contents of VAR. + + # We should try to minimise forks, especially on Windows where they are + # unreasonably slow, so skip the feature probes when bash or zsh are + # being used: + if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then + : ${_G_HAVE_ARITH_OP="yes"} + : ${_G_HAVE_XSI_OPS="yes"} + # The += operator was introduced in bash 3.1 + case $BASH_VERSION in + [12].* | 3.0 | 3.0*) ;; + *) + : ${_G_HAVE_PLUSEQ_OP="yes"} + ;; + esac + fi + + # _G_HAVE_PLUSEQ_OP + # Can be empty, in which case the shell is probed, "yes" if += is + # useable or anything else if it does not work. + test -z "$_G_HAVE_PLUSEQ_OP" \ + && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ + && _G_HAVE_PLUSEQ_OP=yes + +if test yes = "$_G_HAVE_PLUSEQ_OP" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_append () + { + $debug_cmd + + eval "$1+=\$2" + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_append () + { + $debug_cmd + + eval "$1=\$$1\$2" + } +fi + + +# func_append_quoted VAR VALUE +# ---------------------------- +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +if test yes = "$_G_HAVE_PLUSEQ_OP"; then + eval 'func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1+=\\ \$func_quote_for_eval_result" + }' +else + func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1=\$$1\\ \$func_quote_for_eval_result" + } +fi + + +# func_append_uniq VAR VALUE +# -------------------------- +# Append unique VALUE onto the existing contents of VAR, assuming +# entries are delimited by the first character of VALUE. For example: +# +# func_append_uniq options " --another-option option-argument" +# +# will only append to $options if " --another-option option-argument " +# is not already present somewhere in $options already (note spaces at +# each end implied by leading space in second argument). +func_append_uniq () { - $opt_verbose && func_echo ${1+"$@"} + $debug_cmd - # A bug in bash halts the script if the last line of a function - # fails when set -e is in force, so we need another command to - # work around that: - : + eval _G_current_value='`$ECHO $'$1'`' + _G_delim=`expr "$2" : '\(.\)'` + + case $_G_delim$_G_current_value$_G_delim in + *"$2$_G_delim"*) ;; + *) func_append "$@" ;; + esac +} + + +# func_arith TERM... +# ------------------ +# Set func_arith_result to the result of evaluating TERMs. + test -z "$_G_HAVE_ARITH_OP" \ + && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ + && _G_HAVE_ARITH_OP=yes + +if test yes = "$_G_HAVE_ARITH_OP"; then + eval 'func_arith () + { + $debug_cmd + + func_arith_result=$(( $* )) + }' +else + func_arith () + { + $debug_cmd + + func_arith_result=`expr "$@"` + } +fi + + +# func_basename FILE +# ------------------ +# Set func_basename_result to FILE with everything up to and including +# the last / stripped. +if test yes = "$_G_HAVE_XSI_OPS"; then + # If this shell supports suffix pattern removal, then use it to avoid + # forking. Hide the definitions single quotes in case the shell chokes + # on unsupported syntax... + _b='func_basename_result=${1##*/}' + _d='case $1 in + */*) func_dirname_result=${1%/*}$2 ;; + * ) func_dirname_result=$3 ;; + esac' + +else + # ...otherwise fall back to using sed. + _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' + _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` + if test "X$func_dirname_result" = "X$1"; then + func_dirname_result=$3 + else + func_append func_dirname_result "$2" + fi' +fi + +eval 'func_basename () +{ + $debug_cmd + + '"$_b"' +}' + + +# func_dirname FILE APPEND NONDIR_REPLACEMENT +# ------------------------------------------- +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +eval 'func_dirname () +{ + $debug_cmd + + '"$_d"' +}' + + +# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT +# -------------------------------------------------------- +# Perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# For efficiency, we do not delegate to the functions above but instead +# duplicate the functionality here. +eval 'func_dirname_and_basename () +{ + $debug_cmd + + '"$_b"' + '"$_d"' +}' + + +# func_echo ARG... +# ---------------- +# Echo program name prefixed message. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname: $_G_line" + done + IFS=$func_echo_IFS } -# func_echo_all arg... + +# func_echo_all ARG... +# -------------------- # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } -# func_error arg... -# Echo program name prefixed message to standard error. -func_error () + +# func_echo_infix_1 INFIX ARG... +# ------------------------------ +# Echo program name, followed by INFIX on the first line, with any +# additional lines not showing INFIX. +func_echo_infix_1 () { - $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2 + $debug_cmd + + $require_term_colors + + _G_infix=$1; shift + _G_indent=$_G_infix + _G_prefix="$progname: $_G_infix: " + _G_message=$* + + # Strip color escape sequences before counting printable length + for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" + do + test -n "$_G_tc" && { + _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` + _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` + } + done + _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes + + func_echo_infix_1_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_infix_1_IFS + $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 + _G_prefix=$_G_indent + done + IFS=$func_echo_infix_1_IFS } -# func_warning arg... -# Echo program name prefixed warning message to standard error. -func_warning () + +# func_error ARG... +# ----------------- +# Echo program name prefixed message to standard error. +func_error () { - $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2 + $debug_cmd - # bash bug again: - : + $require_term_colors + + func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 } -# func_fatal_error arg... + +# func_fatal_error ARG... +# ----------------------- # Echo program name prefixed message to standard error, and exit. func_fatal_error () { - func_error ${1+"$@"} - exit $EXIT_FAILURE -} + $debug_cmd -# func_fatal_help arg... -# Echo program name prefixed message to standard error, followed by -# a help hint, and exit. -func_fatal_help () -{ - func_error ${1+"$@"} - func_fatal_error "$help" + func_error "$*" + exit $EXIT_FAILURE } -help="Try \`$progname --help' for more information." ## default -# func_grep expression filename +# func_grep EXPRESSION FILENAME +# ----------------------------- # Check whether EXPRESSION matches any line of FILENAME, without output. func_grep () { + $debug_cmd + $GREP "$1" "$2" >/dev/null 2>&1 } -# func_mkdir_p directory-path +# func_len STRING +# --------------- +# Set func_len_result to the length of STRING. STRING may not +# start with a hyphen. + test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_len () + { + $debug_cmd + + func_len_result=${#1} + }' +else + func_len () + { + $debug_cmd + + func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` + } +fi + + +# func_mkdir_p DIRECTORY-PATH +# --------------------------- # Make sure the entire path to DIRECTORY-PATH is available. func_mkdir_p () { - my_directory_path="$1" - my_dir_list= + $debug_cmd - if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then + _G_directory_path=$1 + _G_dir_list= - # Protect directory names starting with `-' - case $my_directory_path in - -*) my_directory_path="./$my_directory_path" ;; + if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then + + # Protect directory names starting with '-' + case $_G_directory_path in + -*) _G_directory_path=./$_G_directory_path ;; esac # While some portion of DIR does not yet exist... - while test ! -d "$my_directory_path"; do + while test ! -d "$_G_directory_path"; do # ...make a list in topmost first order. Use a colon delimited # list incase some portion of path contains whitespace. - my_dir_list="$my_directory_path:$my_dir_list" + _G_dir_list=$_G_directory_path:$_G_dir_list # If the last portion added has no slash in it, the list is done - case $my_directory_path in */*) ;; *) break ;; esac + case $_G_directory_path in */*) ;; *) break ;; esac # ...otherwise throw away the child directory and loop - my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"` + _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` done - my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'` + _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` - save_mkdir_p_IFS="$IFS"; IFS=':' - for my_dir in $my_dir_list; do - IFS="$save_mkdir_p_IFS" - # mkdir can fail with a `File exist' error if two processes + func_mkdir_p_IFS=$IFS; IFS=: + for _G_dir in $_G_dir_list; do + IFS=$func_mkdir_p_IFS + # mkdir can fail with a 'File exist' error if two processes # try to create one of the directories concurrently. Don't # stop in that case! - $MKDIR "$my_dir" 2>/dev/null || : + $MKDIR "$_G_dir" 2>/dev/null || : done - IFS="$save_mkdir_p_IFS" + IFS=$func_mkdir_p_IFS # Bail out if we (or some other process) failed to create a directory. - test -d "$my_directory_path" || \ - func_fatal_error "Failed to create \`$1'" + test -d "$_G_directory_path" || \ + func_fatal_error "Failed to create '$1'" fi } -# func_mktempdir [string] +# func_mktempdir [BASENAME] +# ------------------------- # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If -# given, STRING is the basename for that directory. +# given, BASENAME is the basename for that directory. func_mktempdir () { - my_template="${TMPDIR-/tmp}/${1-$progname}" + $debug_cmd + + _G_template=${TMPDIR-/tmp}/${1-$progname} - if test "$opt_dry_run" = ":"; then + if test : = "$opt_dry_run"; then # Return a directory name, but don't create it in dry-run mode - my_tmpdir="${my_template}-$$" + _G_tmpdir=$_G_template-$$ else # If mktemp works, use that first and foremost - my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` - if test ! -d "$my_tmpdir"; then + if test ! -d "$_G_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race - my_tmpdir="${my_template}-${RANDOM-0}$$" + _G_tmpdir=$_G_template-${RANDOM-0}$$ - save_mktempdir_umask=`umask` + func_mktempdir_umask=`umask` umask 0077 - $MKDIR "$my_tmpdir" - umask $save_mktempdir_umask + $MKDIR "$_G_tmpdir" + umask $func_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure - test -d "$my_tmpdir" || \ - func_fatal_error "cannot create temporary directory \`$my_tmpdir'" + test -d "$_G_tmpdir" || \ + func_fatal_error "cannot create temporary directory '$_G_tmpdir'" fi - $ECHO "$my_tmpdir" + $ECHO "$_G_tmpdir" } -# func_quote_for_eval arg -# Aesthetically quote ARG to be evaled later. -# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT -# is double-quoted, suitable for a subsequent eval, whereas -# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters -# which are still active within double quotes backslashified. -func_quote_for_eval () +# func_normal_abspath PATH +# ------------------------ +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +func_normal_abspath () { - case $1 in - *[\\\`\"\$]*) - func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;; - *) - func_quote_for_eval_unquoted_result="$1" ;; - esac + $debug_cmd - case $func_quote_for_eval_unquoted_result in - # Double-quote args containing shell metacharacters to delay - # word splitting, command substitution and and variable - # expansion for a subsequent eval. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" + # These SED scripts presuppose an absolute path with a trailing slash. + _G_pathcar='s|^/\([^/]*\).*$|\1|' + _G_pathcdr='s|^/[^/]*||' + _G_removedotparts=':dotsl + s|/\./|/|g + t dotsl + s|/\.$|/|' + _G_collapseslashes='s|/\{1,\}|/|g' + _G_finalslash='s|/*$|/|' + + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. ;; *) - func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; esac + + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` + while :; do + # Processed it all yet? + if test / = "$func_normal_abspath_tpath"; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result"; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + + +# func_notquiet ARG... +# -------------------- +# Echo program name prefixed message only when not in quiet mode. +func_notquiet () +{ + $debug_cmd + + $opt_quiet || func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : } -# func_quote_for_expand arg +# func_relative_path SRCDIR DSTDIR +# -------------------------------- +# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. +func_relative_path () +{ + $debug_cmd + + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=$func_dirname_result + if test -z "$func_relative_path_tlibdir"; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test -n "$func_stripname_result"; then + func_append func_relative_path_result "/$func_stripname_result" + fi + + # Normalisation. If bindir is libdir, return '.' else relative path. + if test -n "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + fi + + test -n "$func_relative_path_result" || func_relative_path_result=. + + : +} + + +# func_quote_for_eval ARG... +# -------------------------- +# Aesthetically quote ARGs to be evaled later. +# This function returns two values: +# i) func_quote_for_eval_result +# double-quoted, suitable for a subsequent eval +# ii) func_quote_for_eval_unquoted_result +# has all characters that are still active within double +# quotes backslashified. +func_quote_for_eval () +{ + $debug_cmd + + func_quote_for_eval_unquoted_result= + func_quote_for_eval_result= + while test 0 -lt $#; do + case $1 in + *[\\\`\"\$]*) + _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; + *) + _G_unquoted_arg=$1 ;; + esac + if test -n "$func_quote_for_eval_unquoted_result"; then + func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" + else + func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg" + fi + + case $_G_unquoted_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting, command substitution and variable expansion + # for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + _G_quoted_arg=\"$_G_unquoted_arg\" + ;; + *) + _G_quoted_arg=$_G_unquoted_arg + ;; + esac + + if test -n "$func_quote_for_eval_result"; then + func_append func_quote_for_eval_result " $_G_quoted_arg" + else + func_append func_quote_for_eval_result "$_G_quoted_arg" + fi + shift + done +} + + +# func_quote_for_expand ARG +# ------------------------- # Aesthetically quote ARG to be evaled later; same as above, # but do not quote variable references. func_quote_for_expand () { + $debug_cmd + case $1 in *[\\\`\"]*) - my_arg=`$ECHO "$1" | $SED \ - -e "$double_quote_subst" -e "$sed_double_backslash"` ;; + _G_arg=`$ECHO "$1" | $SED \ + -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;; *) - my_arg="$1" ;; + _G_arg=$1 ;; esac - case $my_arg in + case $_G_arg in # Double-quote args containing shell metacharacters to delay # word splitting and command substitution for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - my_arg="\"$my_arg\"" + _G_arg=\"$_G_arg\" ;; esac - func_quote_for_expand_result="$my_arg" + func_quote_for_expand_result=$_G_arg } -# func_show_eval cmd [fail_exp] -# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is +# func_stripname PREFIX SUFFIX NAME +# --------------------------------- +# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_stripname () + { + $debug_cmd + + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary variable first. + func_stripname_result=$3 + func_stripname_result=${func_stripname_result#"$1"} + func_stripname_result=${func_stripname_result%"$2"} + }' +else + func_stripname () + { + $debug_cmd + + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; + esac + } +fi + + +# func_show_eval CMD [FAIL_EXP] +# ----------------------------- +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. func_show_eval () { - my_cmd="$1" - my_fail_exp="${2-:}" + $debug_cmd - ${opt_silent-false} || { - func_quote_for_expand "$my_cmd" - eval "func_echo $func_quote_for_expand_result" - } + _G_cmd=$1 + _G_fail_exp=${2-':'} + + func_quote_for_expand "$_G_cmd" + eval "func_notquiet $func_quote_for_expand_result" - if ${opt_dry_run-false}; then :; else - eval "$my_cmd" - my_status=$? - if test "$my_status" -eq 0; then :; else - eval "(exit $my_status); $my_fail_exp" + $opt_dry_run || { + eval "$_G_cmd" + _G_status=$? + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" fi - fi + } } -# func_show_eval_locale cmd [fail_exp] -# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is +# func_show_eval_locale CMD [FAIL_EXP] +# ------------------------------------ +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. Use the saved locale for evaluation. func_show_eval_locale () { - my_cmd="$1" - my_fail_exp="${2-:}" + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} - ${opt_silent-false} || { - func_quote_for_expand "$my_cmd" + $opt_quiet || { + func_quote_for_expand "$_G_cmd" eval "func_echo $func_quote_for_expand_result" } - if ${opt_dry_run-false}; then :; else - eval "$lt_user_locale - $my_cmd" - my_status=$? - eval "$lt_safe_locale" - if test "$my_status" -eq 0; then :; else - eval "(exit $my_status); $my_fail_exp" + $opt_dry_run || { + eval "$_G_user_locale + $_G_cmd" + _G_status=$? + eval "$_G_safe_locale" + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" fi - fi + } } + # func_tr_sh +# ---------- # Turn $1 into a string suitable for a shell variable name. # Result is stored in $func_tr_sh_result. All characters # not in the set a-zA-Z0-9_ are replaced with '_'. Further, # if $1 begins with a digit, a '_' is prepended as well. func_tr_sh () { - case $1 in - [0-9]* | *[!a-zA-Z0-9_]*) - func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'` - ;; - * ) - func_tr_sh_result=$1 - ;; - esac + $debug_cmd + + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac } -# func_version -# Echo version message to standard output and exit. -func_version () +# func_verbose ARG... +# ------------------- +# Echo program name prefixed message in verbose mode only. +func_verbose () { - $opt_debug + $debug_cmd - $SED -n '/(C)/!b go - :more - /\./!{ - N - s/\n# / / - b more - } - :go - /^# '$PROGRAM' (GNU /,/# warranty; / { - s/^# // - s/^# *$// - s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ - p - }' < "$progpath" - exit $? + $opt_verbose && func_echo "$*" + + : } -# func_usage -# Echo short help message to standard output and exit. -func_usage () + +# func_warn_and_continue ARG... +# ----------------------------- +# Echo program name prefixed warning message to standard error. +func_warn_and_continue () { - $opt_debug + $debug_cmd - $SED -n '/^# Usage:/,/^# *.*--help/ { - s/^# // - s/^# *$// - s/\$progname/'$progname'/ - p - }' < "$progpath" - echo - $ECHO "run \`$progname --help | more' for full usage" - exit $? + $require_term_colors + + func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 +} + + +# func_warning CATEGORY ARG... +# ---------------------------- +# Echo program name prefixed warning message to standard error. Warning +# messages can be filtered according to CATEGORY, where this function +# elides messages where CATEGORY is not listed in the global variable +# 'opt_warning_types'. +func_warning () +{ + $debug_cmd + + # CATEGORY must be in the warning_categories list! + case " $warning_categories " in + *" $1 "*) ;; + *) func_internal_error "invalid warning category '$1'" ;; + esac + + _G_category=$1 + shift + + case " $opt_warning_types " in + *" $_G_category "*) $warning_func ${1+"$@"} ;; + esac +} + + +# func_sort_ver VER1 VER2 +# ----------------------- +# 'sort -V' is not generally available. +# Note this deviates from the version comparison in automake +# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a +# but this should suffice as we won't be specifying old +# version formats or redundant trailing .0 in bootstrap.conf. +# If we did want full compatibility then we should probably +# use m4_version_compare from autoconf. +func_sort_ver () +{ + $debug_cmd + + printf '%s\n%s\n' "$1" "$2" \ + | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n +} + +# func_lt_ver PREV CURR +# --------------------- +# Return true if PREV and CURR are in the correct order according to +# func_sort_ver, otherwise false. Use it like this: +# +# func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." +func_lt_ver () +{ + $debug_cmd + + test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` } -# func_help [NOEXIT] -# Echo long help message to standard output and exit, -# unless 'noexit' is passed as argument. + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: +#! /bin/sh + +# Set a version string for this script. +scriptversion=2014-01-07.03; # UTC + +# A portable, pluggable option parser for Bourne shell. +# Written by Gary V. Vaughan, 2010 + +# Copyright (C) 2010-2015 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. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# This file is a library for parsing options in your shell scripts along +# with assorted other useful supporting features that you can make use +# of too. +# +# For the simplest scripts you might need only: +# +# #!/bin/sh +# . relative/path/to/funclib.sh +# . relative/path/to/options-parser +# scriptversion=1.0 +# func_options ${1+"$@"} +# eval set dummy "$func_options_result"; shift +# ...rest of your script... +# +# In order for the '--version' option to work, you will need to have a +# suitably formatted comment like the one at the top of this file +# starting with '# Written by ' and ending with '# warranty; '. +# +# For '-h' and '--help' to work, you will also need a one line +# description of your script's purpose in a comment directly above the +# '# Written by ' line, like the one at the top of this file. +# +# The default options also support '--debug', which will turn on shell +# execution tracing (see the comment above debug_cmd below for another +# use), and '--verbose' and the func_verbose function to allow your script +# to display verbose messages only when your user has specified +# '--verbose'. +# +# After sourcing this file, you can plug processing for additional +# options by amending the variables from the 'Configuration' section +# below, and following the instructions in the 'Option parsing' +# section further down. + +## -------------- ## +## Configuration. ## +## -------------- ## + +# You should override these variables in your script after sourcing this +# file so that they reflect the customisations you have added to the +# option parser. + +# The usage line for option parsing errors and the start of '-h' and +# '--help' output messages. You can embed shell variables for delayed +# expansion at the time the message is displayed, but you will need to +# quote other shell meta-characters carefully to prevent them being +# expanded when the contents are evaled. +usage='$progpath [OPTION]...' + +# Short help message in response to '-h' and '--help'. Add to this or +# override it after sourcing this library to reflect the full set of +# options your script accepts. +usage_message="\ + --debug enable verbose shell tracing + -W, --warnings=CATEGORY + report the warnings falling in CATEGORY [all] + -v, --verbose verbosely report processing + --version print version information and exit + -h, --help print short or long help message and exit +" + +# Additional text appended to 'usage_message' in response to '--help'. +long_help_message=" +Warning categories include: + 'all' show all warnings + 'none' turn off all the warnings + 'error' warnings are treated as fatal errors" + +# Help message printed before fatal option parsing errors. +fatal_help="Try '\$progname --help' for more information." + + + +## ------------------------- ## +## Hook function management. ## +## ------------------------- ## + +# This section contains functions for adding, removing, and running hooks +# to the main code. A hook is just a named list of of function, that can +# be run in order later on. + +# func_hookable FUNC_NAME +# ----------------------- +# Declare that FUNC_NAME will run hooks added with +# 'func_add_hook FUNC_NAME ...'. +func_hookable () +{ + $debug_cmd + + func_append hookable_fns " $1" +} + + +# func_add_hook FUNC_NAME HOOK_FUNC +# --------------------------------- +# Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must +# first have been declared "hookable" by a call to 'func_hookable'. +func_add_hook () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not accept hook functions." ;; + esac + + eval func_append ${1}_hooks '" $2"' +} + + +# func_remove_hook FUNC_NAME HOOK_FUNC +# ------------------------------------ +# Remove HOOK_FUNC from the list of functions called by FUNC_NAME. +func_remove_hook () +{ + $debug_cmd + + eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' +} + + +# func_run_hooks FUNC_NAME [ARG]... +# --------------------------------- +# Run all hook functions registered to FUNC_NAME. +# It is assumed that the list of hook functions contains nothing more +# than a whitespace-delimited list of legal shell function names, and +# no effort is wasted trying to catch shell meta-characters or preserve +# whitespace. +func_run_hooks () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not support hook funcions.n" ;; + esac + + eval _G_hook_fns=\$$1_hooks; shift + + for _G_hook in $_G_hook_fns; do + eval $_G_hook '"$@"' + + # store returned options list back into positional + # parameters for next 'cmd' execution. + eval _G_hook_result=\$${_G_hook}_result + eval set dummy "$_G_hook_result"; shift + done + + func_quote_for_eval ${1+"$@"} + func_run_hooks_result=$func_quote_for_eval_result +} + + + +## --------------- ## +## Option parsing. ## +## --------------- ## + +# In order to add your own option parsing hooks, you must accept the +# full positional parameter list in your hook function, remove any +# options that you action, and then pass back the remaining unprocessed +# options in '<hooked_function_name>_result', escaped suitably for +# 'eval'. Like this: +# +# my_options_prep () +# { +# $debug_cmd +# +# # Extend the existing usage message. +# usage_message=$usage_message' +# -s, --silent don'\''t print informational messages +# ' +# +# func_quote_for_eval ${1+"$@"} +# my_options_prep_result=$func_quote_for_eval_result +# } +# func_add_hook func_options_prep my_options_prep +# +# +# my_silent_option () +# { +# $debug_cmd +# +# # Note that for efficiency, we parse as many options as we can +# # recognise in a loop before passing the remainder back to the +# # caller on the first unrecognised argument we encounter. +# while test $# -gt 0; do +# opt=$1; shift +# case $opt in +# --silent|-s) opt_silent=: ;; +# # Separate non-argument short options: +# -s*) func_split_short_opt "$_G_opt" +# set dummy "$func_split_short_opt_name" \ +# "-$func_split_short_opt_arg" ${1+"$@"} +# shift +# ;; +# *) set dummy "$_G_opt" "$*"; shift; break ;; +# esac +# done +# +# func_quote_for_eval ${1+"$@"} +# my_silent_option_result=$func_quote_for_eval_result +# } +# func_add_hook func_parse_options my_silent_option +# +# +# my_option_validation () +# { +# $debug_cmd +# +# $opt_silent && $opt_verbose && func_fatal_help "\ +# '--silent' and '--verbose' options are mutually exclusive." +# +# func_quote_for_eval ${1+"$@"} +# my_option_validation_result=$func_quote_for_eval_result +# } +# func_add_hook func_validate_options my_option_validation +# +# You'll alse need to manually amend $usage_message to reflect the extra +# options you parse. It's preferable to append if you can, so that +# multiple option parsing hooks can be added safely. + + +# func_options [ARG]... +# --------------------- +# All the functions called inside func_options are hookable. See the +# individual implementations for details. +func_hookable func_options +func_options () +{ + $debug_cmd + + func_options_prep ${1+"$@"} + eval func_parse_options \ + ${func_options_prep_result+"$func_options_prep_result"} + eval func_validate_options \ + ${func_parse_options_result+"$func_parse_options_result"} + + eval func_run_hooks func_options \ + ${func_validate_options_result+"$func_validate_options_result"} + + # save modified positional parameters for caller + func_options_result=$func_run_hooks_result +} + + +# func_options_prep [ARG]... +# -------------------------- +# All initialisations required before starting the option parse loop. +# Note that when calling hook functions, we pass through the list of +# positional parameters. If a hook function modifies that list, and +# needs to propogate that back to rest of this script, then the complete +# modified list must be put in 'func_run_hooks_result' before +# returning. +func_hookable func_options_prep +func_options_prep () +{ + $debug_cmd + + # Option defaults: + opt_verbose=false + opt_warning_types= + + func_run_hooks func_options_prep ${1+"$@"} + + # save modified positional parameters for caller + func_options_prep_result=$func_run_hooks_result +} + + +# func_parse_options [ARG]... +# --------------------------- +# The main option parsing loop. +func_hookable func_parse_options +func_parse_options () +{ + $debug_cmd + + func_parse_options_result= + + # this just eases exit handling + while test $# -gt 0; do + # Defer to hook functions for initial option parsing, so they + # get priority in the event of reusing an option name. + func_run_hooks func_parse_options ${1+"$@"} + + # Adjust func_parse_options positional parameters to match + eval set dummy "$func_run_hooks_result"; shift + + # Break out of the loop if we already parsed every option. + test $# -gt 0 || break + + _G_opt=$1 + shift + case $_G_opt in + --debug|-x) debug_cmd='set -x' + func_echo "enabling shell trace mode" + $debug_cmd + ;; + + --no-warnings|--no-warning|--no-warn) + set dummy --warnings none ${1+"$@"} + shift + ;; + + --warnings|--warning|-W) + test $# = 0 && func_missing_arg $_G_opt && break + case " $warning_categories $1" in + *" $1 "*) + # trailing space prevents matching last $1 above + func_append_uniq opt_warning_types " $1" + ;; + *all) + opt_warning_types=$warning_categories + ;; + *none) + opt_warning_types=none + warning_func=: + ;; + *error) + opt_warning_types=$warning_categories + warning_func=func_fatal_error + ;; + *) + func_fatal_error \ + "unsupported warning category: '$1'" + ;; + esac + shift + ;; + + --verbose|-v) opt_verbose=: ;; + --version) func_version ;; + -\?|-h) func_usage ;; + --help) func_help ;; + + # Separate optargs to long options (plugins may need this): + --*=*) func_split_equals "$_G_opt" + set dummy "$func_split_equals_lhs" \ + "$func_split_equals_rhs" ${1+"$@"} + shift + ;; + + # Separate optargs to short options: + -W*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-v*|-x*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) break ;; + -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done + + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + func_parse_options_result=$func_quote_for_eval_result +} + + +# func_validate_options [ARG]... +# ------------------------------ +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +func_hookable func_validate_options +func_validate_options () +{ + $debug_cmd + + # Display all warnings if -W was not given. + test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" + + func_run_hooks func_validate_options ${1+"$@"} + + # Bail if the options were screwed! + $exit_cmd $EXIT_FAILURE + + # save modified positional parameters for caller + func_validate_options_result=$func_run_hooks_result +} + + + +## ----------------- ## +## Helper functions. ## +## ----------------- ## + +# This section contains the helper functions used by the rest of the +# hookable option parser framework in ascii-betical order. + + +# func_fatal_help ARG... +# ---------------------- +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + eval \$ECHO \""$fatal_help"\" + func_error ${1+"$@"} + exit $EXIT_FAILURE +} + + +# func_help +# --------- +# Echo long help message to standard output and exit. func_help () { - $opt_debug - - $SED -n '/^# Usage:/,/# Report bugs to/ { - :print - s/^# // - s/^# *$// - s*\$progname*'$progname'* - s*\$host*'"$host"'* - s*\$SHELL*'"$SHELL"'* - s*\$LTCC*'"$LTCC"'* - s*\$LTCFLAGS*'"$LTCFLAGS"'* - s*\$LD*'"$LD"'* - s/\$with_gnu_ld/'"$with_gnu_ld"'/ - s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/ - s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/ - p - d - } - /^# .* home page:/b print - /^# General help using/b print - ' < "$progpath" - ret=$? - if test -z "$1"; then - exit $ret - fi + $debug_cmd + + func_usage_message + $ECHO "$long_help_message" + exit 0 } -# func_missing_arg argname + +# func_missing_arg ARGNAME +# ------------------------ # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { - $opt_debug + $debug_cmd - func_error "missing argument for $1." + func_error "Missing argument for '$1'." exit_cmd=exit } -# func_split_short_opt shortopt +# func_split_equals STRING +# ------------------------ +# Set func_split_equals_lhs and func_split_equals_rhs shell variables after +# splitting STRING at the '=' sign. +test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=${1%%=*} + func_split_equals_rhs=${1#*=} + test "x$func_split_equals_lhs" = "x$1" \ + && func_split_equals_rhs= + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` + func_split_equals_rhs= + test "x$func_split_equals_lhs" = "x$1" \ + || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` + } +fi #func_split_equals + + +# func_split_short_opt SHORTOPT +# ----------------------------- # Set func_split_short_opt_name and func_split_short_opt_arg shell # variables after splitting SHORTOPT after the 2nd character. -func_split_short_opt () +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"} + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'` + func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` + } +fi #func_split_short_opt + + +# func_usage +# ---------- +# Echo short help message to standard output and exit. +func_usage () { - my_sed_short_opt='1s/^\(..\).*$/\1/;q' - my_sed_short_rest='1s/^..\(.*\)$/\1/;q' + $debug_cmd - func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"` - func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"` -} # func_split_short_opt may be replaced by extended shell implementation + func_usage_message + $ECHO "Run '$progname --help |${PAGER-more}' for full usage" + exit 0 +} -# func_split_long_opt longopt -# Set func_split_long_opt_name and func_split_long_opt_arg shell -# variables after splitting LONGOPT at the `=' sign. -func_split_long_opt () +# func_usage_message +# ------------------ +# Echo short help message to standard output. +func_usage_message () { - my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q' - my_sed_long_arg='1s/^--[^=]*=//' + $debug_cmd - func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"` - func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"` -} # func_split_long_opt may be replaced by extended shell implementation + eval \$ECHO \""Usage: $usage"\" + echo + $SED -n 's|^# || + /^Written by/{ + x;p;x + } + h + /^Written by/q' < "$progpath" + echo + eval \$ECHO \""$usage_message"\" +} -exit_cmd=: +# func_version +# ------------ +# Echo version message to standard output and exit. +func_version () +{ + $debug_cmd + printf '%s\n' "$progname $scriptversion" + $SED -n ' + /(C)/!b go + :more + /\./!{ + N + s|\n# | | + b more + } + :go + /^# Written by /,/# warranty; / { + s|^# || + s|^# *$|| + s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| + p + } + /^# Written by / { + s|^# || + p + } + /^warranty; /q' < "$progpath" + exit $? +} -magic="%%%MAGIC variable%%%" -magic_exe="%%%MAGIC EXE variable%%%" +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: -# Global variables. -nonopt= -preserve_args= -lo2o="s/\\.lo\$/.${objext}/" -o2lo="s/\\.${objext}\$/.lo/" -extracted_archives= -extracted_serial=0 +# Set a version string. +scriptversion='(GNU libtool) 2.4.6' -# If this variable is set in any of the actions, the command in it -# will be execed at the end. This prevents here-documents from being -# left over by shells. -exec_cmd= -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () +# func_echo ARG... +# ---------------- +# Libtool also displays the current mode in messages, so override +# funclib.sh func_echo with this custom definition. +func_echo () { - eval "${1}=\$${1}\${2}" -} # func_append may be replaced by extended shell implementation + $debug_cmd -# func_append_quoted var value -# Quote VALUE and append to the end of shell variable VAR, separated -# by a space. -func_append_quoted () -{ - func_quote_for_eval "${2}" - eval "${1}=\$${1}\\ \$func_quote_for_eval_result" -} # func_append_quoted may be replaced by extended shell implementation + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" + done + IFS=$func_echo_IFS +} -# func_arith arithmetic-term... -func_arith () +# func_warning ARG... +# ------------------- +# Libtool warnings are not categorized, so override funclib.sh +# func_warning with this simpler definition. +func_warning () { - func_arith_result=`expr "${@}"` -} # func_arith may be replaced by extended shell implementation + $debug_cmd + $warning_func ${1+"$@"} +} -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len` -} # func_len may be replaced by extended shell implementation +## ---------------- ## +## Options parsing. ## +## ---------------- ## + +# Hook in the functions to make sure our own options are parsed during +# the option parsing loop. + +usage='$progpath [OPTION]... [MODE-ARG]...' + +# Short help message in response to '-h'. +usage_message="Options: + --config show all configuration variables + --debug enable verbose shell tracing + -n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --mode=MODE use operation mode MODE + --no-warnings equivalent to '-Wnone' + --preserve-dup-deps don't remove duplicate dependency libraries + --quiet, --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + -v, --verbose print more informational messages than default + --version print version information + -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] + -h, --help, --help-all print short, long, or detailed help message +" -# func_lo2o object -func_lo2o () +# Additional text appended to 'usage_message' in response to '--help'. +func_help () { - func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"` -} # func_lo2o may be replaced by extended shell implementation + $debug_cmd + + func_usage_message + $ECHO "$long_help_message + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. When passed as first option, +'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. +Try '$progname --help --mode=MODE' for a more detailed description of MODE. + +When reporting a bug, please describe a test case to reproduce it and +include the following information: + + host-triplet: $host + shell: $SHELL + compiler: $LTCC + compiler flags: $LTCFLAGS + linker: $LD (gnu? $with_gnu_ld) + 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 <bug-libtool@gnu.org>. +GNU libtool home page: <http://www.gnu.org/software/libtool/>. +General help using GNU software: <http://www.gnu.org/gethelp/>." + exit 0 +} -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'` -} # func_xform may be replaced by extended shell implementation +# func_lo2o OBJECT-NAME +# --------------------- +# Transform OBJECT-NAME from a '.lo' suffix to the platform specific +# object suffix. + +lo2o=s/\\.lo\$/.$objext/ +o2lo=s/\\.$objext\$/.lo/ + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_lo2o () + { + case $1 in + *.lo) func_lo2o_result=${1%.lo}.$objext ;; + * ) func_lo2o_result=$1 ;; + esac + }' + + # func_xform LIBOBJ-OR-SOURCE + # --------------------------- + # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) + # suffix to a '.lo' libtool-object suffix. + eval 'func_xform () + { + func_xform_result=${1%.*}.lo + }' +else + # ...otherwise fall back to using sed. + func_lo2o () + { + func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` + } + + func_xform () + { + func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` + } +fi -# func_fatal_configuration arg... +# func_fatal_configuration ARG... +# ------------------------------- # Echo program name prefixed message to standard error, followed by # a configuration failure hint, and exit. func_fatal_configuration () { - func_error ${1+"$@"} - func_error "See the $PACKAGE documentation for more information." - func_fatal_error "Fatal configuration error." + func__fatal_error ${1+"$@"} \ + "See the $PACKAGE documentation for more information." \ + "Fatal configuration error." } # func_config +# ----------- # Display the configuration for all the tags in this script. func_config () { @@ -915,17 +2149,19 @@ func_config () exit $? } + # func_features +# ------------- # Display the features supported by this script. func_features () { echo "host: $host" - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then echo "enable shared libraries" else echo "disable shared libraries" fi - if test "$build_old_libs" = yes; then + if test yes = "$build_old_libs"; then echo "enable static libraries" else echo "disable static libraries" @@ -934,289 +2170,297 @@ func_features () exit $? } -# func_enable_tag tagname + +# func_enable_tag TAGNAME +# ----------------------- # Verify that TAGNAME is valid, and either flag an error and exit, or # enable the TAGNAME tag. We also add TAGNAME to the global $taglist # variable here. func_enable_tag () { - # Global variable: - tagname="$1" + # Global variable: + tagname=$1 - re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" - re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" - sed_extractcf="/$re_begincf/,/$re_endcf/p" + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf=/$re_begincf/,/$re_endcf/p - # Validate tagname. - case $tagname in - *[!-_A-Za-z0-9,/]*) - func_fatal_error "invalid tag name: $tagname" - ;; - esac + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac - # Don't test for the "default" C tag, as we know it's - # there but not specially marked. - case $tagname in - CC) ;; + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; *) - if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then - taglist="$taglist $tagname" - - # Evaluate the configuration. Be careful to quote the path - # and the sed script, to avoid splitting on whitespace, but - # also don't use non-portable quotes within backquotes within - # quotes we have to do it in 2 steps: - extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` - eval "$extractedcf" - else - func_error "ignoring unknown tag $tagname" - fi - ;; - esac + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" + + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac } + # func_check_version_match +# ------------------------ # Ensure that we are using m4 macros, and libtool script from the same # release of libtool. func_check_version_match () { - if test "$package_revision" != "$macro_revision"; then - if test "$VERSION" != "$macro_version"; then - if test -z "$macro_version"; then - cat >&2 <<_LT_EOF + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from an older release. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF - else - cat >&2 <<_LT_EOF + else + cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from $PACKAGE $macro_version. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF - fi - else - cat >&2 <<_LT_EOF + fi + else + cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, $progname: but the definition of this LT_INIT comes from revision $macro_revision. $progname: You should recreate aclocal.m4 with macros from revision $package_revision $progname: of $PACKAGE $VERSION and run autoconf again. _LT_EOF - fi + fi - exit $EXIT_MISMATCH - fi + exit $EXIT_MISMATCH + fi } -# Shorthand for --mode=foo, only valid as the first argument -case $1 in -clean|clea|cle|cl) - shift; set dummy --mode clean ${1+"$@"}; shift - ;; -compile|compil|compi|comp|com|co|c) - shift; set dummy --mode compile ${1+"$@"}; shift - ;; -execute|execut|execu|exec|exe|ex|e) - shift; set dummy --mode execute ${1+"$@"}; shift - ;; -finish|finis|fini|fin|fi|f) - shift; set dummy --mode finish ${1+"$@"}; shift - ;; -install|instal|insta|inst|ins|in|i) - shift; set dummy --mode install ${1+"$@"}; shift - ;; -link|lin|li|l) - shift; set dummy --mode link ${1+"$@"}; shift - ;; -uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) - shift; set dummy --mode uninstall ${1+"$@"}; shift - ;; -esac +# libtool_options_prep [ARG]... +# ----------------------------- +# Preparation for options parsed by libtool. +libtool_options_prep () +{ + $debug_mode + # Option defaults: + opt_config=false + opt_dlopen= + opt_dry_run=false + opt_help=false + opt_mode= + opt_preserve_dup_deps=false + opt_quiet=false + nonopt= + preserve_args= -# Option defaults: -opt_debug=: -opt_dry_run=false -opt_config=false -opt_preserve_dup_deps=false -opt_features=false -opt_finish=false -opt_help=false -opt_help_all=false -opt_silent=: -opt_warning=: -opt_verbose=: -opt_silent=false -opt_verbose=false + # Shorthand for --mode=foo, only valid as the first argument + case $1 in + clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; + compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; + execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; + finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; + install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; + link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; + uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; + esac + + # Pass back the list of options. + func_quote_for_eval ${1+"$@"} + libtool_options_prep_result=$func_quote_for_eval_result +} +func_add_hook func_options_prep libtool_options_prep -# Parse options once, thoroughly. This comes as soon as possible in the -# script to make things like `--version' happen as quickly as we can. +# libtool_parse_options [ARG]... +# --------------------------------- +# Provide handling for libtool specific options. +libtool_parse_options () { - # this just eases exit handling - while test $# -gt 0; do - opt="$1" - shift - case $opt in - --debug|-x) opt_debug='set -x' - func_echo "enabling shell trace mode" - $opt_debug - ;; - --dry-run|--dryrun|-n) - opt_dry_run=: - ;; - --config) - opt_config=: -func_config - ;; - --dlopen|-dlopen) - optarg="$1" - opt_dlopen="${opt_dlopen+$opt_dlopen -}$optarg" - shift - ;; - --preserve-dup-deps) - opt_preserve_dup_deps=: - ;; - --features) - opt_features=: -func_features - ;; - --finish) - opt_finish=: -set dummy --mode finish ${1+"$@"}; shift - ;; - --help) - opt_help=: - ;; - --help-all) - opt_help_all=: -opt_help=': help-all' - ;; - --mode) - test $# = 0 && func_missing_arg $opt && break - optarg="$1" - opt_mode="$optarg" -case $optarg in - # Valid mode arguments: - clean|compile|execute|finish|install|link|relink|uninstall) ;; - - # Catch anything else as an error - *) func_error "invalid argument for $opt" - exit_cmd=exit - break - ;; -esac - shift - ;; - --no-silent|--no-quiet) - opt_silent=false -func_append preserve_args " $opt" - ;; - --no-warning|--no-warn) - opt_warning=false -func_append preserve_args " $opt" - ;; - --no-verbose) - opt_verbose=false -func_append preserve_args " $opt" - ;; - --silent|--quiet) - opt_silent=: -func_append preserve_args " $opt" - opt_verbose=false - ;; - --verbose|-v) - opt_verbose=: -func_append preserve_args " $opt" -opt_silent=false - ;; - --tag) - test $# = 0 && func_missing_arg $opt && break - optarg="$1" - opt_tag="$optarg" -func_append preserve_args " $opt $optarg" -func_enable_tag "$optarg" - shift - ;; - - -\?|-h) func_usage ;; - --help) func_help ;; - --version) func_version ;; - - # Separate optargs to long options: - --*=*) - func_split_long_opt "$opt" - set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"} - shift - ;; - - # Separate non-argument short options: - -\?*|-h*|-n*|-v*) - func_split_short_opt "$opt" - set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"} - shift - ;; - - --) break ;; - -*) func_fatal_help "unrecognized option \`$opt'" ;; - *) set dummy "$opt" ${1+"$@"}; shift; break ;; - esac - done + $debug_cmd - # Validate options: + # Perform our own loop to consume as many options as possible in + # each iteration. + while test $# -gt 0; do + _G_opt=$1 + shift + case $_G_opt in + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + + --config) func_config ;; + + --dlopen|-dlopen) + opt_dlopen="${opt_dlopen+$opt_dlopen +}$1" + shift + ;; + + --preserve-dup-deps) + opt_preserve_dup_deps=: ;; + + --features) func_features ;; + + --finish) set dummy --mode finish ${1+"$@"}; shift ;; + + --help) opt_help=: ;; + + --help-all) opt_help=': help-all' ;; + + --mode) test $# = 0 && func_missing_arg $_G_opt && break + opt_mode=$1 + case $1 in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $_G_opt" + exit_cmd=exit + break + ;; + esac + shift + ;; + + --no-silent|--no-quiet) + opt_quiet=false + func_append preserve_args " $_G_opt" + ;; + + --no-warnings|--no-warning|--no-warn) + opt_warning=false + func_append preserve_args " $_G_opt" + ;; + + --no-verbose) + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --silent|--quiet) + opt_quiet=: + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --tag) test $# = 0 && func_missing_arg $_G_opt && break + opt_tag=$1 + func_append preserve_args " $_G_opt $1" + func_enable_tag "$1" + shift + ;; + + --verbose|-v) opt_quiet=false + opt_verbose=: + func_append preserve_args " $_G_opt" + ;; + + # An option not handled by this hook function: + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done - # save first non-option argument - if test "$#" -gt 0; then - nonopt="$opt" - shift - fi - # preserve --debug - test "$opt_debug" = : || func_append preserve_args " --debug" + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + libtool_parse_options_result=$func_quote_for_eval_result +} +func_add_hook func_parse_options libtool_parse_options - case $host in - *cygwin* | *mingw* | *pw32* | *cegcc*) - # don't eliminate duplications in $postdeps and $predeps - opt_duplicate_compiler_generated_deps=: - ;; - *) - opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps - ;; - esac - $opt_help || { - # Sanity checks first: - func_check_version_match - if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then - func_fatal_configuration "not configured to build any kind of library" +# libtool_validate_options [ARG]... +# --------------------------------- +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +libtool_validate_options () +{ + # save first non-option argument + if test 0 -lt $#; then + nonopt=$1 + shift fi - # Darwin sucks - eval std_shrext=\"$shrext_cmds\" + # preserve --debug + test : = "$debug_cmd" || func_append preserve_args " --debug" - # Only execute mode is allowed to have -dlopen flags. - if test -n "$opt_dlopen" && test "$opt_mode" != execute; then - func_error "unrecognized option \`-dlopen'" - $ECHO "$help" 1>&2 - exit $EXIT_FAILURE - fi + case $host in + # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 + # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 + *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac - # Change the help message to a mode-specific one. - generic_help="$help" - help="Try \`$progname --help --mode=$opt_mode' for more information." - } + $opt_help || { + # Sanity checks first: + func_check_version_match + test yes != "$build_libtool_libs" \ + && test yes != "$build_old_libs" \ + && func_fatal_configuration "not configured to build any kind of library" - # Bail if the options were screwed - $exit_cmd $EXIT_FAILURE + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test execute != "$opt_mode"; then + func_error "unrecognized option '-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help=$help + help="Try '$progname --help --mode=$opt_mode' for more information." + } + + # Pass back the unparsed argument list + func_quote_for_eval ${1+"$@"} + libtool_validate_options_result=$func_quote_for_eval_result } +func_add_hook func_validate_options libtool_validate_options + +# Process options as early as possible so that --help and --version +# can return quickly. +func_options ${1+"$@"} +eval set dummy "$func_options_result"; shift @@ -1224,24 +2468,52 @@ func_enable_tag "$optarg" ## Main. ## ## ----------- ## +magic='%%%MAGIC variable%%%' +magic_exe='%%%MAGIC EXE variable%%%' + +# Global variables. +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# func_generated_by_libtool +# True iff stdin has been generated by Libtool. This function is only +# a basic sanity check; it will hardly flush out determined imposters. +func_generated_by_libtool_p () +{ + $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + # func_lalib_p file -# True iff FILE is a libtool `.la' library or `.lo' object file. +# True iff FILE is a libtool '.la' library or '.lo' object file. # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_lalib_p () { test -f "$1" && - $SED -e 4q "$1" 2>/dev/null \ - | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 + $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p } # func_lalib_unsafe_p file -# True iff FILE is a libtool `.la' library or `.lo' object file. +# True iff FILE is a libtool '.la' library or '.lo' object file. # This function implements the same check as func_lalib_p without # resorting to external programs. To this end, it redirects stdin and # closes it afterwards, without saving the original file descriptor. # As a safety measure, use it only where a negative result would be -# fatal anyway. Works if `file' does not exist. +# fatal anyway. Works if 'file' does not exist. func_lalib_unsafe_p () { lalib_p=no @@ -1249,13 +2521,13 @@ func_lalib_unsafe_p () for lalib_p_l in 1 2 3 4 do read lalib_p_line - case "$lalib_p_line" in + case $lalib_p_line in \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; esac done exec 0<&5 5<&- fi - test "$lalib_p" = yes + test yes = "$lalib_p" } # func_ltwrapper_script_p file @@ -1264,7 +2536,8 @@ func_lalib_unsafe_p () # determined imposters. func_ltwrapper_script_p () { - func_lalib_p "$1" + test -f "$1" && + $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p } # func_ltwrapper_executable_p file @@ -1289,7 +2562,7 @@ func_ltwrapper_scriptname () { func_dirname_and_basename "$1" "" "." func_stripname '' '.exe' "$func_basename_result" - func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" + func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper } # func_ltwrapper_p file @@ -1308,11 +2581,13 @@ func_ltwrapper_p () # FAIL_CMD may read-access the current command in variable CMD! func_execute_cmds () { - $opt_debug + $debug_cmd + save_ifs=$IFS; IFS='~' for cmd in $1; do - IFS=$save_ifs + IFS=$sp$nl eval cmd=\"$cmd\" + IFS=$save_ifs func_show_eval "$cmd" "${2-:}" done IFS=$save_ifs @@ -1324,10 +2599,11 @@ func_execute_cmds () # Note that it is not necessary on cygwin/mingw to append a dot to # FILE even if both FILE and FILE.exe exist: automatic-append-.exe # behavior happens only for exec(3), not for open(2)! Also, sourcing -# `FILE.' does not work on cygwin managed mounts. +# 'FILE.' does not work on cygwin managed mounts. func_source () { - $opt_debug + $debug_cmd + case $1 in */* | *\\*) . "$1" ;; *) . "./$1" ;; @@ -1354,10 +2630,10 @@ func_resolve_sysroot () # store the result into func_replace_sysroot_result. func_replace_sysroot () { - case "$lt_sysroot:$1" in + case $lt_sysroot:$1 in ?*:"$lt_sysroot"*) func_stripname "$lt_sysroot" '' "$1" - func_replace_sysroot_result="=$func_stripname_result" + func_replace_sysroot_result='='$func_stripname_result ;; *) # Including no sysroot. @@ -1374,7 +2650,8 @@ func_replace_sysroot () # arg is usually of the form 'gcc ...' func_infer_tag () { - $opt_debug + $debug_cmd + if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do @@ -1393,7 +2670,7 @@ func_infer_tag () for z in $available_tags; do if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" CC_quoted= for arg in $CC; do # Double-quote args containing other shell metacharacters. @@ -1418,7 +2695,7 @@ func_infer_tag () # line option must be used. if test -z "$tagname"; then func_echo "unable to infer tagged configuration" - func_fatal_error "specify a tag with \`--tag'" + func_fatal_error "specify a tag with '--tag'" # else # func_verbose "using $tagname tagged configuration" fi @@ -1434,15 +2711,15 @@ func_infer_tag () # but don't create it if we're doing a dry run. func_write_libtool_object () { - write_libobj=${1} - if test "$build_libtool_libs" = yes; then - write_lobj=\'${2}\' + write_libobj=$1 + if test yes = "$build_libtool_libs"; then + write_lobj=\'$2\' else write_lobj=none fi - if test "$build_old_libs" = yes; then - write_oldobj=\'${3}\' + if test yes = "$build_old_libs"; then + write_oldobj=\'$3\' else write_oldobj=none fi @@ -1450,7 +2727,7 @@ func_write_libtool_object () $opt_dry_run || { cat >${write_libobj}T <<EOF # $write_libobj - a libtool object file -# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # Please DO NOT delete this file! # It is necessary for linking the library. @@ -1462,7 +2739,7 @@ pic_object=$write_lobj non_pic_object=$write_oldobj EOF - $MV "${write_libobj}T" "${write_libobj}" + $MV "${write_libobj}T" "$write_libobj" } } @@ -1482,8 +2759,9 @@ EOF # be empty on error (or when ARG is empty) func_convert_core_file_wine_to_w32 () { - $opt_debug - func_convert_core_file_wine_to_w32_result="$1" + $debug_cmd + + func_convert_core_file_wine_to_w32_result=$1 if test -n "$1"; then # Unfortunately, winepath does not exit with a non-zero error code, so we # are forced to check the contents of stdout. On the other hand, if the @@ -1491,9 +2769,9 @@ func_convert_core_file_wine_to_w32 () # *an error message* to stdout. So we must check for both error code of # zero AND non-empty stdout, which explains the odd construction: func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/dev/null` - if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then + if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | - $SED -e "$lt_sed_naive_backslashify"` + $SED -e "$sed_naive_backslashify"` else func_convert_core_file_wine_to_w32_result= fi @@ -1514,18 +2792,19 @@ func_convert_core_file_wine_to_w32 () # are convertible, then the result may be empty. func_convert_core_path_wine_to_w32 () { - $opt_debug + $debug_cmd + # unfortunately, winepath doesn't convert paths, only file names - func_convert_core_path_wine_to_w32_result="" + func_convert_core_path_wine_to_w32_result= if test -n "$1"; then oldIFS=$IFS IFS=: for func_convert_core_path_wine_to_w32_f in $1; do IFS=$oldIFS func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" - if test -n "$func_convert_core_file_wine_to_w32_result" ; then + if test -n "$func_convert_core_file_wine_to_w32_result"; then if test -z "$func_convert_core_path_wine_to_w32_result"; then - func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result" + func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result else func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" fi @@ -1554,7 +2833,8 @@ func_convert_core_path_wine_to_w32 () # environment variable; do not put it in $PATH. func_cygpath () { - $opt_debug + $debug_cmd + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` if test "$?" -ne 0; then @@ -1563,7 +2843,7 @@ func_cygpath () fi else func_cygpath_result= - func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'" + func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" fi } #end: func_cygpath @@ -1574,10 +2854,11 @@ func_cygpath () # result in func_convert_core_msys_to_w32_result. func_convert_core_msys_to_w32 () { - $opt_debug + $debug_cmd + # awkward: cmd appends spaces to result func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | - $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` + $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` } #end: func_convert_core_msys_to_w32 @@ -1588,13 +2869,14 @@ func_convert_core_msys_to_w32 () # func_to_host_file_result to ARG1). func_convert_file_check () { - $opt_debug - if test -z "$2" && test -n "$1" ; then + $debug_cmd + + if test -z "$2" && test -n "$1"; then func_error "Could not determine host file name corresponding to" - func_error " \`$1'" + func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback: - func_to_host_file_result="$1" + func_to_host_file_result=$1 fi } # end func_convert_file_check @@ -1606,10 +2888,11 @@ func_convert_file_check () # func_to_host_file_result to a simplistic fallback value (see below). func_convert_path_check () { - $opt_debug + $debug_cmd + if test -z "$4" && test -n "$3"; then func_error "Could not determine the host path corresponding to" - func_error " \`$3'" + func_error " '$3'" func_error "Continuing, but uninstalled executables may not work." # Fallback. This is a deliberately simplistic "conversion" and # should not be "improved". See libtool.info. @@ -1618,7 +2901,7 @@ func_convert_path_check () func_to_host_path_result=`echo "$3" | $SED -e "$lt_replace_pathsep_chars"` else - func_to_host_path_result="$3" + func_to_host_path_result=$3 fi fi } @@ -1630,9 +2913,10 @@ func_convert_path_check () # and appending REPL if ORIG matches BACKPAT. func_convert_path_front_back_pathsep () { - $opt_debug + $debug_cmd + case $4 in - $1 ) func_to_host_path_result="$3$func_to_host_path_result" + $1 ) func_to_host_path_result=$3$func_to_host_path_result ;; esac case $4 in @@ -1646,7 +2930,7 @@ func_convert_path_front_back_pathsep () ################################################## # $build to $host FILE NAME CONVERSION FUNCTIONS # ################################################## -# invoked via `$to_host_file_cmd ARG' +# invoked via '$to_host_file_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # Result will be available in $func_to_host_file_result. @@ -1657,7 +2941,8 @@ func_convert_path_front_back_pathsep () # in func_to_host_file_result. func_to_host_file () { - $opt_debug + $debug_cmd + $to_host_file_cmd "$1" } # end func_to_host_file @@ -1669,7 +2954,8 @@ func_to_host_file () # in (the comma separated) LAZY, no conversion takes place. func_to_tool_file () { - $opt_debug + $debug_cmd + case ,$2, in *,"$to_tool_file_cmd",*) func_to_tool_file_result=$1 @@ -1687,7 +2973,7 @@ func_to_tool_file () # Copy ARG to func_to_host_file_result. func_convert_file_noop () { - func_to_host_file_result="$1" + func_to_host_file_result=$1 } # end func_convert_file_noop @@ -1698,11 +2984,12 @@ func_convert_file_noop () # func_to_host_file_result. func_convert_file_msys_to_w32 () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" - func_to_host_file_result="$func_convert_core_msys_to_w32_result" + func_to_host_file_result=$func_convert_core_msys_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1714,8 +3001,9 @@ func_convert_file_msys_to_w32 () # func_to_host_file_result. func_convert_file_cygwin_to_w32 () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then # because $build is cygwin, we call "the" cygpath in $PATH; no need to use # LT_CYGPATH in this case. @@ -1731,11 +3019,12 @@ func_convert_file_cygwin_to_w32 () # and a working winepath. Returns result in func_to_host_file_result. func_convert_file_nix_to_w32 () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_file_wine_to_w32 "$1" - func_to_host_file_result="$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result=$func_convert_core_file_wine_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1747,12 +3036,13 @@ func_convert_file_nix_to_w32 () # Returns result in func_to_host_file_result. func_convert_file_msys_to_cygwin () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_cygpath -u "$func_convert_core_msys_to_w32_result" - func_to_host_file_result="$func_cygpath_result" + func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1765,13 +3055,14 @@ func_convert_file_msys_to_cygwin () # in func_to_host_file_result. func_convert_file_nix_to_cygwin () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. func_convert_core_file_wine_to_w32 "$1" func_cygpath -u "$func_convert_core_file_wine_to_w32_result" - func_to_host_file_result="$func_cygpath_result" + func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1781,7 +3072,7 @@ func_convert_file_nix_to_cygwin () ############################################# # $build to $host PATH CONVERSION FUNCTIONS # ############################################# -# invoked via `$to_host_path_cmd ARG' +# invoked via '$to_host_path_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # The result will be available in $func_to_host_path_result. @@ -1805,10 +3096,11 @@ func_convert_file_nix_to_cygwin () to_host_path_cmd= func_init_to_host_path_cmd () { - $opt_debug + $debug_cmd + if test -z "$to_host_path_cmd"; then func_stripname 'func_convert_file_' '' "$to_host_file_cmd" - to_host_path_cmd="func_convert_path_${func_stripname_result}" + to_host_path_cmd=func_convert_path_$func_stripname_result fi } @@ -1818,7 +3110,8 @@ func_init_to_host_path_cmd () # in func_to_host_path_result. func_to_host_path () { - $opt_debug + $debug_cmd + func_init_to_host_path_cmd $to_host_path_cmd "$1" } @@ -1829,7 +3122,7 @@ func_to_host_path () # Copy ARG to func_to_host_path_result. func_convert_path_noop () { - func_to_host_path_result="$1" + func_to_host_path_result=$1 } # end func_convert_path_noop @@ -1840,8 +3133,9 @@ func_convert_path_noop () # func_to_host_path_result. func_convert_path_msys_to_w32 () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from ARG. MSYS # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; @@ -1849,7 +3143,7 @@ func_convert_path_msys_to_w32 () func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result="$func_convert_core_msys_to_w32_result" + func_to_host_path_result=$func_convert_core_msys_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" @@ -1863,8 +3157,9 @@ func_convert_path_msys_to_w32 () # func_to_host_file_result. func_convert_path_cygwin_to_w32 () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" @@ -1883,14 +3178,15 @@ func_convert_path_cygwin_to_w32 () # a working winepath. Returns result in func_to_host_file_result. func_convert_path_nix_to_w32 () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result="$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result=$func_convert_core_path_wine_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" @@ -1904,15 +3200,16 @@ func_convert_path_nix_to_w32 () # Returns result in func_to_host_file_result. func_convert_path_msys_to_cygwin () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_msys_to_w32_result" - func_to_host_path_result="$func_cygpath_result" + func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" @@ -1927,8 +3224,9 @@ func_convert_path_msys_to_cygwin () # func_to_host_file_result. func_convert_path_nix_to_cygwin () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from # ARG. msys behavior is inconsistent here, cygpath turns them @@ -1937,7 +3235,7 @@ func_convert_path_nix_to_cygwin () func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" - func_to_host_path_result="$func_cygpath_result" + func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" @@ -1946,13 +3244,31 @@ func_convert_path_nix_to_cygwin () # end func_convert_path_nix_to_cygwin +# func_dll_def_p FILE +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with _LT_DLL_DEF_P in libtool.m4 +func_dll_def_p () +{ + $debug_cmd + + func_dll_def_p_tmp=`$SED -n \ + -e 's/^[ ]*//' \ + -e '/^\(;.*\)*$/d' \ + -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ + -e q \ + "$1"` + test DEF = "$func_dll_def_p_tmp" +} + + # func_mode_compile arg... func_mode_compile () { - $opt_debug + $debug_cmd + # Get the compilation command and the source file. base_compile= - srcfile="$nonopt" # always keep a non-empty value in "srcfile" + srcfile=$nonopt # always keep a non-empty value in "srcfile" suppress_opt=yes suppress_output= arg_mode=normal @@ -1965,12 +3281,12 @@ func_mode_compile () case $arg_mode in arg ) # do not "continue". Instead, add this to base_compile - lastarg="$arg" + lastarg=$arg arg_mode=normal ;; target ) - libobj="$arg" + libobj=$arg arg_mode=normal continue ;; @@ -1980,7 +3296,7 @@ func_mode_compile () case $arg in -o) test -n "$libobj" && \ - func_fatal_error "you cannot specify \`-o' more than once" + func_fatal_error "you cannot specify '-o' more than once" arg_mode=target continue ;; @@ -2009,12 +3325,12 @@ func_mode_compile () func_stripname '-Wc,' '' "$arg" args=$func_stripname_result lastarg= - save_ifs="$IFS"; IFS=',' + save_ifs=$IFS; IFS=, for arg in $args; do - IFS="$save_ifs" + IFS=$save_ifs func_append_quoted lastarg "$arg" done - IFS="$save_ifs" + IFS=$save_ifs func_stripname ' ' '' "$lastarg" lastarg=$func_stripname_result @@ -2027,8 +3343,8 @@ func_mode_compile () # Accept the current argument as the source file. # The previous "srcfile" becomes the current argument. # - lastarg="$srcfile" - srcfile="$arg" + lastarg=$srcfile + srcfile=$arg ;; esac # case $arg ;; @@ -2043,13 +3359,13 @@ func_mode_compile () func_fatal_error "you must specify an argument for -Xcompile" ;; target) - func_fatal_error "you must specify a target with \`-o'" + func_fatal_error "you must specify a target with '-o'" ;; *) # Get the name of the library object. test -z "$libobj" && { func_basename "$srcfile" - libobj="$func_basename_result" + libobj=$func_basename_result } ;; esac @@ -2069,7 +3385,7 @@ func_mode_compile () case $libobj in *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; *) - func_fatal_error "cannot determine name of library object from \`$libobj'" + func_fatal_error "cannot determine name of library object from '$libobj'" ;; esac @@ -2078,8 +3394,8 @@ func_mode_compile () for arg in $later; do case $arg in -shared) - test "$build_libtool_libs" != yes && \ - func_fatal_configuration "can not build a shared library" + test yes = "$build_libtool_libs" \ + || func_fatal_configuration "cannot build a shared library" build_old_libs=no continue ;; @@ -2105,17 +3421,17 @@ func_mode_compile () func_quote_for_eval "$libobj" test "X$libobj" != "X$func_quote_for_eval_result" \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ - && func_warning "libobj name \`$libobj' may not contain shell special characters." + && func_warning "libobj name '$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" - objname="$func_basename_result" - xdir="$func_dirname_result" - lobj=${xdir}$objdir/$objname + objname=$func_basename_result + xdir=$func_dirname_result + lobj=$xdir$objdir/$objname test -z "$base_compile" && \ func_fatal_help "you must specify a compilation command" # Delete any leftover library objects. - if test "$build_old_libs" = yes; then + if test yes = "$build_old_libs"; then removelist="$obj $lobj $libobj ${libobj}T" else removelist="$lobj $libobj ${libobj}T" @@ -2127,16 +3443,16 @@ func_mode_compile () pic_mode=default ;; esac - if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then + if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then # non-PIC code in shared libraries is not supported pic_mode=default fi # Calculate the filename of the output object if compiler does # not support -o with -c - if test "$compiler_c_o" = no; then - output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" + if test no = "$compiler_c_o"; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext + lockfile=$output_obj.lock else output_obj= need_locks=no @@ -2145,12 +3461,12 @@ func_mode_compile () # Lock this critical section if it is needed # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then + if test yes = "$need_locks"; then until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done - elif test "$need_locks" = warn; then + elif test warn = "$need_locks"; then if test -f "$lockfile"; then $ECHO "\ *** ERROR, $lockfile exists and contains: @@ -2158,7 +3474,7 @@ func_mode_compile () This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you +your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." @@ -2180,11 +3496,11 @@ compiler." qsrcfile=$func_quote_for_eval_result # Only build a PIC object if we are building libtool libraries. - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then # Without this assignment, base_compile gets emptied. fbsd_hideous_sh_bug=$base_compile - if test "$pic_mode" != no; then + if test no != "$pic_mode"; then command="$base_compile $qsrcfile $pic_flag" else # Don't build PIC code @@ -2201,7 +3517,7 @@ compiler." func_show_eval_locale "$command" \ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' - if test "$need_locks" = warn && + if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: @@ -2212,7 +3528,7 @@ $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you +your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." @@ -2228,20 +3544,20 @@ compiler." fi # Allow error messages only from the first compilation. - if test "$suppress_opt" = yes; then + if test yes = "$suppress_opt"; then suppress_output=' >/dev/null 2>&1' fi fi # Only build a position-dependent object if we build old libraries. - if test "$build_old_libs" = yes; then - if test "$pic_mode" != yes; then + if test yes = "$build_old_libs"; then + if test yes != "$pic_mode"; then # Don't build PIC code command="$base_compile $qsrcfile$pie_flag" else command="$base_compile $qsrcfile $pic_flag" fi - if test "$compiler_c_o" = yes; then + if test yes = "$compiler_c_o"; then func_append command " -o $obj" fi @@ -2250,7 +3566,7 @@ compiler." func_show_eval_locale "$command" \ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' - if test "$need_locks" = warn && + if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: @@ -2261,7 +3577,7 @@ $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you +your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." @@ -2281,7 +3597,7 @@ compiler." func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" # Unlock the critical section if it was locked - if test "$need_locks" != no; then + if test no != "$need_locks"; then removelist=$lockfile $RM "$lockfile" fi @@ -2291,7 +3607,7 @@ compiler." } $opt_help || { - test "$opt_mode" = compile && func_mode_compile ${1+"$@"} + test compile = "$opt_mode" && func_mode_compile ${1+"$@"} } func_mode_help () @@ -2311,7 +3627,7 @@ func_mode_help () Remove files from the build directory. RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, object or program, all the files associated @@ -2330,16 +3646,16 @@ This mode accepts the following additional options: -no-suppress do not suppress compiler output for multiple passes -prefer-pic try to build PIC objects only -prefer-non-pic try to build non-PIC objects only - -shared do not build a \`.o' file suitable for static linking - -static only build a \`.o' file suitable for static linking + -shared do not build a '.o' file suitable for static linking + -static only build a '.o' file suitable for static linking -Wc,FLAG pass FLAG directly to the compiler -COMPILE-COMMAND is a command to be used in creating a \`standard' object file +COMPILE-COMMAND is a command to be used in creating a 'standard' object file from the given SOURCEFILE. The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." +SOURCEFILE, then substituting the C source code suffix '.c' with the +library object suffix, '.lo'." ;; execute) @@ -2352,7 +3668,7 @@ This mode accepts the following additional options: -dlopen FILE add the directory containing FILE to the library path -This mode sets the library path environment variable according to \`-dlopen' +This mode sets the library path environment variable according to '-dlopen' flags. If any of the ARGS are libtool executable wrappers, then they are translated @@ -2371,7 +3687,7 @@ Complete the installation of libtool libraries. Each LIBDIR is a directory that contains libtool libraries. The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." +the '--dry-run' option if you just want to see what would be executed." ;; install) @@ -2381,7 +3697,7 @@ the \`--dry-run' option if you just want to see what would be executed." Install executables or libraries. INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. +either the 'install' or 'cp' program. The following components of INSTALL-COMMAND are treated specially: @@ -2407,7 +3723,7 @@ The following components of LINK-COMMAND are treated specially: -avoid-version do not add a version suffix if possible -bindir BINDIR specify path to binaries directory (for systems where libraries must be found in the PATH setting at runtime) - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -export-symbols SYMFILE @@ -2421,7 +3737,8 @@ The following components of LINK-COMMAND are treated specially: -no-install link a not-installable executable -no-undefined declare that a library does not refer to external symbols -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE Use a list of object files found in FILE to specify objects + -objectlist FILE use a list of object files found in FILE to specify objects + -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) -precious-files-regex REGEX don't remove output files matching REGEX -release RELEASE specify package release information @@ -2441,20 +3758,20 @@ The following components of LINK-COMMAND are treated specially: -Xlinker FLAG pass linker-specific FLAG directly to the linker -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) -All other options (arguments beginning with \`-') are ignored. +All other options (arguments beginning with '-') are ignored. -Every other argument is treated as a filename. Files ending in \`.la' are +Every other argument is treated as a filename. Files ending in '.la' are treated as uninstalled libtool libraries, other files are standard or library object files. -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is +If the OUTPUT-FILE ends in '.la', then a libtool library is created, +only library objects ('.lo' files) may be specified, and '-rpath' is required, except when creating a convenience library. -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. +If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created +using 'ar' and 'ranlib', or on Windows using 'lib'. -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file is created, otherwise an executable program is created." ;; @@ -2465,7 +3782,7 @@ is created, otherwise an executable program is created." Remove libraries from an installation directory. RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, all the files associated with it are deleted. @@ -2473,17 +3790,17 @@ Otherwise, only FILE itself is deleted using RM." ;; *) - func_fatal_help "invalid operation mode \`$opt_mode'" + func_fatal_help "invalid operation mode '$opt_mode'" ;; esac echo - $ECHO "Try \`$progname --help' for more information about other modes." + $ECHO "Try '$progname --help' for more information about other modes." } # Now that we've collected a possible --mode arg, show help if necessary if $opt_help; then - if test "$opt_help" = :; then + if test : = "$opt_help"; then func_mode_help else { @@ -2491,7 +3808,7 @@ if $opt_help; then for opt_mode in compile link execute install finish uninstall clean; do func_mode_help done - } | sed -n '1p; 2,$s/^Usage:/ or: /p' + } | $SED -n '1p; 2,$s/^Usage:/ or: /p' { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do @@ -2499,7 +3816,7 @@ if $opt_help; then func_mode_help done } | - sed '1d + $SED '1d /^When reporting/,/^Report/{ H d @@ -2516,16 +3833,17 @@ fi # func_mode_execute arg... func_mode_execute () { - $opt_debug + $debug_cmd + # The first argument is the command name. - cmd="$nonopt" + cmd=$nonopt test -z "$cmd" && \ func_fatal_help "you must specify a COMMAND" # Handle -dlopen flags immediately. for file in $opt_dlopen; do test -f "$file" \ - || func_fatal_help "\`$file' is not a file" + || func_fatal_help "'$file' is not a file" dir= case $file in @@ -2535,7 +3853,7 @@ func_mode_execute () # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ - || func_fatal_help "\`$lib' is not a valid libtool archive" + || func_fatal_help "'$lib' is not a valid libtool archive" # Read the libtool library. dlname= @@ -2546,18 +3864,18 @@ func_mode_execute () if test -z "$dlname"; then # Warn if it was a shared library. test -n "$library_names" && \ - func_warning "\`$file' was not linked with \`-export-dynamic'" + func_warning "'$file' was not linked with '-export-dynamic'" continue fi func_dirname "$file" "" "." - dir="$func_dirname_result" + dir=$func_dirname_result if test -f "$dir/$objdir/$dlname"; then func_append dir "/$objdir" else if test ! -f "$dir/$dlname"; then - func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" + func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" fi fi ;; @@ -2565,18 +3883,18 @@ func_mode_execute () *.lo) # Just add the directory containing the .lo file. func_dirname "$file" "" "." - dir="$func_dirname_result" + dir=$func_dirname_result ;; *) - func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" + func_warning "'-dlopen' is ignored for non-libtool libraries and objects" continue ;; esac # Get the absolute pathname. absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir="$absdir" + test -n "$absdir" && dir=$absdir # Now add the directory to shlibpath_var. if eval "test -z \"\$$shlibpath_var\""; then @@ -2588,7 +3906,7 @@ func_mode_execute () # This variable tells wrapper scripts just to set shlibpath_var # rather than running their programs. - libtool_execute_magic="$magic" + libtool_execute_magic=$magic # Check if any of the arguments is a wrapper script. args= @@ -2601,12 +3919,12 @@ func_mode_execute () if func_ltwrapper_script_p "$file"; then func_source "$file" # Transform arg to wrapped name. - file="$progdir/$program" + file=$progdir/$program elif func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" func_source "$func_ltwrapper_scriptname_result" # Transform arg to wrapped name. - file="$progdir/$program" + file=$progdir/$program fi ;; esac @@ -2614,7 +3932,15 @@ func_mode_execute () func_append_quoted args "$file" done - if test "X$opt_dry_run" = Xfalse; then + if $opt_dry_run; then + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + else if test -n "$shlibpath_var"; then # Export the shlibpath_var. eval "export $shlibpath_var" @@ -2631,25 +3957,18 @@ func_mode_execute () done # Now prepare to actually exec the command. - exec_cmd="\$cmd$args" - else - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" - echo "export $shlibpath_var" - fi - $ECHO "$cmd$args" - exit $EXIT_SUCCESS + exec_cmd=\$cmd$args fi } -test "$opt_mode" = execute && func_mode_execute ${1+"$@"} +test execute = "$opt_mode" && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { - $opt_debug + $debug_cmd + libs= libdirs= admincmds= @@ -2663,11 +3982,11 @@ func_mode_finish () if func_lalib_unsafe_p "$opt"; then func_append libs " $opt" else - func_warning "\`$opt' is not a valid libtool archive" + func_warning "'$opt' is not a valid libtool archive" fi else - func_fatal_error "invalid argument \`$opt'" + func_fatal_error "invalid argument '$opt'" fi done @@ -2682,12 +4001,12 @@ func_mode_finish () # Remove sysroot references if $opt_dry_run; then for lib in $libs; do - echo "removing references to $lt_sysroot and \`=' prefixes from $lib" + echo "removing references to $lt_sysroot and '=' prefixes from $lib" done else tmpdir=`func_mktempdir` for lib in $libs; do - sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ > $tmpdir/tmp-la mv -f $tmpdir/tmp-la $lib done @@ -2712,7 +4031,7 @@ func_mode_finish () fi # Exit here if they wanted silent mode. - $opt_silent && exit $EXIT_SUCCESS + $opt_quiet && exit $EXIT_SUCCESS if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then echo "----------------------------------------------------------------------" @@ -2723,27 +4042,27 @@ func_mode_finish () echo echo "If you ever happen to want to link against installed libraries" echo "in a given directory, LIBDIR, you must either use libtool, and" - echo "specify the full pathname of the library, or use the \`-LLIBDIR'" + echo "specify the full pathname of the library, or use the '-LLIBDIR'" echo "flag during linking and do at least one of the following:" if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " - add LIBDIR to the '$shlibpath_var' environment variable" echo " during execution" fi if test -n "$runpath_var"; then - echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " - add LIBDIR to the '$runpath_var' environment variable" echo " during linking" fi if test -n "$hardcode_libdir_flag_spec"; then libdir=LIBDIR eval flag=\"$hardcode_libdir_flag_spec\" - $ECHO " - use the \`$flag' linker flag" + $ECHO " - use the '$flag' linker flag" fi if test -n "$admincmds"; then $ECHO " - have your system administrator run these commands:$admincmds" fi if test -f /etc/ld.so.conf; then - echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" fi echo @@ -2762,18 +4081,20 @@ func_mode_finish () exit $EXIT_SUCCESS } -test "$opt_mode" = finish && func_mode_finish ${1+"$@"} +test finish = "$opt_mode" && func_mode_finish ${1+"$@"} # func_mode_install arg... func_mode_install () { - $opt_debug + $debug_cmd + # There may be an optional sh(1) argument at the beginning of # install_prog (especially on Windows NT). - if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || # Allow the use of GNU shtool's install command. - case $nonopt in *shtool*) :;; *) false;; esac; then + case $nonopt in *shtool*) :;; *) false;; esac + then # Aesthetically quote it. func_quote_for_eval "$nonopt" install_prog="$func_quote_for_eval_result " @@ -2800,7 +4121,7 @@ func_mode_install () opts= prev= install_type= - isdir=no + isdir=false stripme= no_mode=: for arg @@ -2813,7 +4134,7 @@ func_mode_install () fi case $arg in - -d) isdir=yes ;; + -d) isdir=: ;; -f) if $install_cp; then :; else prev=$arg @@ -2831,7 +4152,7 @@ func_mode_install () *) # If the previous option needed an argument, then skip it. if test -n "$prev"; then - if test "x$prev" = x-m && test -n "$install_override_mode"; then + if test X-m = "X$prev" && test -n "$install_override_mode"; then arg2=$install_override_mode no_mode=false fi @@ -2856,7 +4177,7 @@ func_mode_install () func_fatal_help "you must specify an install program" test -n "$prev" && \ - func_fatal_help "the \`$prev' option requires an argument" + func_fatal_help "the '$prev' option requires an argument" if test -n "$install_override_mode" && $no_mode; then if $install_cp; then :; else @@ -2878,19 +4199,19 @@ func_mode_install () dest=$func_stripname_result # Check to see that the destination is a directory. - test -d "$dest" && isdir=yes - if test "$isdir" = yes; then - destdir="$dest" + test -d "$dest" && isdir=: + if $isdir; then + destdir=$dest destname= else func_dirname_and_basename "$dest" "" "." - destdir="$func_dirname_result" - destname="$func_basename_result" + destdir=$func_dirname_result + destname=$func_basename_result # Not a directory, so check to see that there is only one file specified. set dummy $files; shift test "$#" -gt 1 && \ - func_fatal_help "\`$dest' is not a directory" + func_fatal_help "'$dest' is not a directory" fi case $destdir in [\\/]* | [A-Za-z]:[\\/]*) ;; @@ -2899,7 +4220,7 @@ func_mode_install () case $file in *.lo) ;; *) - func_fatal_help "\`$destdir' must be an absolute directory name" + func_fatal_help "'$destdir' must be an absolute directory name" ;; esac done @@ -2908,7 +4229,7 @@ func_mode_install () # This variable tells wrapper scripts just to set variables rather # than running their programs. - libtool_install_magic="$magic" + libtool_install_magic=$magic staticlibs= future_libdirs= @@ -2928,7 +4249,7 @@ func_mode_install () # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ - || func_fatal_help "\`$file' is not a valid libtool archive" + || func_fatal_help "'$file' is not a valid libtool archive" library_names= old_library= @@ -2950,7 +4271,7 @@ func_mode_install () fi func_dirname "$file" "/" "" - dir="$func_dirname_result" + dir=$func_dirname_result func_append dir "$objdir" if test -n "$relink_command"; then @@ -2964,7 +4285,7 @@ func_mode_install () # are installed into $libdir/../bin (currently, that works fine) # but it's something to keep an eye on. test "$inst_prefix_dir" = "$destdir" && \ - func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" if test -n "$inst_prefix_dir"; then # Stick the inst_prefix_dir data into the link command. @@ -2973,29 +4294,36 @@ func_mode_install () relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` fi - func_warning "relinking \`$file'" + func_warning "relinking '$file'" func_show_eval "$relink_command" \ - 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' + 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' fi # See the names of the shared library. set dummy $library_names; shift if test -n "$1"; then - realname="$1" + realname=$1 shift - srcname="$realname" - test -n "$relink_command" && srcname="$realname"T + srcname=$realname + test -n "$relink_command" && srcname=${realname}T # Install the shared library and build the symlinks. func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ 'exit $?' - tstripme="$stripme" + tstripme=$stripme case $host_os in cygwin* | mingw* | pw32* | cegcc*) case $realname in *.dll.a) - tstripme="" + tstripme= + ;; + esac + ;; + os2*) + case $realname in + *_dll.a) + tstripme= ;; esac ;; @@ -3006,7 +4334,7 @@ func_mode_install () if test "$#" -gt 0; then # Delete the old symlinks, and create new ones. - # Try `ln -sf' first, because the `ln' binary might depend on + # Try 'ln -sf' first, because the 'ln' binary might depend on # the symlink we replace! Solaris /bin/ln does not understand -f, # so we also need to try rm && ln -s. for linkname @@ -3017,14 +4345,14 @@ func_mode_install () fi # Do each command in the postinstall commands. - lib="$destdir/$realname" + lib=$destdir/$realname func_execute_cmds "$postinstall_cmds" 'exit $?' fi # Install the pseudo-library for information purposes. func_basename "$file" - name="$func_basename_result" - instname="$dir/$name"i + name=$func_basename_result + instname=$dir/${name}i func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' # Maybe install the static library, too. @@ -3036,11 +4364,11 @@ func_mode_install () # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then - destfile="$destdir/$destname" + destfile=$destdir/$destname else func_basename "$file" - destfile="$func_basename_result" - destfile="$destdir/$destfile" + destfile=$func_basename_result + destfile=$destdir/$destfile fi # Deduce the name of the destination old-style object file. @@ -3050,11 +4378,11 @@ func_mode_install () staticdest=$func_lo2o_result ;; *.$objext) - staticdest="$destfile" + staticdest=$destfile destfile= ;; *) - func_fatal_help "cannot copy a libtool object to \`$destfile'" + func_fatal_help "cannot copy a libtool object to '$destfile'" ;; esac @@ -3063,7 +4391,7 @@ func_mode_install () func_show_eval "$install_prog $file $destfile" 'exit $?' # Install the old object if enabled. - if test "$build_old_libs" = yes; then + if test yes = "$build_old_libs"; then # Deduce the name of the old-style object file. func_lo2o "$file" staticobj=$func_lo2o_result @@ -3075,23 +4403,23 @@ func_mode_install () *) # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then - destfile="$destdir/$destname" + destfile=$destdir/$destname else func_basename "$file" - destfile="$func_basename_result" - destfile="$destdir/$destfile" + destfile=$func_basename_result + destfile=$destdir/$destfile fi # If the file is missing, and there is a .exe on the end, strip it # because it is most likely a libtool script we actually want to # install - stripped_ext="" + stripped_ext= case $file in *.exe) if test ! -f "$file"; then func_stripname '' '.exe' "$file" file=$func_stripname_result - stripped_ext=".exe" + stripped_ext=.exe fi ;; esac @@ -3119,19 +4447,19 @@ func_mode_install () # Check the variables that should have been set. test -z "$generated_by_libtool_version" && \ - func_fatal_error "invalid libtool wrapper script \`$wrapper'" + func_fatal_error "invalid libtool wrapper script '$wrapper'" - finalize=yes + finalize=: for lib in $notinst_deplibs; do # Check to see that each library is installed. libdir= if test -f "$lib"; then func_source "$lib" fi - libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test + libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` if test -n "$libdir" && test ! -f "$libfile"; then - func_warning "\`$lib' has not been installed in \`$libdir'" - finalize=no + func_warning "'$lib' has not been installed in '$libdir'" + finalize=false fi done @@ -3139,29 +4467,29 @@ func_mode_install () func_source "$wrapper" outputname= - if test "$fast_install" = no && test -n "$relink_command"; then + if test no = "$fast_install" && test -n "$relink_command"; then $opt_dry_run || { - if test "$finalize" = yes; then + if $finalize; then tmpdir=`func_mktempdir` func_basename "$file$stripped_ext" - file="$func_basename_result" - outputname="$tmpdir/$file" + file=$func_basename_result + outputname=$tmpdir/$file # Replace the output file specification. relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` - $opt_silent || { + $opt_quiet || { func_quote_for_expand "$relink_command" eval "func_echo $func_quote_for_expand_result" } if eval "$relink_command"; then : else - func_error "error: relink \`$file' with the above command before installing it" + func_error "error: relink '$file' with the above command before installing it" $opt_dry_run || ${RM}r "$tmpdir" continue fi - file="$outputname" + file=$outputname else - func_warning "cannot relink \`$file'" + func_warning "cannot relink '$file'" fi } else @@ -3198,10 +4526,10 @@ func_mode_install () for file in $staticlibs; do func_basename "$file" - name="$func_basename_result" + name=$func_basename_result # Set up the ranlib parameters. - oldlib="$destdir/$name" + oldlib=$destdir/$name func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result @@ -3216,18 +4544,18 @@ func_mode_install () done test -n "$future_libdirs" && \ - func_warning "remember to run \`$progname --finish$future_libdirs'" + func_warning "remember to run '$progname --finish$future_libdirs'" if test -n "$current_libdirs"; then # Maybe just do a dry run. $opt_dry_run && current_libdirs=" -n$current_libdirs" - exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' + exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' else exit $EXIT_SUCCESS fi } -test "$opt_mode" = install && func_mode_install ${1+"$@"} +test install = "$opt_mode" && func_mode_install ${1+"$@"} # func_generate_dlsyms outputname originator pic_p @@ -3235,16 +4563,17 @@ test "$opt_mode" = install && func_mode_install ${1+"$@"} # a dlpreopen symbol table. func_generate_dlsyms () { - $opt_debug - my_outputname="$1" - my_originator="$2" - my_pic_p="${3-no}" - my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` + $debug_cmd + + my_outputname=$1 + my_originator=$2 + my_pic_p=${3-false} + my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` my_dlsyms= - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then if test -n "$NM" && test -n "$global_symbol_pipe"; then - my_dlsyms="${my_outputname}S.c" + my_dlsyms=${my_outputname}S.c else func_error "not configured to extract global symbols from dlpreopened files" fi @@ -3255,7 +4584,7 @@ func_generate_dlsyms () "") ;; *.c) # Discover the nlist of each of the dlfiles. - nlist="$output_objdir/${my_outputname}.nm" + nlist=$output_objdir/$my_outputname.nm func_show_eval "$RM $nlist ${nlist}S ${nlist}T" @@ -3263,34 +4592,36 @@ func_generate_dlsyms () func_verbose "creating $output_objdir/$my_dlsyms" $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ -/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ -/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ +/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ #ifdef __cplusplus extern \"C\" { #endif -#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) #pragma GCC diagnostic ignored \"-Wstrict-prototypes\" #endif /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) -/* DATA imports from DLLs on WIN32 con't be const, because runtime +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST -#elif defined(__osf__) +#elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + /* External symbol declarations for the compiler. */\ " - if test "$dlself" = yes; then - func_verbose "generating symbol list for \`$output'" + if test yes = "$dlself"; then + func_verbose "generating symbol list for '$output'" $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" @@ -3298,7 +4629,7 @@ extern \"C\" { progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` for progfile in $progfiles; do func_to_tool_file "$progfile" func_convert_file_msys_to_w32 - func_verbose "extracting global C symbols from \`$func_to_tool_file_result'" + func_verbose "extracting global C symbols from '$func_to_tool_file_result'" $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" done @@ -3318,10 +4649,10 @@ extern \"C\" { # Prepare the list of exported symbols if test -z "$export_symbols"; then - export_symbols="$output_objdir/$outputname.exp" + export_symbols=$output_objdir/$outputname.exp $opt_dry_run || { $RM $export_symbols - eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' case $host in *cygwin* | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' @@ -3331,7 +4662,7 @@ extern \"C\" { } else $opt_dry_run || { - eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' case $host in @@ -3345,22 +4676,22 @@ extern \"C\" { fi for dlprefile in $dlprefiles; do - func_verbose "extracting global C symbols from \`$dlprefile'" + func_verbose "extracting global C symbols from '$dlprefile'" func_basename "$dlprefile" - name="$func_basename_result" + name=$func_basename_result case $host in *cygwin* | *mingw* | *cegcc* ) # if an import library, we need to obtain dlname if func_win32_import_lib_p "$dlprefile"; then func_tr_sh "$dlprefile" eval "curr_lafile=\$libfile_$func_tr_sh_result" - dlprefile_dlbasename="" + dlprefile_dlbasename= if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then # Use subshell, to avoid clobbering current variable values dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` - if test -n "$dlprefile_dlname" ; then + if test -n "$dlprefile_dlname"; then func_basename "$dlprefile_dlname" - dlprefile_dlbasename="$func_basename_result" + dlprefile_dlbasename=$func_basename_result else # no lafile. user explicitly requested -dlpreopen <import library>. $sharedlib_from_linklib_cmd "$dlprefile" @@ -3368,7 +4699,7 @@ extern \"C\" { fi fi $opt_dry_run || { - if test -n "$dlprefile_dlbasename" ; then + if test -n "$dlprefile_dlbasename"; then eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' else func_warning "Could not compute DLL name from $name" @@ -3424,6 +4755,11 @@ extern \"C\" { echo '/* NONE */' >> "$output_objdir/$my_dlsyms" fi + func_show_eval '$RM "${nlist}I"' + if test -n "$global_symbol_to_import"; then + eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' + fi + echo >> "$output_objdir/$my_dlsyms" "\ /* The mapping between symbol names and symbols. */ @@ -3432,11 +4768,30 @@ typedef struct { void *address; } lt_dlsymlist; extern LT_DLSYM_CONST lt_dlsymlist -lt_${my_prefix}_LTX_preloaded_symbols[]; +lt_${my_prefix}_LTX_preloaded_symbols[];\ +" + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ +static void lt_syminit(void) +{ + LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; + for (; symbol->name; ++symbol) + {" + $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" + echo >> "$output_objdir/$my_dlsyms" "\ + } +}" + fi + echo >> "$output_objdir/$my_dlsyms" "\ LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[] = -{\ - { \"$my_originator\", (void *) 0 }," +{ {\"$my_originator\", (void *) 0}," + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ + {\"@INIT@\", (void *) <_syminit}," + fi case $need_lib_prefix in no) @@ -3478,9 +4833,7 @@ static const void *lt_preloaded_setup() { *-*-hpux*) pic_flag_for_symtable=" $pic_flag" ;; *) - if test "X$my_pic_p" != Xno; then - pic_flag_for_symtable=" $pic_flag" - fi + $my_pic_p && pic_flag_for_symtable=" $pic_flag" ;; esac ;; @@ -3497,10 +4850,10 @@ static const void *lt_preloaded_setup() { func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' # Clean up the generated files. - func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' # Transform the symbol file into the correct name. - symfileobj="$output_objdir/${my_outputname}S.$objext" + symfileobj=$output_objdir/${my_outputname}S.$objext case $host in *cygwin* | *mingw* | *cegcc* ) if test -f "$output_objdir/$my_outputname.def"; then @@ -3518,7 +4871,7 @@ static const void *lt_preloaded_setup() { esac ;; *) - func_fatal_error "unknown suffix for \`$my_dlsyms'" + func_fatal_error "unknown suffix for '$my_dlsyms'" ;; esac else @@ -3532,6 +4885,32 @@ static const void *lt_preloaded_setup() { fi } +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + # func_win32_libid arg # return the library type of file 'arg' # @@ -3541,8 +4920,9 @@ static const void *lt_preloaded_setup() { # Despite the name, also deal with 64 bit binaries. func_win32_libid () { - $opt_debug - win32_libid_type="unknown" + $debug_cmd + + win32_libid_type=unknown win32_fileres=`file -L $1 2>/dev/null` case $win32_fileres in *ar\ archive\ import\ library*) # definitely import @@ -3552,16 +4932,29 @@ func_win32_libid () # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then - func_to_tool_file "$1" func_convert_file_msys_to_w32 - win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | - $SED -n -e ' + case $nm_interface in + "MS dumpbin") + if func_cygming_ms_implib_p "$1" || + func_cygming_gnu_implib_p "$1" + then + win32_nmres=import + else + win32_nmres= + fi + ;; + *) + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' 1,100{ / I /{ - s,.*,import, + s|.*|import| p q } }'` + ;; + esac case $win32_nmres in import*) win32_libid_type="x86 archive import";; *) win32_libid_type="x86 archive static";; @@ -3593,7 +4986,8 @@ func_win32_libid () # $sharedlib_from_linklib_result func_cygming_dll_for_implib () { - $opt_debug + $debug_cmd + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` } @@ -3610,7 +5004,8 @@ func_cygming_dll_for_implib () # specified import library. func_cygming_dll_for_implib_fallback_core () { - $opt_debug + $debug_cmd + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` $OBJDUMP -s --section "$1" "$2" 2>/dev/null | $SED '/^Contents of section '"$match_literal"':/{ @@ -3646,8 +5041,8 @@ func_cygming_dll_for_implib_fallback_core () /./p' | # we now have a list, one entry per line, of the stringified # contents of the appropriate section of all members of the - # archive which possess that section. Heuristic: eliminate - # all those which have a first or second character that is + # archive that possess that section. Heuristic: eliminate + # all those that have a first or second character that is # a '.' (that is, objdump's representation of an unprintable # character.) This should work for all archives with less than # 0x302f exports -- but will fail for DLLs whose name actually @@ -3658,30 +5053,6 @@ func_cygming_dll_for_implib_fallback_core () $SED -e '/^\./d;/^.\./d;q' } -# func_cygming_gnu_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is a GNU/binutils-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_gnu_implib_p () -{ - $opt_debug - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` - test -n "$func_cygming_gnu_implib_tmp" -} - -# func_cygming_ms_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is an MS-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_ms_implib_p () -{ - $opt_debug - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` - test -n "$func_cygming_ms_implib_tmp" -} - # func_cygming_dll_for_implib_fallback ARG # Platform-specific function to extract the # name of the DLL associated with the specified @@ -3695,16 +5066,17 @@ func_cygming_ms_implib_p () # $sharedlib_from_linklib_result func_cygming_dll_for_implib_fallback () { - $opt_debug - if func_cygming_gnu_implib_p "$1" ; then + $debug_cmd + + if func_cygming_gnu_implib_p "$1"; then # binutils import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` - elif func_cygming_ms_implib_p "$1" ; then + elif func_cygming_ms_implib_p "$1"; then # ms-generated import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` else # unknown - sharedlib_from_linklib_result="" + sharedlib_from_linklib_result= fi } @@ -3712,10 +5084,11 @@ func_cygming_dll_for_implib_fallback () # func_extract_an_archive dir oldlib func_extract_an_archive () { - $opt_debug - f_ex_an_ar_dir="$1"; shift - f_ex_an_ar_oldlib="$1" - if test "$lock_old_archive_extraction" = yes; then + $debug_cmd + + f_ex_an_ar_dir=$1; shift + f_ex_an_ar_oldlib=$1 + if test yes = "$lock_old_archive_extraction"; then lockfile=$f_ex_an_ar_oldlib.lock until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" @@ -3724,7 +5097,7 @@ func_extract_an_archive () fi func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ 'stat=$?; rm -f "$lockfile"; exit $stat' - if test "$lock_old_archive_extraction" = yes; then + if test yes = "$lock_old_archive_extraction"; then $opt_dry_run || rm -f "$lockfile" fi if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then @@ -3738,22 +5111,23 @@ func_extract_an_archive () # func_extract_archives gentop oldlib ... func_extract_archives () { - $opt_debug - my_gentop="$1"; shift + $debug_cmd + + my_gentop=$1; shift my_oldlibs=${1+"$@"} - my_oldobjs="" - my_xlib="" - my_xabs="" - my_xdir="" + my_oldobjs= + my_xlib= + my_xabs= + my_xdir= for my_xlib in $my_oldlibs; do # Extract the objects. case $my_xlib in - [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; + [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; *) my_xabs=`pwd`"/$my_xlib" ;; esac func_basename "$my_xlib" - my_xlib="$func_basename_result" + my_xlib=$func_basename_result my_xlib_u=$my_xlib while :; do case " $extracted_archives " in @@ -3765,7 +5139,7 @@ func_extract_archives () esac done extracted_archives="$extracted_archives $my_xlib_u" - my_xdir="$my_gentop/$my_xlib_u" + my_xdir=$my_gentop/$my_xlib_u func_mkdir_p "$my_xdir" @@ -3778,22 +5152,23 @@ func_extract_archives () cd $my_xdir || exit $? darwin_archive=$my_xabs darwin_curdir=`pwd` - darwin_base_archive=`basename "$darwin_archive"` + func_basename "$darwin_archive" + darwin_base_archive=$func_basename_result darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` if test -n "$darwin_arches"; then darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` darwin_arch= func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" - for darwin_arch in $darwin_arches ; do - func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}" - $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" - cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" - func_extract_an_archive "`pwd`" "${darwin_base_archive}" + for darwin_arch in $darwin_arches; do + func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" + $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" + cd "unfat-$$/$darwin_base_archive-$darwin_arch" + func_extract_an_archive "`pwd`" "$darwin_base_archive" cd "$darwin_curdir" - $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" + $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" done # $darwin_arches ## Okay now we've a bunch of thin objects, gotta fatten them up :) - darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` darwin_file= darwin_files= for darwin_file in $darwin_filelist; do @@ -3815,7 +5190,7 @@ func_extract_archives () my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` done - func_extract_archives_result="$my_oldobjs" + func_extract_archives_result=$my_oldobjs } @@ -3830,7 +5205,7 @@ func_extract_archives () # # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR # variable will take. If 'yes', then the emitted script -# will assume that the directory in which it is stored is +# will assume that the directory where it is stored is # the $objdir directory. This is a cygwin/mingw-specific # behavior. func_emit_wrapper () @@ -3841,7 +5216,7 @@ func_emit_wrapper () #! $SHELL # $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # The $output program cannot be directly executed until all the libtool # libraries that it depends on are installed. @@ -3898,9 +5273,9 @@ _LTECHO_EOF' # Very basic option parsing. These options are (a) specific to # the libtool wrapper, (b) are identical between the wrapper -# /script/ and the wrapper /executable/ which is used only on +# /script/ and the wrapper /executable/ that is used only on # windows platforms, and (c) all begin with the string "--lt-" -# (application programs are unlikely to have options which match +# (application programs are unlikely to have options that match # this pattern). # # There are only two supported options: --lt-debug and @@ -3933,7 +5308,7 @@ func_parse_lt_options () # Print the debug banner immediately: if test -n \"\$lt_option_debug\"; then - echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2 + echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 fi } @@ -3944,7 +5319,7 @@ func_lt_dump_args () lt_dump_args_N=1; for lt_arg do - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\" + \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` done } @@ -3958,7 +5333,7 @@ func_exec_program_core () *-*-mingw | *-*-os2* | *-cegcc*) $ECHO "\ if test -n \"\$lt_option_debug\"; then - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2 + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} @@ -3968,7 +5343,7 @@ func_exec_program_core () *) $ECHO "\ if test -n \"\$lt_option_debug\"; then - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2 + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir/\$program\" \${1+\"\$@\"} @@ -4043,13 +5418,13 @@ func_exec_program () test -n \"\$absdir\" && thisdir=\"\$absdir\" " - if test "$fast_install" = yes; then + if test yes = "$fast_install"; then $ECHO "\ program=lt-'$outputname'$exeext progdir=\"\$thisdir/$objdir\" if test ! -f \"\$progdir/\$program\" || - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ test \"X\$file\" != \"X\$progdir/\$program\"; }; then file=\"\$\$-\$program\" @@ -4066,7 +5441,7 @@ func_exec_program () if test -n \"\$relink_command\"; then if relink_command_output=\`eval \$relink_command 2>&1\`; then : else - $ECHO \"\$relink_command_output\" >&2 + \$ECHO \"\$relink_command_output\" >&2 $RM \"\$progdir/\$file\" exit 1 fi @@ -4101,7 +5476,7 @@ func_exec_program () fi # Export our shlibpath_var if we have one. - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then $ECHO "\ # Add our own library path to $shlibpath_var $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" @@ -4121,7 +5496,7 @@ func_exec_program () fi else # The program doesn't exist. - \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 exit 1 @@ -4140,7 +5515,7 @@ func_emit_cwrapperexe_src () cat <<EOF /* $cwrappersource - temporary wrapper executable for $objdir/$outputname - Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION + Generated by $PROGRAM (GNU $PACKAGE) $VERSION The $output program cannot be directly executed until all the libtool libraries that it depends on are installed. @@ -4175,47 +5550,45 @@ EOF #include <fcntl.h> #include <sys/stat.h> +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + /* declarations of non-ANSI functions */ -#if defined(__MINGW32__) +#if defined __MINGW32__ # ifdef __STRICT_ANSI__ int _putenv (const char *); # endif -#elif defined(__CYGWIN__) +#elif defined __CYGWIN__ # ifdef __STRICT_ANSI__ char *realpath (const char *, char *); int putenv (char *); int setenv (const char *, const char *, int); # endif -/* #elif defined (other platforms) ... */ +/* #elif defined other_platform || defined ... */ #endif /* portability defines, excluding path handling macros */ -#if defined(_MSC_VER) +#if defined _MSC_VER # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv # define S_IXUSR _S_IEXEC -# ifndef _INTPTR_T_DEFINED -# define _INTPTR_T_DEFINED -# define intptr_t int -# endif -#elif defined(__MINGW32__) +#elif defined __MINGW32__ # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv -#elif defined(__CYGWIN__) +#elif defined __CYGWIN__ # define HAVE_SETENV # define FOPEN_WB "wb" -/* #elif defined (other platforms) ... */ +/* #elif defined other platforms ... */ #endif -#if defined(PATH_MAX) +#if defined PATH_MAX # define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) +#elif defined MAXPATHLEN # define LT_PATHMAX MAXPATHLEN #else # define LT_PATHMAX 1024 @@ -4234,8 +5607,8 @@ int setenv (const char *, const char *, int); # define PATH_SEPARATOR ':' #endif -#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ - defined (__OS2__) +#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ + defined __OS2__ # define HAVE_DOS_BASED_FILE_SYSTEM # define FOPEN_WB "wb" # ifndef DIR_SEPARATOR_2 @@ -4268,10 +5641,10 @@ int setenv (const char *, const char *, int); #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) #define XFREE(stale) do { \ - if (stale) { free ((void *) stale); stale = 0; } \ + if (stale) { free (stale); stale = 0; } \ } while (0) -#if defined(LT_DEBUGWRAPPER) +#if defined LT_DEBUGWRAPPER static int lt_debug = 1; #else static int lt_debug = 0; @@ -4300,11 +5673,16 @@ void lt_dump_script (FILE *f); EOF cat <<EOF -volatile const char * MAGIC_EXE = "$magic_exe"; +#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) +# define externally_visible volatile +#else +# define externally_visible __attribute__((externally_visible)) volatile +#endif +externally_visible const char * MAGIC_EXE = "$magic_exe"; const char * LIB_PATH_VARNAME = "$shlibpath_var"; EOF - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then func_to_host_path "$temp_rpath" cat <<EOF const char * LIB_PATH_VALUE = "$func_to_host_path_result"; @@ -4328,7 +5706,7 @@ const char * EXE_PATH_VALUE = ""; EOF fi - if test "$fast_install" = yes; then + if test yes = "$fast_install"; then cat <<EOF const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */ EOF @@ -4357,12 +5735,12 @@ main (int argc, char *argv[]) char *actual_cwrapper_name; char *target_name; char *lt_argv_zero; - intptr_t rval = 127; + int rval = 127; int i; program_name = (char *) xstrdup (base_name (argv[0])); - newargz = XMALLOC (char *, argc + 1); + newargz = XMALLOC (char *, (size_t) argc + 1); /* very simple arg parsing; don't want to rely on getopt * also, copy all non cwrapper options to newargz, except @@ -4371,10 +5749,10 @@ main (int argc, char *argv[]) newargc=0; for (i = 1; i < argc; i++) { - if (strcmp (argv[i], dumpscript_opt) == 0) + if (STREQ (argv[i], dumpscript_opt)) { EOF - case "$host" in + case $host in *mingw* | *cygwin* ) # make stdout use "unix" line endings echo " setmode(1,_O_BINARY);" @@ -4385,12 +5763,12 @@ EOF lt_dump_script (stdout); return 0; } - if (strcmp (argv[i], debug_opt) == 0) + if (STREQ (argv[i], debug_opt)) { lt_debug = 1; continue; } - if (strcmp (argv[i], ltwrapper_option_prefix) == 0) + if (STREQ (argv[i], ltwrapper_option_prefix)) { /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX namespace, but it is not one of the ones we know about and @@ -4413,7 +5791,7 @@ EOF EOF cat <<EOF /* The GNU banner must be the first non-error debug message */ - lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\n"); + lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE) $VERSION\n"); EOF cat <<"EOF" lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]); @@ -4524,7 +5902,7 @@ EOF cat <<"EOF" /* execv doesn't actually work on mingw as expected on unix */ newargz = prepare_spawn (newargz); - rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz); + rval = (int) _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz); if (rval == -1) { /* failed to start process */ @@ -4569,7 +5947,7 @@ base_name (const char *name) { const char *base; -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) +#if defined HAVE_DOS_BASED_FILE_SYSTEM /* Skip over the disk name in MSDOS pathnames. */ if (isalpha ((unsigned char) name[0]) && name[1] == ':') name += 2; @@ -4628,7 +6006,7 @@ find_executable (const char *wrapper) const char *p_next; /* static buffer for getcwd */ char tmp[LT_PATHMAX + 1]; - int tmp_len; + size_t tmp_len; char *concat_name; lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", @@ -4638,7 +6016,7 @@ find_executable (const char *wrapper) return NULL; /* Absolute path? */ -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) +#if defined HAVE_DOS_BASED_FILE_SYSTEM if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') { concat_name = xstrdup (wrapper); @@ -4656,7 +6034,7 @@ find_executable (const char *wrapper) return concat_name; XFREE (concat_name); } -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) +#if defined HAVE_DOS_BASED_FILE_SYSTEM } #endif @@ -4679,7 +6057,7 @@ find_executable (const char *wrapper) for (q = p; *q; q++) if (IS_PATH_SEPARATOR (*q)) break; - p_len = q - p; + p_len = (size_t) (q - p); p_next = (*q == '\0' ? q : q + 1); if (p_len == 0) { @@ -4798,7 +6176,7 @@ strendzap (char *str, const char *pat) if (patlen <= len) { str += len - patlen; - if (strcmp (str, pat) == 0) + if (STREQ (str, pat)) *str = '\0'; } return str; @@ -4863,7 +6241,7 @@ lt_setenv (const char *name, const char *value) char *str = xstrdup (value); setenv (name, str, 1); #else - int len = strlen (name) + 1 + strlen (value) + 1; + size_t len = strlen (name) + 1 + strlen (value) + 1; char *str = XMALLOC (char, len); sprintf (str, "%s=%s", name, value); if (putenv (str) != EXIT_SUCCESS) @@ -4880,8 +6258,8 @@ lt_extend_str (const char *orig_value, const char *add, int to_end) char *new_value; if (orig_value && *orig_value) { - int orig_value_len = strlen (orig_value); - int add_len = strlen (add); + size_t orig_value_len = strlen (orig_value); + size_t add_len = strlen (add); new_value = XMALLOC (char, add_len + orig_value_len + 1); if (to_end) { @@ -4912,10 +6290,10 @@ lt_update_exe_path (const char *name, const char *value) { char *new_value = lt_extend_str (getenv (name), value, 0); /* some systems can't cope with a ':'-terminated path #' */ - int len = strlen (new_value); - while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) + size_t len = strlen (new_value); + while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) { - new_value[len-1] = '\0'; + new_value[--len] = '\0'; } lt_setenv (name, new_value); XFREE (new_value); @@ -5082,27 +6460,47 @@ EOF # True if ARG is an import lib, as indicated by $file_magic_cmd func_win32_import_lib_p () { - $opt_debug + $debug_cmd + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in *import*) : ;; *) false ;; esac } +# func_suncc_cstd_abi +# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! +# Several compiler flags select an ABI that is incompatible with the +# Cstd library. Avoid specifying it if any are in CXXFLAGS. +func_suncc_cstd_abi () +{ + $debug_cmd + + case " $compile_command " in + *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) + suncc_use_cstd_abi=no + ;; + *) + suncc_use_cstd_abi=yes + ;; + esac +} + # func_mode_link arg... func_mode_link () { - $opt_debug + $debug_cmd + case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) # It is impossible to link a dll without this setting, and # we shouldn't force the makefile maintainer to figure out - # which system we are compiling for in order to pass an extra + # what system we are compiling for in order to pass an extra # flag for every libtool invocation. # allow_undefined=no # FIXME: Unfortunately, there are problems with the above when trying - # to make a dll which has undefined symbols, in which case not + # to make a dll that has undefined symbols, in which case not # even a static library is built. For now, we need to specify # -no-undefined on the libtool link line when we can be certain # that all symbols are satisfied, otherwise we get a static library. @@ -5146,10 +6544,11 @@ func_mode_link () module=no no_install=no objs= + os2dllname= non_pic_objects= precious_files_regex= prefer_static_libs=no - preload=no + preload=false prev= prevarg= release= @@ -5161,7 +6560,7 @@ func_mode_link () vinfo= vinfo_number=no weak_libs= - single_module="${wl}-single_module" + single_module=$wl-single_module func_infer_tag $base_compile # We need to know -static, to get the right output filenames. @@ -5169,15 +6568,15 @@ func_mode_link () do case $arg in -shared) - test "$build_libtool_libs" != yes && \ - func_fatal_configuration "can not build a shared library" + test yes != "$build_libtool_libs" \ + && func_fatal_configuration "cannot build a shared library" build_old_libs=no break ;; -all-static | -static | -static-libtool-libs) case $arg in -all-static) - if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then func_warning "complete static linking is impossible in this configuration" fi if test -n "$link_static_flag"; then @@ -5210,7 +6609,7 @@ func_mode_link () # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do - arg="$1" + arg=$1 shift func_quote_for_eval "$arg" qarg=$func_quote_for_eval_unquoted_result @@ -5227,21 +6626,21 @@ func_mode_link () case $prev in bindir) - bindir="$arg" + bindir=$arg prev= continue ;; dlfiles|dlprefiles) - if test "$preload" = no; then + $preload || { # Add the symbol object into the linking commands. func_append compile_command " @SYMFILE@" func_append finalize_command " @SYMFILE@" - preload=yes - fi + preload=: + } case $arg in *.la | *.lo) ;; # We handle these cases below. force) - if test "$dlself" = no; then + if test no = "$dlself"; then dlself=needless export_dynamic=yes fi @@ -5249,9 +6648,9 @@ func_mode_link () continue ;; self) - if test "$prev" = dlprefiles; then + if test dlprefiles = "$prev"; then dlself=yes - elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then dlself=yes else dlself=needless @@ -5261,7 +6660,7 @@ func_mode_link () continue ;; *) - if test "$prev" = dlfiles; then + if test dlfiles = "$prev"; then func_append dlfiles " $arg" else func_append dlprefiles " $arg" @@ -5272,14 +6671,14 @@ func_mode_link () esac ;; expsyms) - export_symbols="$arg" + export_symbols=$arg test -f "$arg" \ - || func_fatal_error "symbol file \`$arg' does not exist" + || func_fatal_error "symbol file '$arg' does not exist" prev= continue ;; expsyms_regex) - export_symbols_regex="$arg" + export_symbols_regex=$arg prev= continue ;; @@ -5297,7 +6696,13 @@ func_mode_link () continue ;; inst_prefix) - inst_prefix_dir="$arg" + inst_prefix_dir=$arg + prev= + continue + ;; + mllvm) + # Clang does not use LLVM to link, so we can simply discard any + # '-mllvm $arg' options when doing the link step. prev= continue ;; @@ -5321,21 +6726,21 @@ func_mode_link () if test -z "$pic_object" || test -z "$non_pic_object" || - test "$pic_object" = none && - test "$non_pic_object" = none; then - func_fatal_error "cannot find name of object for \`$arg'" + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result - if test "$pic_object" != none; then + if test none != "$pic_object"; then # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" + pic_object=$xdir$pic_object - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then func_append dlfiles " $pic_object" prev= continue @@ -5346,7 +6751,7 @@ func_mode_link () fi # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then + if test dlprefiles = "$prev"; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= @@ -5354,23 +6759,23 @@ func_mode_link () # A PIC object. func_append libobjs " $pic_object" - arg="$pic_object" + arg=$pic_object fi # Non-PIC object. - if test "$non_pic_object" != none; then + if test none != "$non_pic_object"; then # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" + non_pic_object=$xdir$non_pic_object # A standard non-PIC object func_append non_pic_objects " $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. - non_pic_object="$pic_object" + non_pic_object=$pic_object func_append non_pic_objects " $non_pic_object" fi else @@ -5378,7 +6783,7 @@ func_mode_link () if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result @@ -5386,24 +6791,29 @@ func_mode_link () func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else - func_fatal_error "\`$arg' is not a valid libtool object" + func_fatal_error "'$arg' is not a valid libtool object" fi fi done else - func_fatal_error "link input file \`$arg' does not exist" + func_fatal_error "link input file '$arg' does not exist" fi arg=$save_arg prev= continue ;; + os2dllname) + os2dllname=$arg + prev= + continue + ;; precious_regex) - precious_files_regex="$arg" + precious_files_regex=$arg prev= continue ;; release) - release="-$arg" + release=-$arg prev= continue ;; @@ -5415,7 +6825,7 @@ func_mode_link () func_fatal_error "only absolute run-paths are allowed" ;; esac - if test "$prev" = rpath; then + if test rpath = "$prev"; then case "$rpath " in *" $arg "*) ;; *) func_append rpath " $arg" ;; @@ -5430,7 +6840,7 @@ func_mode_link () continue ;; shrext) - shrext_cmds="$arg" + shrext_cmds=$arg prev= continue ;; @@ -5470,7 +6880,7 @@ func_mode_link () esac fi # test -n "$prev" - prevarg="$arg" + prevarg=$arg case $arg in -all-static) @@ -5484,7 +6894,7 @@ func_mode_link () -allow-undefined) # FIXME: remove this flag sometime in the future. - func_fatal_error "\`-allow-undefined' must not be used because it is the default" + func_fatal_error "'-allow-undefined' must not be used because it is the default" ;; -avoid-version) @@ -5516,7 +6926,7 @@ func_mode_link () if test -n "$export_symbols" || test -n "$export_symbols_regex"; then func_fatal_error "more than one -exported-symbols argument is not allowed" fi - if test "X$arg" = "X-export-symbols"; then + if test X-export-symbols = "X$arg"; then prev=expsyms else prev=expsyms_regex @@ -5550,9 +6960,9 @@ func_mode_link () func_stripname "-L" '' "$arg" if test -z "$func_stripname_result"; then if test "$#" -gt 0; then - func_fatal_error "require no space between \`-L' and \`$1'" + func_fatal_error "require no space between '-L' and '$1'" else - func_fatal_error "need path for \`-L' option" + func_fatal_error "need path for '-L' option" fi fi func_resolve_sysroot "$func_stripname_result" @@ -5563,8 +6973,8 @@ func_mode_link () *) absdir=`cd "$dir" && pwd` test -z "$absdir" && \ - func_fatal_error "cannot determine absolute directory name of \`$dir'" - dir="$absdir" + func_fatal_error "cannot determine absolute directory name of '$dir'" + dir=$absdir ;; esac case "$deplibs " in @@ -5599,7 +7009,7 @@ func_mode_link () ;; -l*) - if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then + if test X-lc = "X$arg" || test X-lm = "X$arg"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) # These systems don't actually have a C or math library (as such) @@ -5607,11 +7017,11 @@ func_mode_link () ;; *-*-os2*) # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C and math libraries are in the System framework @@ -5620,16 +7030,16 @@ func_mode_link () ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; esac - elif test "X$arg" = "X-lc_r"; then + elif test X-lc_r = "X$arg"; then case $host in - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) # Do not include libc_r directly, use -pthread flag. continue ;; @@ -5639,6 +7049,11 @@ func_mode_link () continue ;; + -mllvm) + prev=mllvm + continue + ;; + -module) module=yes continue @@ -5668,7 +7083,7 @@ func_mode_link () ;; -multi_module) - single_module="${wl}-multi_module" + single_module=$wl-multi_module continue ;; @@ -5682,8 +7097,8 @@ func_mode_link () *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) # The PATH hackery in wrapper scripts is required on Windows # and Darwin in order for the loader to find any dlls it needs. - func_warning "\`-no-install' is ignored for $host" - func_warning "assuming \`-no-fast-install' instead" + func_warning "'-no-install' is ignored for $host" + func_warning "assuming '-no-fast-install' instead" fast_install=no ;; *) no_install=yes ;; @@ -5701,6 +7116,11 @@ func_mode_link () continue ;; + -os2dllname) + prev=os2dllname + continue + ;; + -o) prev=output ;; -precious-files-regex) @@ -5788,14 +7208,14 @@ func_mode_link () func_stripname '-Wc,' '' "$arg" args=$func_stripname_result arg= - save_ifs="$IFS"; IFS=',' + save_ifs=$IFS; IFS=, for flag in $args; do - IFS="$save_ifs" + IFS=$save_ifs func_quote_for_eval "$flag" func_append arg " $func_quote_for_eval_result" func_append compiler_flags " $func_quote_for_eval_result" done - IFS="$save_ifs" + IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; @@ -5804,15 +7224,15 @@ func_mode_link () func_stripname '-Wl,' '' "$arg" args=$func_stripname_result arg= - save_ifs="$IFS"; IFS=',' + save_ifs=$IFS; IFS=, for flag in $args; do - IFS="$save_ifs" + IFS=$save_ifs func_quote_for_eval "$flag" func_append arg " $wl$func_quote_for_eval_result" func_append compiler_flags " $wl$func_quote_for_eval_result" func_append linker_flags " $func_quote_for_eval_result" done - IFS="$save_ifs" + IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; @@ -5835,7 +7255,7 @@ func_mode_link () # -msg_* for osf cc -msg_*) func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result ;; # Flags to be passed through unchanged, with rationale: @@ -5847,25 +7267,46 @@ func_mode_link () # -m*, -t[45]*, -txscale* architecture-specific flags for GCC # -F/path path to uninstalled frameworks, gcc on darwin # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # -fstack-protector* stack protector flags for GCC # @file GCC response files # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support - # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -stdlib=* select c++ std lib with clang -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*|-flto*|-fwhopr*|-fuse-linker-plugin) + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result func_append compile_command " $arg" func_append finalize_command " $arg" func_append compiler_flags " $arg" continue ;; + -Z*) + if test os2 = "`expr $host : '.*\(os2\)'`"; then + # OS/2 uses -Zxxx to specify OS/2-specific options + compiler_flags="$compiler_flags $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case $arg in + -Zlinker | -Zstack) + prev=xcompiler + ;; + esac + continue + else + # Otherwise treat like 'Some other compiler flag' below + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + fi + ;; + # Some other compiler flag. -* | +*) func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result ;; *.$objext) @@ -5886,21 +7327,21 @@ func_mode_link () if test -z "$pic_object" || test -z "$non_pic_object" || - test "$pic_object" = none && - test "$non_pic_object" = none; then - func_fatal_error "cannot find name of object for \`$arg'" + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result - if test "$pic_object" != none; then + test none = "$pic_object" || { # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" + pic_object=$xdir$pic_object - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then func_append dlfiles " $pic_object" prev= continue @@ -5911,7 +7352,7 @@ func_mode_link () fi # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then + if test dlprefiles = "$prev"; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= @@ -5919,23 +7360,23 @@ func_mode_link () # A PIC object. func_append libobjs " $pic_object" - arg="$pic_object" - fi + arg=$pic_object + } # Non-PIC object. - if test "$non_pic_object" != none; then + if test none != "$non_pic_object"; then # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" + non_pic_object=$xdir$non_pic_object # A standard non-PIC object func_append non_pic_objects " $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. - non_pic_object="$pic_object" + non_pic_object=$pic_object func_append non_pic_objects " $non_pic_object" fi else @@ -5943,7 +7384,7 @@ func_mode_link () if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result @@ -5951,7 +7392,7 @@ func_mode_link () func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else - func_fatal_error "\`$arg' is not a valid libtool object" + func_fatal_error "'$arg' is not a valid libtool object" fi fi ;; @@ -5967,11 +7408,11 @@ func_mode_link () # A libtool-controlled library. func_resolve_sysroot "$arg" - if test "$prev" = dlfiles; then + if test dlfiles = "$prev"; then # This library was specified with -dlopen. func_append dlfiles " $func_resolve_sysroot_result" prev= - elif test "$prev" = dlprefiles; then + elif test dlprefiles = "$prev"; then # The library was specified with -dlpreopen. func_append dlprefiles " $func_resolve_sysroot_result" prev= @@ -5986,7 +7427,7 @@ func_mode_link () # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result ;; esac # arg @@ -5998,9 +7439,9 @@ func_mode_link () done # argument parsing loop test -n "$prev" && \ - func_fatal_help "the \`$prevarg' option requires an argument" + func_fatal_help "the '$prevarg' option requires an argument" - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" func_append compile_command " $arg" func_append finalize_command " $arg" @@ -6009,20 +7450,23 @@ func_mode_link () oldlibs= # calculate the name of the file, without its directory func_basename "$output" - outputname="$func_basename_result" - libobjs_save="$libobjs" + outputname=$func_basename_result + libobjs_save=$libobjs if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\` + eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` else shlib_search_path= fi eval sys_lib_search_path=\"$sys_lib_search_path_spec\" eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + # Definition is injected by LT_CONFIG during libtool generation. + func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" + func_dirname "$output" "/" "" - output_objdir="$func_dirname_result$objdir" + output_objdir=$func_dirname_result$objdir func_to_tool_file "$output_objdir/" tool_output_objdir=$func_to_tool_file_result # Create the object directory. @@ -6045,7 +7489,7 @@ func_mode_link () # Find all interdependent deplibs by searching for libraries # that are linked more than once (e.g. -la -lb -la) for deplib in $deplibs; do - if $opt_preserve_dup_deps ; then + if $opt_preserve_dup_deps; then case "$libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac @@ -6053,7 +7497,7 @@ func_mode_link () func_append libs " $deplib" done - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then libs="$predeps $libs $compiler_lib_search_path $postdeps" # Compute libraries that are listed more than once in $predeps @@ -6085,7 +7529,7 @@ func_mode_link () case $file in *.la) ;; *) - func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" + func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" ;; esac done @@ -6093,7 +7537,7 @@ func_mode_link () prog) compile_deplibs= finalize_deplibs= - alldeplibs=no + alldeplibs=false newdlfiles= newdlprefiles= passes="conv scan dlopen dlpreopen link" @@ -6105,29 +7549,29 @@ func_mode_link () for pass in $passes; do # The preopen pass in lib mode reverses $deplibs; put it back here # so that -L comes before libs that need it for instance... - if test "$linkmode,$pass" = "lib,link"; then + if test lib,link = "$linkmode,$pass"; then ## FIXME: Find the place where the list is rebuilt in the wrong ## order, and fix it there properly tmp_deplibs= for deplib in $deplibs; do tmp_deplibs="$deplib $tmp_deplibs" done - deplibs="$tmp_deplibs" + deplibs=$tmp_deplibs fi - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan"; then - libs="$deplibs" + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass"; then + libs=$deplibs deplibs= fi - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then case $pass in - dlopen) libs="$dlfiles" ;; - dlpreopen) libs="$dlprefiles" ;; + dlopen) libs=$dlfiles ;; + dlpreopen) libs=$dlprefiles ;; link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; esac fi - if test "$linkmode,$pass" = "lib,dlpreopen"; then + if test lib,dlpreopen = "$linkmode,$pass"; then # Collect and forward deplibs of preopened libtool libs for lib in $dlprefiles; do # Ignore non-libtool-libs @@ -6148,26 +7592,26 @@ func_mode_link () esac done done - libs="$dlprefiles" + libs=$dlprefiles fi - if test "$pass" = dlopen; then + if test dlopen = "$pass"; then # Collect dlpreopened libraries - save_deplibs="$deplibs" + save_deplibs=$deplibs deplibs= fi for deplib in $libs; do lib= - found=no + found=false case $deplib in -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append compiler_flags " $deplib" - if test "$linkmode" = lib ; then + if test lib = "$linkmode"; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; @@ -6177,13 +7621,13 @@ func_mode_link () continue ;; -l*) - if test "$linkmode" != lib && test "$linkmode" != prog; then - func_warning "\`-l' is ignored for archives/objects" + if test lib != "$linkmode" && test prog != "$linkmode"; then + func_warning "'-l' is ignored for archives/objects" continue fi func_stripname '-l' '' "$deplib" name=$func_stripname_result - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" else searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" @@ -6191,31 +7635,22 @@ func_mode_link () for searchdir in $searchdirs; do for search_ext in .la $std_shrext .so .a; do # Search the libtool library - lib="$searchdir/lib${name}${search_ext}" + lib=$searchdir/lib$name$search_ext if test -f "$lib"; then - if test "$search_ext" = ".la"; then - found=yes + if test .la = "$search_ext"; then + found=: else - found=no + found=false fi break 2 fi done done - if test "$found" != yes; then - # deplib doesn't seem to be a libtool library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - else # deplib is a libtool library + if $found; then + # deplib is a libtool library # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, # We need to do some special things here, and not later. - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $deplib "*) if func_lalib_p "$lib"; then @@ -6223,19 +7658,19 @@ func_mode_link () old_library= func_source "$lib" for l in $old_library $library_names; do - ll="$l" + ll=$l done - if test "X$ll" = "X$old_library" ; then # only static version available - found=no + if test "X$ll" = "X$old_library"; then # only static version available + found=false func_dirname "$lib" "" "." - ladir="$func_dirname_result" + ladir=$func_dirname_result lib=$ladir/$old_library - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" fi continue fi @@ -6244,15 +7679,25 @@ func_mode_link () *) ;; esac fi + else + # deplib doesn't seem to be a libtool library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue fi ;; # -l *.ltframework) - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" - if test "$linkmode" = lib ; then + if test lib = "$linkmode"; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; @@ -6265,18 +7710,18 @@ func_mode_link () case $linkmode in lib) deplibs="$deplib $deplibs" - test "$pass" = conv && continue + test conv = "$pass" && continue newdependency_libs="$deplib $newdependency_libs" func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; prog) - if test "$pass" = conv; then + if test conv = "$pass"; then deplibs="$deplib $deplibs" continue fi - if test "$pass" = scan; then + if test scan = "$pass"; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" @@ -6287,13 +7732,13 @@ func_mode_link () func_append newlib_search_path " $func_resolve_sysroot_result" ;; *) - func_warning "\`-L' is ignored for archives/objects" + func_warning "'-L' is ignored for archives/objects" ;; esac # linkmode continue ;; # -L -R*) - if test "$pass" = link; then + if test link = "$pass"; then func_stripname '-R' '' "$deplib" func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result @@ -6311,7 +7756,7 @@ func_mode_link () lib=$func_resolve_sysroot_result ;; *.$libext) - if test "$pass" = conv; then + if test conv = "$pass"; then deplibs="$deplib $deplibs" continue fi @@ -6322,21 +7767,26 @@ func_mode_link () case " $dlpreconveniencelibs " in *" $deplib "*) ;; *) - valid_a_lib=no + valid_a_lib=false case $deplibs_check_method in match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ | $EGREP "$match_pattern_regex" > /dev/null; then - valid_a_lib=yes + valid_a_lib=: fi ;; pass_all) - valid_a_lib=yes + valid_a_lib=: ;; esac - if test "$valid_a_lib" != yes; then + if $valid_a_lib; then + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + else echo $ECHO "*** Warning: Trying to link with static lib archive $deplib." echo "*** I have the capability to make that library automatically link in when" @@ -6344,18 +7794,13 @@ func_mode_link () echo "*** shared version of the library, which you do not appear to have" echo "*** because the file extensions .$libext of this argument makes me believe" echo "*** that it is just a static archive that I should not use here." - else - echo - $ECHO "*** Warning: Linking the shared library $output against the" - $ECHO "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" fi ;; esac continue ;; prog) - if test "$pass" != link; then + if test link != "$pass"; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" @@ -6366,10 +7811,10 @@ func_mode_link () esac # linkmode ;; # *.$libext *.lo | *.$objext) - if test "$pass" = conv; then + if test conv = "$pass"; then deplibs="$deplib $deplibs" - elif test "$linkmode" = prog; then - if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + elif test prog = "$linkmode"; then + if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then # If there is no dlopen support or we're linking statically, # we need to preload. func_append newdlprefiles " $deplib" @@ -6382,22 +7827,20 @@ func_mode_link () continue ;; %DEPLIBS%) - alldeplibs=yes + alldeplibs=: continue ;; esac # case $deplib - if test "$found" = yes || test -f "$lib"; then : - else - func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" - fi + $found || test -f "$lib" \ + || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$lib" \ - || func_fatal_error "\`$lib' is not a valid libtool archive" + || func_fatal_error "'$lib' is not a valid libtool archive" func_dirname "$lib" "" "." - ladir="$func_dirname_result" + ladir=$func_dirname_result dlname= dlopen= @@ -6427,30 +7870,30 @@ func_mode_link () done fi dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan" || - { test "$linkmode" != prog && test "$linkmode" != lib; }; then + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass" || + { test prog != "$linkmode" && test lib != "$linkmode"; }; then test -n "$dlopen" && func_append dlfiles " $dlopen" test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" fi - if test "$pass" = conv; then + if test conv = "$pass"; then # Only check for convenience libraries deplibs="$lib $deplibs" if test -z "$libdir"; then if test -z "$old_library"; then - func_fatal_error "cannot find name of link library for \`$lib'" + func_fatal_error "cannot find name of link library for '$lib'" fi # 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" - elif test "$linkmode" != prog && test "$linkmode" != lib; then - func_fatal_error "\`$lib' is not a convenience library" + 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 + if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac @@ -6464,26 +7907,26 @@ func_mode_link () # Get the name of the library we link against. linklib= if test -n "$old_library" && - { test "$prefer_static_libs" = yes || - test "$prefer_static_libs,$installed" = "built,no"; }; then + { test yes = "$prefer_static_libs" || + test built,no = "$prefer_static_libs,$installed"; }; then linklib=$old_library else for l in $old_library $library_names; do - linklib="$l" + linklib=$l done fi if test -z "$linklib"; then - func_fatal_error "cannot find name of link library for \`$lib'" + func_fatal_error "cannot find name of link library for '$lib'" fi # This library was specified with -dlopen. - if test "$pass" = dlopen; then - if test -z "$libdir"; then - func_fatal_error "cannot -dlopen a convenience library: \`$lib'" - fi + if test dlopen = "$pass"; then + test -z "$libdir" \ + && func_fatal_error "cannot -dlopen a convenience library: '$lib'" if test -z "$dlname" || - test "$dlopen_support" != yes || - test "$build_libtool_libs" = no; then + test yes != "$dlopen_support" || + test no = "$build_libtool_libs" + then # If there is no dlname, no dlopen support or we're linking # statically, we need to preload. We also need to preload any # dependent libraries so libltdl's deplib preloader doesn't @@ -6497,40 +7940,40 @@ func_mode_link () # We need an absolute path. case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; *) abs_ladir=`cd "$ladir" && pwd` if test -z "$abs_ladir"; then - func_warning "cannot determine absolute directory name of \`$ladir'" + func_warning "cannot determine absolute directory name of '$ladir'" func_warning "passing it literally to the linker, although it might fail" - abs_ladir="$ladir" + abs_ladir=$ladir fi ;; esac func_basename "$lib" - laname="$func_basename_result" + laname=$func_basename_result # Find the relevant object directory and library name. - if test "X$installed" = Xyes; then + if test yes = "$installed"; then if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - func_warning "library \`$lib' was moved." - dir="$ladir" - absdir="$abs_ladir" - libdir="$abs_ladir" + func_warning "library '$lib' was moved." + dir=$ladir + absdir=$abs_ladir + libdir=$abs_ladir else - dir="$lt_sysroot$libdir" - absdir="$lt_sysroot$libdir" + dir=$lt_sysroot$libdir + absdir=$lt_sysroot$libdir fi - test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes + test yes = "$hardcode_automatic" && avoidtemprpath=yes else if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then - dir="$ladir" - absdir="$abs_ladir" + dir=$ladir + absdir=$abs_ladir # Remove this search path later func_append notinst_path " $abs_ladir" else - dir="$ladir/$objdir" - absdir="$abs_ladir/$objdir" + dir=$ladir/$objdir + absdir=$abs_ladir/$objdir # Remove this search path later func_append notinst_path " $abs_ladir" fi @@ -6539,11 +7982,11 @@ func_mode_link () name=$func_stripname_result # This library was specified with -dlpreopen. - if test "$pass" = dlpreopen; then - if test -z "$libdir" && test "$linkmode" = prog; then - func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" + if test dlpreopen = "$pass"; then + if test -z "$libdir" && test prog = "$linkmode"; then + func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" fi - case "$host" in + case $host in # special handling for platforms with PE-DLLs. *cygwin* | *mingw* | *cegcc* ) # Linker will automatically link against shared library if both @@ -6587,9 +8030,9 @@ func_mode_link () if test -z "$libdir"; then # Link the convenience library - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then deplibs="$dir/$old_library $deplibs" - elif test "$linkmode,$pass" = "prog,link"; then + elif test prog,link = "$linkmode,$pass"; then compile_deplibs="$dir/$old_library $compile_deplibs" finalize_deplibs="$dir/$old_library $finalize_deplibs" else @@ -6599,14 +8042,14 @@ func_mode_link () fi - if test "$linkmode" = prog && test "$pass" != link; then + if test prog = "$linkmode" && test link != "$pass"; then func_append newlib_search_path " $ladir" deplibs="$lib $deplibs" - linkalldeplibs=no - if test "$link_all_deplibs" != no || test -z "$library_names" || - test "$build_libtool_libs" = no; then - linkalldeplibs=yes + linkalldeplibs=false + if test no != "$link_all_deplibs" || test -z "$library_names" || + test no = "$build_libtool_libs"; then + linkalldeplibs=: fi tmp_libs= @@ -6618,14 +8061,14 @@ func_mode_link () ;; esac # Need to link against all dependency_libs? - if test "$linkalldeplibs" = yes; then + if $linkalldeplibs; then deplibs="$deplib $deplibs" else # Need to hardcode shared library paths # or/and link against static libraries newdependency_libs="$deplib $newdependency_libs" fi - if $opt_preserve_dup_deps ; then + if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac @@ -6635,15 +8078,15 @@ func_mode_link () continue fi # $linkmode = prog... - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then if test -n "$library_names" && - { { test "$prefer_static_libs" = no || - test "$prefer_static_libs,$installed" = "built,yes"; } || + { { test no = "$prefer_static_libs" || + test built,yes = "$prefer_static_libs,$installed"; } || test -z "$old_library"; }; then # We need to hardcode the library path - if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then + if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then # Make sure the rpath contains only unique directories. - case "$temp_rpath:" in + case $temp_rpath: in *"$absdir:"*) ;; *) func_append temp_rpath "$absdir:" ;; esac @@ -6672,9 +8115,9 @@ func_mode_link () esac fi # $linkmode,$pass = prog,link... - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && + if $alldeplibs && + { test pass_all = "$deplibs_check_method" || + { test yes = "$build_libtool_libs" && test -n "$library_names"; }; }; then # We only need to search for static libraries continue @@ -6683,19 +8126,19 @@ func_mode_link () link_static=no # Whether the deplib will be linked statically use_static_libs=$prefer_static_libs - if test "$use_static_libs" = built && test "$installed" = yes; then + if test built = "$use_static_libs" && test yes = "$installed"; then use_static_libs=no fi if test -n "$library_names" && - { test "$use_static_libs" = no || test -z "$old_library"; }; then + { test no = "$use_static_libs" || test -z "$old_library"; }; then case $host in - *cygwin* | *mingw* | *cegcc*) + *cygwin* | *mingw* | *cegcc* | *os2*) # No point in relinking DLLs because paths are not encoded func_append notinst_deplibs " $lib" need_relink=no ;; *) - if test "$installed" = no; then + if test no = "$installed"; then func_append notinst_deplibs " $lib" need_relink=yes fi @@ -6705,24 +8148,24 @@ func_mode_link () # Warn about portability, can't link against -module's on some # systems (darwin). Don't bleat about dlopened modules though! - dlopenmodule="" + dlopenmodule= for dlpremoduletest in $dlprefiles; do if test "X$dlpremoduletest" = "X$lib"; then - dlopenmodule="$dlpremoduletest" + dlopenmodule=$dlpremoduletest break fi done - if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then + if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then echo - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then $ECHO "*** Warning: Linking the executable $output against the loadable module" else $ECHO "*** Warning: Linking the shared library $output against the loadable module" fi $ECHO "*** $linklib is not portable!" fi - if test "$linkmode" = lib && - test "$hardcode_into_libs" = yes; then + if test lib = "$linkmode" && + test yes = "$hardcode_into_libs"; then # Hardcode the library path. # Skip directories that are in the system default run-time # search path. @@ -6750,43 +8193,43 @@ func_mode_link () # figure out the soname set dummy $library_names shift - realname="$1" + realname=$1 shift libname=`eval "\\$ECHO \"$libname_spec\""` # use dlname if we got it. it's perfectly good, no? if test -n "$dlname"; then - soname="$dlname" + soname=$dlname elif test -n "$soname_spec"; then # bleh windows case $host in - *cygwin* | mingw* | *cegcc*) + *cygwin* | mingw* | *cegcc* | *os2*) func_arith $current - $age major=$func_arith_result - versuffix="-$major" + versuffix=-$major ;; esac eval soname=\"$soname_spec\" else - soname="$realname" + soname=$realname fi # Make a new name for the extract_expsyms_cmds to use - soroot="$soname" + soroot=$soname func_basename "$soroot" - soname="$func_basename_result" + soname=$func_basename_result func_stripname 'lib' '.dll' "$soname" newlib=libimp-$func_stripname_result.a # If the library has no export list, then create one now if test -f "$output_objdir/$soname-def"; then : else - func_verbose "extracting exported symbol list from \`$soname'" + func_verbose "extracting exported symbol list from '$soname'" func_execute_cmds "$extract_expsyms_cmds" 'exit $?' fi # Create $newlib if test -f "$output_objdir/$newlib"; then :; else - func_verbose "generating import library for \`$soname'" + func_verbose "generating import library for '$soname'" func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' fi # make sure the library variables are pointing to the new library @@ -6794,58 +8237,58 @@ func_mode_link () linklib=$newlib fi # test -n "$old_archive_from_expsyms_cmds" - if test "$linkmode" = prog || test "$opt_mode" != relink; then + if test prog = "$linkmode" || test relink != "$opt_mode"; then add_shlibpath= add_dir= add= lib_linked=yes case $hardcode_action in immediate | unsupported) - if test "$hardcode_direct" = no; then - add="$dir/$linklib" + if test no = "$hardcode_direct"; then + add=$dir/$linklib case $host in - *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; - *-*-sysv4*uw2*) add_dir="-L$dir" ;; + *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; + *-*-sysv4*uw2*) add_dir=-L$dir ;; *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ - *-*-unixware7*) add_dir="-L$dir" ;; + *-*-unixware7*) add_dir=-L$dir ;; *-*-darwin* ) - # if the lib is a (non-dlopened) module then we can not + # if the lib is a (non-dlopened) module then we cannot # link against it, someone is ignoring the earlier warnings if /usr/bin/file -L $add 2> /dev/null | - $GREP ": [^:]* bundle" >/dev/null ; then + $GREP ": [^:]* bundle" >/dev/null; then if test "X$dlopenmodule" != "X$lib"; then $ECHO "*** Warning: lib $linklib is a module, not a shared library" - if test -z "$old_library" ; then + if test -z "$old_library"; then echo echo "*** And there doesn't seem to be a static archive available" echo "*** The link will probably fail, sorry" else - add="$dir/$old_library" + add=$dir/$old_library fi elif test -n "$old_library"; then - add="$dir/$old_library" + add=$dir/$old_library fi fi esac - elif test "$hardcode_minus_L" = no; then + elif test no = "$hardcode_minus_L"; then case $host in - *-*-sunos*) add_shlibpath="$dir" ;; + *-*-sunos*) add_shlibpath=$dir ;; esac - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = no; then - add_shlibpath="$dir" - add="-l$name" + add_dir=-L$dir + add=-l$name + elif test no = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name else lib_linked=no fi ;; relink) - if test "$hardcode_direct" = yes && - test "$hardcode_direct_absolute" = no; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$absdir" + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$dir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$absdir # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in @@ -6854,10 +8297,10 @@ func_mode_link () ;; esac fi - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - add_shlibpath="$dir" - add="-l$name" + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name else lib_linked=no fi @@ -6865,7 +8308,7 @@ func_mode_link () *) lib_linked=no ;; esac - if test "$lib_linked" != yes; then + if test yes != "$lib_linked"; then func_fatal_configuration "unsupported hardcode properties" fi @@ -6875,15 +8318,15 @@ func_mode_link () *) func_append compile_shlibpath "$add_shlibpath:" ;; esac fi - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" test -n "$add" && compile_deplibs="$add $compile_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" - if test "$hardcode_direct" != yes && - test "$hardcode_minus_L" != yes && - test "$hardcode_shlibpath_var" = yes; then + if test yes != "$hardcode_direct" && + test yes != "$hardcode_minus_L" && + test yes = "$hardcode_shlibpath_var"; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; @@ -6892,33 +8335,33 @@ func_mode_link () fi fi - if test "$linkmode" = prog || test "$opt_mode" = relink; then + if test prog = "$linkmode" || test relink = "$opt_mode"; then add_shlibpath= add_dir= add= # Finalize command for both is simple: just hardcode it. - if test "$hardcode_direct" = yes && - test "$hardcode_direct_absolute" = no; then - add="$libdir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$libdir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$libdir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$libdir + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac - add="-l$name" - elif test "$hardcode_automatic" = yes; then + add=-l$name + elif test yes = "$hardcode_automatic"; then if test -n "$inst_prefix_dir" && - test -f "$inst_prefix_dir$libdir/$linklib" ; then - add="$inst_prefix_dir$libdir/$linklib" + test -f "$inst_prefix_dir$libdir/$linklib"; then + add=$inst_prefix_dir$libdir/$linklib else - add="$libdir/$linklib" + add=$libdir/$linklib fi else # We cannot seem to hardcode it, guess we'll fake it. - add_dir="-L$libdir" + add_dir=-L$libdir # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in @@ -6927,10 +8370,10 @@ func_mode_link () ;; esac fi - add="-l$name" + add=-l$name fi - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" test -n "$add" && finalize_deplibs="$add $finalize_deplibs" else @@ -6938,43 +8381,43 @@ func_mode_link () test -n "$add" && deplibs="$add $deplibs" fi fi - elif test "$linkmode" = prog; then + elif test prog = "$linkmode"; then # Here we assume that one of hardcode_direct or hardcode_minus_L # is not unsupported. This is valid on all known static and # shared platforms. - if test "$hardcode_direct" != unsupported; then - test -n "$old_library" && linklib="$old_library" + if test unsupported != "$hardcode_direct"; then + test -n "$old_library" && linklib=$old_library compile_deplibs="$dir/$linklib $compile_deplibs" finalize_deplibs="$dir/$linklib $finalize_deplibs" else compile_deplibs="-l$name -L$dir $compile_deplibs" finalize_deplibs="-l$name -L$dir $finalize_deplibs" fi - elif test "$build_libtool_libs" = yes; then + elif test yes = "$build_libtool_libs"; then # Not a shared library - if test "$deplibs_check_method" != pass_all; then + if test pass_all != "$deplibs_check_method"; then # We're trying link a shared library against a static one # but the system doesn't support it. # Just print a warning and add the library to dependency_libs so # that the program can be linked against the static library. echo - $ECHO "*** Warning: This system can not link to static lib archive $lib." + $ECHO "*** Warning: This system cannot link to static lib archive $lib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have." - if test "$module" = yes; then + if test yes = "$module"; then echo "*** But as you try to build a module library, libtool will still create " echo "*** a static module, that should work as long as the dlopening application" echo "*** is linked with the -dlopen flag to resolve symbols at runtime." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." + echo "*** 'nm' from GNU binutils and a full rebuild may help." fi - if test "$build_old_libs" = no; then + if test no = "$build_old_libs"; then build_libtool_libs=module build_old_libs=yes else @@ -6987,11 +8430,11 @@ func_mode_link () fi fi # link shared/static library? - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then if test -n "$dependency_libs" && - { test "$hardcode_into_libs" != yes || - test "$build_old_libs" = yes || - test "$link_static" = yes; }; then + { test yes != "$hardcode_into_libs" || + test yes = "$build_old_libs" || + test yes = "$link_static"; }; then # Extract -R from dependency_libs temp_deplibs= for libdir in $dependency_libs; do @@ -7005,12 +8448,12 @@ func_mode_link () *) func_append temp_deplibs " $libdir";; esac done - dependency_libs="$temp_deplibs" + dependency_libs=$temp_deplibs fi func_append newlib_search_path " $absdir" # Link against this library - test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" # ... and its dependency_libs tmp_libs= for deplib in $dependency_libs; do @@ -7020,7 +8463,7 @@ func_mode_link () func_resolve_sysroot "$func_stripname_result";; *) func_resolve_sysroot "$deplib" ;; esac - if $opt_preserve_dup_deps ; then + if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $func_resolve_sysroot_result "*) func_append specialdeplibs " $func_resolve_sysroot_result" ;; @@ -7029,12 +8472,12 @@ func_mode_link () func_append tmp_libs " $func_resolve_sysroot_result" done - if test "$link_all_deplibs" != no; then + if test no != "$link_all_deplibs"; then # Add the search paths of all dependency libraries for deplib in $dependency_libs; do path= case $deplib in - -L*) path="$deplib" ;; + -L*) path=$deplib ;; *.la) func_resolve_sysroot "$deplib" deplib=$func_resolve_sysroot_result @@ -7042,12 +8485,12 @@ func_mode_link () dir=$func_dirname_result # We need an absolute path. case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then - func_warning "cannot determine absolute directory name of \`$dir'" - absdir="$dir" + func_warning "cannot determine absolute directory name of '$dir'" + absdir=$dir fi ;; esac @@ -7055,35 +8498,35 @@ func_mode_link () case $host in *-*-darwin*) depdepl= - eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` - if test -n "$deplibrary_names" ; then - for tmp in $deplibrary_names ; do + eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names"; then + for tmp in $deplibrary_names; do depdepl=$tmp done - if test -f "$absdir/$objdir/$depdepl" ; then - depdepl="$absdir/$objdir/$depdepl" - darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -f "$absdir/$objdir/$depdepl"; then + depdepl=$absdir/$objdir/$depdepl + darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` if test -z "$darwin_install_name"; then - darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` fi - func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" - func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}" + func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" + func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" path= fi fi ;; *) - path="-L$absdir/$objdir" + path=-L$absdir/$objdir ;; esac else - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ - func_fatal_error "\`$deplib' is not a valid libtool archive" + func_fatal_error "'$deplib' is not a valid libtool archive" test "$absdir" != "$libdir" && \ - func_warning "\`$deplib' seems to be moved" + func_warning "'$deplib' seems to be moved" - path="-L$absdir" + path=-L$absdir fi ;; esac @@ -7095,23 +8538,23 @@ func_mode_link () fi # link_all_deplibs != no fi # linkmode = lib done # for deplib in $libs - if test "$pass" = link; then - if test "$linkmode" = "prog"; then + if test link = "$pass"; then + if test prog = "$linkmode"; then compile_deplibs="$new_inherited_linker_flags $compile_deplibs" finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" else compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` fi fi - dependency_libs="$newdependency_libs" - if test "$pass" = dlpreopen; then + dependency_libs=$newdependency_libs + if test dlpreopen = "$pass"; then # Link the dlpreopened libraries before other libraries for deplib in $save_deplibs; do deplibs="$deplib $deplibs" done fi - if test "$pass" != dlopen; then - if test "$pass" != conv; then + if test dlopen != "$pass"; then + test conv = "$pass" || { # Make sure lib_search_path contains only unique directories. lib_search_path= for dir in $newlib_search_path; do @@ -7121,12 +8564,12 @@ func_mode_link () esac done newlib_search_path= - fi + } - if test "$linkmode,$pass" != "prog,link"; then - vars="deplibs" - else + if test prog,link = "$linkmode,$pass"; then vars="compile_deplibs finalize_deplibs" + else + vars=deplibs fi for var in $vars dependency_libs; do # Add libraries to $var in reverse order @@ -7184,62 +8627,93 @@ func_mode_link () eval $var=\"$tmp_libs\" done # for var fi + + # Add Sun CC postdeps if required: + test CXX = "$tagname" && { + case $host_os in + linux*) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C++ 5.9 + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + + solaris*) + func_cc_basename "$CC" + case $func_cc_basename_result in + CC* | sunCC*) + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + esac + } + # Last step: remove runtime libs from dependency_libs # (they stay in deplibs) tmp_libs= - for i in $dependency_libs ; do + for i in $dependency_libs; do case " $predeps $postdeps $compiler_lib_search_path " in *" $i "*) - i="" + i= ;; esac - if test -n "$i" ; then + if test -n "$i"; then func_append tmp_libs " $i" fi done dependency_libs=$tmp_libs done # for pass - if test "$linkmode" = prog; then - dlfiles="$newdlfiles" + if test prog = "$linkmode"; then + dlfiles=$newdlfiles fi - if test "$linkmode" = prog || test "$linkmode" = lib; then - dlprefiles="$newdlprefiles" + if test prog = "$linkmode" || test lib = "$linkmode"; then + dlprefiles=$newdlprefiles fi case $linkmode in oldlib) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - func_warning "\`-dlopen' is ignored for archives" + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for archives" fi case " $deplibs" in *\ -l* | *\ -L*) - func_warning "\`-l' and \`-L' are ignored for archives" ;; + func_warning "'-l' and '-L' are ignored for archives" ;; esac test -n "$rpath" && \ - func_warning "\`-rpath' is ignored for archives" + func_warning "'-rpath' is ignored for archives" test -n "$xrpath" && \ - func_warning "\`-R' is ignored for archives" + func_warning "'-R' is ignored for archives" test -n "$vinfo" && \ - func_warning "\`-version-info/-version-number' is ignored for archives" + func_warning "'-version-info/-version-number' is ignored for archives" test -n "$release" && \ - func_warning "\`-release' is ignored for archives" + func_warning "'-release' is ignored for archives" test -n "$export_symbols$export_symbols_regex" && \ - func_warning "\`-export-symbols' is ignored for archives" + func_warning "'-export-symbols' is ignored for archives" # Now set the variables for building old libraries. build_libtool_libs=no - oldlibs="$output" + oldlibs=$output func_append objs "$old_deplibs" ;; lib) - # Make sure we only generate libraries of the form `libNAME.la'. + # Make sure we only generate libraries of the form 'libNAME.la'. case $outputname in lib*) func_stripname 'lib' '.la' "$outputname" @@ -7248,10 +8722,10 @@ func_mode_link () eval libname=\"$libname_spec\" ;; *) - test "$module" = no && \ - func_fatal_help "libtool library \`$output' must begin with \`lib'" + test no = "$module" \ + && func_fatal_help "libtool library '$output' must begin with 'lib'" - if test "$need_lib_prefix" != no; then + if test no != "$need_lib_prefix"; then # Add the "lib" prefix for modules if required func_stripname '' '.la' "$outputname" name=$func_stripname_result @@ -7265,8 +8739,8 @@ func_mode_link () esac if test -n "$objs"; then - if test "$deplibs_check_method" != pass_all; then - func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" + if test pass_all != "$deplibs_check_method"; then + func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" else echo $ECHO "*** Warning: Linking the shared library $output against the non-libtool" @@ -7275,21 +8749,21 @@ func_mode_link () fi fi - test "$dlself" != no && \ - func_warning "\`-dlopen self' is ignored for libtool libraries" + test no = "$dlself" \ + || func_warning "'-dlopen self' is ignored for libtool libraries" set dummy $rpath shift - test "$#" -gt 1 && \ - func_warning "ignoring multiple \`-rpath's for a libtool library" + test 1 -lt "$#" \ + && func_warning "ignoring multiple '-rpath's for a libtool library" - install_libdir="$1" + install_libdir=$1 oldlibs= if test -z "$rpath"; then - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then # Building a libtool convenience library. - # Some compilers have problems with a `.al' extension so + # Some compilers have problems with a '.al' extension so # convenience libraries should have the same extension an # archive normally would. oldlibs="$output_objdir/$libname.$libext $oldlibs" @@ -7298,20 +8772,20 @@ func_mode_link () fi test -n "$vinfo" && \ - func_warning "\`-version-info/-version-number' is ignored for convenience libraries" + func_warning "'-version-info/-version-number' is ignored for convenience libraries" test -n "$release" && \ - func_warning "\`-release' is ignored for convenience libraries" + func_warning "'-release' is ignored for convenience libraries" else # Parse the version information argument. - save_ifs="$IFS"; IFS=':' + save_ifs=$IFS; IFS=: set dummy $vinfo 0 0 0 shift - IFS="$save_ifs" + IFS=$save_ifs test -n "$7" && \ - func_fatal_help "too many parameters to \`-version-info'" + func_fatal_help "too many parameters to '-version-info'" # convert absolute version numbers to libtool ages # this retains compatibility with .la files and attempts @@ -7319,42 +8793,42 @@ func_mode_link () case $vinfo_number in yes) - number_major="$1" - number_minor="$2" - number_revision="$3" + number_major=$1 + number_minor=$2 + number_revision=$3 # # There are really only two kinds -- those that # use the current revision as the major version # and those that subtract age and use age as # a minor version. But, then there is irix - # which has an extra 1 added just for fun + # that has an extra 1 added just for fun # case $version_type in # correct linux to gnu/linux during the next big refactor - darwin|linux|osf|windows|none) + darwin|freebsd-elf|linux|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result - age="$number_minor" - revision="$number_revision" + age=$number_minor + revision=$number_revision ;; - freebsd-aout|freebsd-elf|qnx|sunos) - current="$number_major" - revision="$number_minor" - age="0" + freebsd-aout|qnx|sunos) + current=$number_major + revision=$number_minor + age=0 ;; irix|nonstopux) func_arith $number_major + $number_minor current=$func_arith_result - age="$number_minor" - revision="$number_minor" + age=$number_minor + revision=$number_minor lt_irix_increment=no ;; esac ;; no) - current="$1" - revision="$2" - age="$3" + current=$1 + revision=$2 + age=$3 ;; esac @@ -7362,30 +8836,30 @@ func_mode_link () case $current in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) - func_error "CURRENT \`$current' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "CURRENT '$current' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" ;; esac case $revision in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) - func_error "REVISION \`$revision' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "REVISION '$revision' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" ;; esac case $age in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) - func_error "AGE \`$age' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "AGE '$age' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" ;; esac if test "$age" -gt "$current"; then - func_error "AGE \`$age' is greater than the current interface number \`$current'" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "AGE '$age' is greater than the current interface number '$current'" + func_fatal_error "'$vinfo' is not valid version information" fi # Calculate the version variables. @@ -7400,26 +8874,36 @@ func_mode_link () # verstring for coding it into the library header func_arith $current - $age major=.$func_arith_result - versuffix="$major.$age.$revision" + versuffix=$major.$age.$revision # Darwin ld doesn't like 0 for these options... func_arith $current + 1 minor_current=$func_arith_result - xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" + xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + # On Darwin other compilers + case $CC in + nagfor*) + verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + ;; + *) + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + esac ;; freebsd-aout) - major=".$current" - versuffix=".$current.$revision"; + major=.$current + versuffix=.$current.$revision ;; freebsd-elf) - major=".$current" - versuffix=".$current" + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision ;; irix | nonstopux) - if test "X$lt_irix_increment" = "Xno"; then + if test no = "$lt_irix_increment"; then func_arith $current - $age else func_arith $current - $age + 1 @@ -7430,69 +8914,74 @@ func_mode_link () nonstopux) verstring_prefix=nonstopux ;; *) verstring_prefix=sgi ;; esac - verstring="$verstring_prefix$major.$revision" + verstring=$verstring_prefix$major.$revision # Add in all the interfaces that we are compatible with. loop=$revision - while test "$loop" -ne 0; do + while test 0 -ne "$loop"; do func_arith $revision - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result - verstring="$verstring_prefix$major.$iface:$verstring" + verstring=$verstring_prefix$major.$iface:$verstring done - # Before this point, $major must not contain `.'. + # Before this point, $major must not contain '.'. major=.$major - versuffix="$major.$revision" + versuffix=$major.$revision ;; linux) # correct to gnu/linux during the next big refactor func_arith $current - $age major=.$func_arith_result - versuffix="$major.$age.$revision" + versuffix=$major.$age.$revision ;; osf) func_arith $current - $age major=.$func_arith_result - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" + versuffix=.$current.$age.$revision + verstring=$current.$age.$revision # Add in all the interfaces that we are compatible with. loop=$age - while test "$loop" -ne 0; do + while test 0 -ne "$loop"; do func_arith $current - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result - verstring="$verstring:${iface}.0" + verstring=$verstring:$iface.0 done # Make executables depend on our current version. - func_append verstring ":${current}.0" + func_append verstring ":$current.0" ;; qnx) - major=".$current" - versuffix=".$current" + major=.$current + versuffix=.$current + ;; + + sco) + major=.$current + versuffix=.$current ;; sunos) - major=".$current" - versuffix=".$current.$revision" + major=.$current + versuffix=.$current.$revision ;; windows) # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 filesystems. + # extension on DOS 8.3 file systems. func_arith $current - $age major=$func_arith_result - versuffix="-$major" + versuffix=-$major ;; *) - func_fatal_configuration "unknown library version type \`$version_type'" + func_fatal_configuration "unknown library version type '$version_type'" ;; esac @@ -7506,42 +8995,45 @@ func_mode_link () verstring= ;; *) - verstring="0.0" + verstring=0.0 ;; esac - if test "$need_version" = no; then + if test no = "$need_version"; then versuffix= else - versuffix=".0.0" + versuffix=.0.0 fi fi # Remove version info from name if versioning should be avoided - if test "$avoid_version" = yes && test "$need_version" = no; then + if test yes,no = "$avoid_version,$need_version"; then major= versuffix= - verstring="" + verstring= fi # Check to see if the archive will have undefined symbols. - if test "$allow_undefined" = yes; then - if test "$allow_undefined_flag" = unsupported; then - func_warning "undefined symbols not allowed in $host shared libraries" - build_libtool_libs=no - build_old_libs=yes + if test yes = "$allow_undefined"; then + if test unsupported = "$allow_undefined_flag"; then + if test yes = "$build_old_libs"; then + func_warning "undefined symbols not allowed in $host shared libraries; building static only" + build_libtool_libs=no + else + func_fatal_error "can't build $host shared library unless -no-undefined is specified" + fi fi else # Don't allow undefined symbols. - allow_undefined_flag="$no_undefined_flag" + allow_undefined_flag=$no_undefined_flag fi fi - func_generate_dlsyms "$libname" "$libname" "yes" + func_generate_dlsyms "$libname" "$libname" : func_append libobjs " $symfileobj" - test "X$libobjs" = "X " && libobjs= + test " " = "$libobjs" && libobjs= - if test "$opt_mode" != relink; then + if test relink != "$opt_mode"; then # Remove our outputs, but don't remove object files since they # may have been created when compiling PIC objects. removelist= @@ -7550,8 +9042,8 @@ func_mode_link () case $p in *.$objext | *.gcno) ;; - $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) - if test "X$precious_files_regex" != "X"; then + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) + if test -n "$precious_files_regex"; then if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 then continue @@ -7567,11 +9059,11 @@ func_mode_link () fi # Now set the variables for building old libraries. - if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then func_append oldlibs " $output_objdir/$libname.$libext" # Transform .lo files to .o files. - oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP` + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` fi # Eliminate all temporary directories. @@ -7592,13 +9084,13 @@ func_mode_link () *) func_append finalize_rpath " $libdir" ;; esac done - if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then + if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then dependency_libs="$temp_xrpath $dependency_libs" fi fi # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles="$dlfiles" + old_dlfiles=$dlfiles dlfiles= for lib in $old_dlfiles; do case " $dlprefiles $dlfiles " in @@ -7608,7 +9100,7 @@ func_mode_link () done # Make sure dlprefiles contains only unique files - old_dlprefiles="$dlprefiles" + old_dlprefiles=$dlprefiles dlprefiles= for lib in $old_dlprefiles; do case "$dlprefiles " in @@ -7617,7 +9109,7 @@ func_mode_link () esac done - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then if test -n "$rpath"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) @@ -7641,7 +9133,7 @@ func_mode_link () ;; *) # Add libc to deplibs on all other systems if necessary. - if test "$build_libtool_need_lc" = "yes"; then + if test yes = "$build_libtool_need_lc"; then func_append deplibs " -lc" fi ;; @@ -7657,9 +9149,9 @@ func_mode_link () # I'm not sure if I'm treating the release correctly. I think # release should show up in the -l (ie -lgmp5) so we don't want to # add it in twice. Is that correct? - release="" - versuffix="" - major="" + release= + versuffix= + major= newdeplibs= droppeddeps=no case $deplibs_check_method in @@ -7688,20 +9180,20 @@ EOF -l*) func_stripname -l '' "$i" name=$func_stripname_result - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $i "*) func_append newdeplibs " $i" - i="" + i= ;; esac fi - if test -n "$i" ; then + if test -n "$i"; then libname=`eval "\\$ECHO \"$libname_spec\""` deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` set dummy $deplib_matches; shift deplib_match=$1 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then func_append newdeplibs " $i" else droppeddeps=yes @@ -7731,20 +9223,20 @@ EOF $opt_dry_run || $RM conftest if $LTCC $LTCFLAGS -o conftest conftest.c $i; then ldd_output=`ldd conftest` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $i "*) func_append newdeplibs " $i" - i="" + i= ;; esac fi - if test -n "$i" ; then + if test -n "$i"; then libname=`eval "\\$ECHO \"$libname_spec\""` deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` set dummy $deplib_matches; shift deplib_match=$1 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then func_append newdeplibs " $i" else droppeddeps=yes @@ -7781,24 +9273,24 @@ EOF -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $a_deplib "*) func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= ;; esac fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then libname=`eval "\\$ECHO \"$libname_spec\""` if test -n "$file_magic_glob"; then libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob` else libnameglob=$libname fi - test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob` + test yes = "$want_nocaseglob" && nocaseglob=`shopt -p nocaseglob` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - if test "$want_nocaseglob" = yes; then + if test yes = "$want_nocaseglob"; then shopt -s nocaseglob potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` $nocaseglob @@ -7816,25 +9308,25 @@ EOF # We might still enter an endless loop, since a link # loop can be closed while we follow links, # but so what? - potlib="$potent_lib" + potlib=$potent_lib while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` + potliblink=`ls -ld $potlib | $SED 's/.* -> //'` case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";; + [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; + *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; esac done if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | $SED -e 10q | $EGREP "$file_magic_regex" > /dev/null; then func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= break 2 fi done done fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." @@ -7842,7 +9334,7 @@ EOF echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then + if test -z "$potlib"; then $ECHO "*** with $libname but no candidates were found. (...for file magic test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" @@ -7865,30 +9357,30 @@ EOF -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $a_deplib "*) func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= ;; esac fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then libname=`eval "\\$ECHO \"$libname_spec\""` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do - potlib="$potent_lib" # see symlink-check above in file_magic test + potlib=$potent_lib # see symlink-check above in file_magic test if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ $EGREP "$match_pattern_regex" > /dev/null; then func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= break 2 fi done done fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." @@ -7896,7 +9388,7 @@ EOF echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then + if test -z "$potlib"; then $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" @@ -7912,18 +9404,18 @@ EOF done # Gone through all deplibs. ;; none | unknown | *) - newdeplibs="" + newdeplibs= tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - for i in $predeps $postdeps ; do + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + for i in $predeps $postdeps; do # can't use Xsed below, because $i might contain '/' - tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"` + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` done fi case $tmp_deplibs in *[!\ \ ]*) echo - if test "X$deplibs_check_method" = "Xnone"; then + if test none = "$deplibs_check_method"; then echo "*** Warning: inter-library dependencies are not supported in this platform." else echo "*** Warning: inter-library dependencies are not known to be supported." @@ -7947,8 +9439,8 @@ EOF ;; esac - if test "$droppeddeps" = yes; then - if test "$module" = yes; then + if test yes = "$droppeddeps"; then + if test yes = "$module"; then echo echo "*** Warning: libtool could not satisfy all declared inter-library" $ECHO "*** dependencies of module $libname. Therefore, libtool will create" @@ -7957,12 +9449,12 @@ EOF if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." + echo "*** 'nm' from GNU binutils and a full rebuild may help." fi - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext build_libtool_libs=module build_old_libs=yes else @@ -7973,14 +9465,14 @@ EOF echo "*** automatically added whenever a program is linked with this library" echo "*** or is declared to -dlopen it." - if test "$allow_undefined" = no; then + if test no = "$allow_undefined"; then echo echo "*** Since this library must not contain undefined symbols," echo "*** because either the platform does not support them or" echo "*** it was explicitly requested with -no-undefined," echo "*** libtool will only create a static version of it." - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext build_libtool_libs=module build_old_libs=yes else @@ -8026,7 +9518,7 @@ EOF *) func_append new_libs " $deplib" ;; esac done - deplibs="$new_libs" + deplibs=$new_libs # All the library-specific variables (install_libdir is set above). library_names= @@ -8034,25 +9526,25 @@ EOF dlname= # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then - # Remove ${wl} instances when linking with ld. + if test yes = "$build_libtool_libs"; then + # Remove $wl instances when linking with ld. # FIXME: should test the right _cmds variable. case $archive_cmds in *\$LD\ *) wl= ;; esac - if test "$hardcode_into_libs" = yes; then + if test yes = "$hardcode_into_libs"; then # Hardcode the library paths hardcode_libdirs= dep_rpath= - rpath="$finalize_rpath" - test "$opt_mode" != relink && rpath="$compile_rpath$rpath" + rpath=$finalize_rpath + test relink = "$opt_mode" || rpath=$compile_rpath$rpath for libdir in $rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then func_replace_sysroot "$libdir" libdir=$func_replace_sysroot_result if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" + hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in @@ -8077,7 +9569,7 @@ EOF # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" + libdir=$hardcode_libdirs eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" fi if test -n "$runpath_var" && test -n "$perm_rpath"; then @@ -8091,8 +9583,8 @@ EOF test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" fi - shlibpath="$finalize_shlibpath" - test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + shlibpath=$finalize_shlibpath + test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath if test -n "$shlibpath"; then eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" fi @@ -8102,19 +9594,19 @@ EOF eval library_names=\"$library_names_spec\" set dummy $library_names shift - realname="$1" + realname=$1 shift if test -n "$soname_spec"; then eval soname=\"$soname_spec\" else - soname="$realname" + soname=$realname fi if test -z "$dlname"; then dlname=$soname fi - lib="$output_objdir/$realname" + lib=$output_objdir/$realname linknames= for link do @@ -8128,7 +9620,7 @@ EOF delfiles= if test -n "$export_symbols" && test -n "$include_expsyms"; then $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" - export_symbols="$output_objdir/$libname.uexp" + export_symbols=$output_objdir/$libname.uexp func_append delfiles " $export_symbols" fi @@ -8137,31 +9629,31 @@ EOF cygwin* | mingw* | cegcc*) if test -n "$export_symbols" && test -z "$export_symbols_regex"; then # exporting using user supplied symfile - if test "x`$SED 1q $export_symbols`" != xEXPORTS; then + func_dll_def_p "$export_symbols" || { # and it's NOT already a .def file. Must figure out # which of the given symbols are data symbols and tag # them as such. So, trigger use of export_symbols_cmds. # export_symbols gets reassigned inside the "prepare # the list of exported symbols" if statement, so the # include_expsyms logic still works. - orig_export_symbols="$export_symbols" + orig_export_symbols=$export_symbols export_symbols= always_export_symbols=yes - fi + } fi ;; esac # Prepare the list of exported symbols if test -z "$export_symbols"; then - if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then - func_verbose "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" + if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp $opt_dry_run || $RM $export_symbols cmds=$export_symbols_cmds - save_ifs="$IFS"; IFS='~' + save_ifs=$IFS; IFS='~' for cmd1 in $cmds; do - IFS="$save_ifs" + IFS=$save_ifs # Take the normal branch if the nm_file_list_spec branch # doesn't work or if tool conversion is not needed. case $nm_file_list_spec~$to_tool_file_cmd in @@ -8175,7 +9667,7 @@ EOF try_normal_branch=no ;; esac - if test "$try_normal_branch" = yes \ + if test yes = "$try_normal_branch" \ && { test "$len" -lt "$max_cmd_len" \ || test "$max_cmd_len" -le -1; } then @@ -8186,7 +9678,7 @@ EOF output_la=$func_basename_result save_libobjs=$libobjs save_output=$output - output=${output_objdir}/${output_la}.nm + output=$output_objdir/$output_la.nm func_to_tool_file "$output" libobjs=$nm_file_list_spec$func_to_tool_file_result func_append delfiles " $output" @@ -8209,8 +9701,8 @@ EOF break fi done - IFS="$save_ifs" - if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then + IFS=$save_ifs + if test -n "$export_symbols_regex" && test : != "$skipped_export"; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi @@ -8218,16 +9710,16 @@ EOF fi if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols="$export_symbols" - test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi - if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then + if test : != "$skipped_export" && test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands which not all seds can handle. GNU sed should be fine + # 's' commands, which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. @@ -8246,11 +9738,11 @@ EOF ;; esac done - deplibs="$tmp_deplibs" + deplibs=$tmp_deplibs if test -n "$convenience"; then if test -n "$whole_archive_flag_spec" && - test "$compiler_needs_object" = yes && + test yes = "$compiler_needs_object" && test -z "$libobjs"; then # extract the archives, so we have objects to list. # TODO: could optimize this to just extract one archive. @@ -8261,7 +9753,7 @@ EOF eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= else - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $convenience @@ -8270,18 +9762,18 @@ EOF fi fi - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then eval flag=\"$thread_safe_flag_spec\" func_append linker_flags " $flag" fi # Make a backup of the uninstalled library when relinking - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? fi # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then + if test yes = "$module" && test -n "$module_cmds"; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then eval test_cmds=\"$module_expsym_cmds\" cmds=$module_expsym_cmds @@ -8299,7 +9791,7 @@ EOF fi fi - if test "X$skipped_export" != "X:" && + if test : != "$skipped_export" && func_len " $test_cmds" && len=$func_len_result && test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then @@ -8332,8 +9824,8 @@ EOF last_robj= k=1 - if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then - output=${output_objdir}/${output_la}.lnkscript + if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then + output=$output_objdir/$output_la.lnkscript func_verbose "creating GNU ld script: $output" echo 'INPUT (' > $output for obj in $save_libobjs @@ -8345,14 +9837,14 @@ EOF func_append delfiles " $output" func_to_tool_file "$output" output=$func_to_tool_file_result - elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then - output=${output_objdir}/${output_la}.lnk + elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then + output=$output_objdir/$output_la.lnk func_verbose "creating linker input file list: $output" : > $output set x $save_libobjs shift firstobj= - if test "$compiler_needs_object" = yes; then + if test yes = "$compiler_needs_object"; then firstobj="$1 " shift fi @@ -8367,7 +9859,7 @@ EOF else if test -n "$save_libobjs"; then func_verbose "creating reloadable object files..." - output=$output_objdir/$output_la-${k}.$objext + output=$output_objdir/$output_la-$k.$objext eval test_cmds=\"$reload_cmds\" func_len " $test_cmds" len0=$func_len_result @@ -8379,13 +9871,13 @@ EOF func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result - if test "X$objlist" = X || + if test -z "$objlist" || test "$len" -lt "$max_cmd_len"; then func_append objlist " $obj" else # The command $test_cmds is almost too long, add a # command to the queue. - if test "$k" -eq 1 ; then + if test 1 -eq "$k"; then # The first file doesn't have a previous command to add. reload_objs=$objlist eval concat_cmds=\"$reload_cmds\" @@ -8395,10 +9887,10 @@ EOF reload_objs="$objlist $last_robj" eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" fi - last_robj=$output_objdir/$output_la-${k}.$objext + last_robj=$output_objdir/$output_la-$k.$objext func_arith $k + 1 k=$func_arith_result - output=$output_objdir/$output_la-${k}.$objext + output=$output_objdir/$output_la-$k.$objext objlist=" $obj" func_len " $last_robj" func_arith $len0 + $func_len_result @@ -8410,9 +9902,9 @@ EOF # files will link in the last one created. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ reload_objs="$objlist $last_robj" - eval concat_cmds=\"\${concat_cmds}$reload_cmds\" + eval concat_cmds=\"\$concat_cmds$reload_cmds\" if test -n "$last_robj"; then - eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi func_append delfiles " $output" @@ -8420,9 +9912,9 @@ EOF output= fi - if ${skipped_export-false}; then - func_verbose "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" + ${skipped_export-false} && { + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp $opt_dry_run || $RM $export_symbols libobjs=$output # Append the command to create the export file. @@ -8431,16 +9923,16 @@ EOF if test -n "$last_robj"; then eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi - fi + } test -n "$save_libobjs" && func_verbose "creating a temporary reloadable object file: $output" # Loop through the commands generated above and execute them. - save_ifs="$IFS"; IFS='~' + save_ifs=$IFS; IFS='~' for cmd in $concat_cmds; do - IFS="$save_ifs" - $opt_silent || { + IFS=$save_ifs + $opt_quiet || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } @@ -8448,7 +9940,7 @@ EOF lt_exit=$? # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) @@ -8457,7 +9949,7 @@ EOF exit $lt_exit } done - IFS="$save_ifs" + IFS=$save_ifs if test -n "$export_symbols_regex" && ${skipped_export-false}; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' @@ -8465,18 +9957,18 @@ EOF fi fi - if ${skipped_export-false}; then + ${skipped_export-false} && { if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols="$export_symbols" - test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands which not all seds can handle. GNU sed should be fine + # 's' commands, which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. @@ -8485,7 +9977,7 @@ EOF export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi - fi + } libobjs=$output # Restore the value of output. @@ -8499,7 +9991,7 @@ EOF # value of $libobjs for piecewise linking. # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then + if test yes = "$module" && test -n "$module_cmds"; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then cmds=$module_expsym_cmds else @@ -8521,7 +10013,7 @@ EOF # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $dlprefiles @@ -8529,11 +10021,12 @@ EOF test "X$libobjs" = "X " && libobjs= fi - save_ifs="$IFS"; IFS='~' + save_ifs=$IFS; IFS='~' for cmd in $cmds; do - IFS="$save_ifs" + IFS=$sp$nl eval cmd=\"$cmd\" - $opt_silent || { + IFS=$save_ifs + $opt_quiet || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } @@ -8541,7 +10034,7 @@ EOF lt_exit=$? # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) @@ -8550,10 +10043,10 @@ EOF exit $lt_exit } done - IFS="$save_ifs" + IFS=$save_ifs # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? if test -n "$convenience"; then @@ -8573,39 +10066,39 @@ EOF done # If -module or -export-dynamic was specified, set the dlname. - if test "$module" = yes || test "$export_dynamic" = yes; then + if test yes = "$module" || test yes = "$export_dynamic"; then # On all known operating systems, these are identical. - dlname="$soname" + dlname=$soname fi fi ;; obj) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - func_warning "\`-dlopen' is ignored for objects" + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for objects" fi case " $deplibs" in *\ -l* | *\ -L*) - func_warning "\`-l' and \`-L' are ignored for objects" ;; + func_warning "'-l' and '-L' are ignored for objects" ;; esac test -n "$rpath" && \ - func_warning "\`-rpath' is ignored for objects" + func_warning "'-rpath' is ignored for objects" test -n "$xrpath" && \ - func_warning "\`-R' is ignored for objects" + func_warning "'-R' is ignored for objects" test -n "$vinfo" && \ - func_warning "\`-version-info' is ignored for objects" + func_warning "'-version-info' is ignored for objects" test -n "$release" && \ - func_warning "\`-release' is ignored for objects" + func_warning "'-release' is ignored for objects" case $output in *.lo) test -n "$objs$old_deplibs" && \ - func_fatal_error "cannot build library object \`$output' from non-libtool objects" + func_fatal_error "cannot build library object '$output' from non-libtool objects" libobj=$output func_lo2o "$libobj" @@ -8613,7 +10106,7 @@ EOF ;; *) libobj= - obj="$output" + obj=$output ;; esac @@ -8626,17 +10119,19 @@ EOF # the extraction. reload_conv_objs= gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec and hope we can get by with - # turning comma into space.. - wl= - + # if reload_cmds runs $LD directly, get rid of -Wl from + # whole_archive_flag_spec and hope we can get by with turning comma + # into space. + case $reload_cmds in + *\$LD[\ \$]*) wl= ;; + esac if test -n "$convenience"; then if test -n "$whole_archive_flag_spec"; then eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" - reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags else - gentop="$output_objdir/${obj}x" + gentop=$output_objdir/${obj}x func_append generated " $gentop" func_extract_archives $gentop $convenience @@ -8645,12 +10140,12 @@ EOF fi # If we're not building shared, we need to use non_pic_objs - test "$build_libtool_libs" != yes && libobjs="$non_pic_objects" + test yes = "$build_libtool_libs" || libobjs=$non_pic_objects # Create the old-style object. - reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs - output="$obj" + output=$obj func_execute_cmds "$reload_cmds" 'exit $?' # Exit if we aren't doing a library object file. @@ -8662,7 +10157,7 @@ EOF exit $EXIT_SUCCESS fi - if test "$build_libtool_libs" != yes; then + test yes = "$build_libtool_libs" || { if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi @@ -8672,12 +10167,12 @@ EOF # $show "echo timestamp > $libobj" # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? exit $EXIT_SUCCESS - fi + } - if test -n "$pic_flag" || test "$pic_mode" != default; then + if test -n "$pic_flag" || test default != "$pic_mode"; then # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" - output="$libobj" + output=$libobj func_execute_cmds "$reload_cmds" 'exit $?' fi @@ -8694,16 +10189,14 @@ EOF output=$func_stripname_result.exe;; esac test -n "$vinfo" && \ - func_warning "\`-version-info' is ignored for programs" + func_warning "'-version-info' is ignored for programs" test -n "$release" && \ - func_warning "\`-release' is ignored for programs" + func_warning "'-release' is ignored for programs" - test "$preload" = yes \ - && test "$dlopen_support" = unknown \ - && test "$dlopen_self" = unknown \ - && test "$dlopen_self_static" = unknown && \ - func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." + $preload \ + && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ + && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." case $host in *-*-rhapsody* | *-*-darwin1.[012]) @@ -8717,11 +10210,11 @@ EOF *-*-darwin*) # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). - if test "$tagname" = CXX ; then + if test CXX = "$tagname"; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) - func_append compile_command " ${wl}-bind_at_load" - func_append finalize_command " ${wl}-bind_at_load" + func_append compile_command " $wl-bind_at_load" + func_append finalize_command " $wl-bind_at_load" ;; esac fi @@ -8757,7 +10250,7 @@ EOF *) func_append new_libs " $deplib" ;; esac done - compile_deplibs="$new_libs" + compile_deplibs=$new_libs func_append compile_command " $compile_deplibs" @@ -8781,7 +10274,7 @@ EOF if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" + hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in @@ -8804,7 +10297,7 @@ EOF fi case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` + testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$libdir:"*) ;; ::) dllsearchpath=$libdir;; @@ -8821,10 +10314,10 @@ EOF # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" + libdir=$hardcode_libdirs eval rpath=\" $hardcode_libdir_flag_spec\" fi - compile_rpath="$rpath" + compile_rpath=$rpath rpath= hardcode_libdirs= @@ -8832,7 +10325,7 @@ EOF if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" + hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in @@ -8857,45 +10350,43 @@ EOF # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" + libdir=$hardcode_libdirs eval rpath=\" $hardcode_libdir_flag_spec\" fi - finalize_rpath="$rpath" + finalize_rpath=$rpath - if test -n "$libobjs" && test "$build_old_libs" = yes; then + if test -n "$libobjs" && test yes = "$build_old_libs"; then # Transform all the library objects into standard objects. compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` fi - func_generate_dlsyms "$outputname" "@PROGRAM@" "no" + func_generate_dlsyms "$outputname" "@PROGRAM@" false # template prelinking step if test -n "$prelink_cmds"; then func_execute_cmds "$prelink_cmds" 'exit $?' fi - wrappers_required=yes + wrappers_required=: case $host in *cegcc* | *mingw32ce*) # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. - wrappers_required=no + wrappers_required=false ;; *cygwin* | *mingw* ) - if test "$build_libtool_libs" != yes; then - wrappers_required=no - fi + test yes = "$build_libtool_libs" || wrappers_required=false ;; *) - if test "$need_relink" = no || test "$build_libtool_libs" != yes; then - wrappers_required=no + if test no = "$need_relink" || test yes != "$build_libtool_libs"; then + wrappers_required=false fi ;; esac - if test "$wrappers_required" = no; then + $wrappers_required || { # Replace the output file specification. compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" + link_command=$compile_command$compile_rpath # We have no uninstalled library dependencies, so finalize right now. exit_status=0 @@ -8908,12 +10399,12 @@ EOF fi # Delete the generated files. - if test -f "$output_objdir/${outputname}S.${objext}"; then - func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' + if test -f "$output_objdir/${outputname}S.$objext"; then + func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' fi exit $exit_status - fi + } if test -n "$compile_shlibpath$finalize_shlibpath"; then compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" @@ -8943,9 +10434,9 @@ EOF fi fi - if test "$no_install" = yes; then + if test yes = "$no_install"; then # We don't need to create a wrapper script. - link_command="$compile_var$compile_command$compile_rpath" + link_command=$compile_var$compile_command$compile_rpath # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` # Delete the old output file. @@ -8962,27 +10453,28 @@ EOF exit $EXIT_SUCCESS fi - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" + case $hardcode_action,$fast_install in + relink,*) + # Fast installation is not supported + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath - func_warning "this platform does not like uninstalled shared libraries" - func_warning "\`$output' will be relinked during installation" - else - if test "$fast_install" != no; then - link_command="$finalize_var$compile_command$finalize_rpath" - if test "$fast_install" = yes; then - relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` - else - # fast_install is set to needless - relink_command= - fi - else - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - fi - fi + func_warning "this platform does not like uninstalled shared libraries" + func_warning "'$output' will be relinked during installation" + ;; + *,yes) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + ;; + *,no) + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + ;; + *,needless) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command= + ;; + esac # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` @@ -9039,8 +10531,8 @@ EOF func_dirname_and_basename "$output" "" "." output_name=$func_basename_result output_path=$func_dirname_result - cwrappersource="$output_path/$objdir/lt-$output_name.c" - cwrapper="$output_path/$output_name.exe" + cwrappersource=$output_path/$objdir/lt-$output_name.c + cwrapper=$output_path/$output_name.exe $RM $cwrappersource $cwrapper trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 @@ -9061,7 +10553,7 @@ EOF trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 $opt_dry_run || { # note: this script will not be executed, so do not chmod. - if test "x$build" = "x$host" ; then + if test "x$build" = "x$host"; then $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result else func_emit_wrapper no > $func_ltwrapper_scriptname_result @@ -9084,25 +10576,27 @@ EOF # See if we need to build an old-fashioned archive. for oldlib in $oldlibs; do - if test "$build_libtool_libs" = convenience; then - oldobjs="$libobjs_save $symfileobj" - addlibs="$convenience" - build_libtool_libs=no - else - if test "$build_libtool_libs" = module; then - oldobjs="$libobjs_save" + case $build_libtool_libs in + convenience) + oldobjs="$libobjs_save $symfileobj" + addlibs=$convenience build_libtool_libs=no - else + ;; + module) + oldobjs=$libobjs_save + addlibs=$old_convenience + build_libtool_libs=no + ;; + *) oldobjs="$old_deplibs $non_pic_objects" - if test "$preload" = yes && test -f "$symfileobj"; then - func_append oldobjs " $symfileobj" - fi - fi - addlibs="$old_convenience" - fi + $preload && test -f "$symfileobj" \ + && func_append oldobjs " $symfileobj" + addlibs=$old_convenience + ;; + esac if test -n "$addlibs"; then - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $addlibs @@ -9110,13 +10604,13 @@ EOF fi # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then cmds=$old_archive_from_new_cmds else # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $dlprefiles @@ -9137,7 +10631,7 @@ EOF : else echo "copying selected object files to avoid basename conflicts..." - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_mkdir_p "$gentop" save_oldobjs=$oldobjs @@ -9146,7 +10640,7 @@ EOF for obj in $save_oldobjs do func_basename "$obj" - objbase="$func_basename_result" + objbase=$func_basename_result case " $oldobjs " in " ") oldobjs=$obj ;; *[\ /]"$objbase "*) @@ -9215,18 +10709,18 @@ EOF else # the above command should be used before it gets too long oldobjs=$objlist - if test "$obj" = "$last_oldobj" ; then + if test "$obj" = "$last_oldobj"; then RANLIB=$save_RANLIB fi test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" objlist= len=$len0 fi done RANLIB=$save_RANLIB oldobjs=$objlist - if test "X$oldobjs" = "X" ; then + if test -z "$oldobjs"; then eval cmds=\"\$concat_cmds\" else eval cmds=\"\$concat_cmds~\$old_archive_cmds\" @@ -9243,7 +10737,7 @@ EOF case $output in *.la) old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" + test yes = "$build_old_libs" && old_library=$libname.$libext func_verbose "creating $output" # Preserve any variables that may affect compiler behavior @@ -9258,31 +10752,31 @@ EOF fi done # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` - if test "$hardcode_automatic" = yes ; then + if test yes = "$hardcode_automatic"; then relink_command= fi # Only create the output if not a dry run. $opt_dry_run || { for installed in no yes; do - if test "$installed" = yes; then + if test yes = "$installed"; then if test -z "$install_libdir"; then break fi - output="$output_objdir/$outputname"i + output=$output_objdir/${outputname}i # Replace all uninstalled libtool libraries with the installed ones newdependency_libs= for deplib in $dependency_libs; do case $deplib in *.la) func_basename "$deplib" - name="$func_basename_result" + name=$func_basename_result func_resolve_sysroot "$deplib" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` test -z "$libdir" && \ - func_fatal_error "\`$deplib' is not a valid libtool archive" + func_fatal_error "'$deplib' is not a valid libtool archive" func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" ;; -L*) @@ -9298,23 +10792,23 @@ EOF *) func_append newdependency_libs " $deplib" ;; esac done - dependency_libs="$newdependency_libs" + dependency_libs=$newdependency_libs newdlfiles= for lib in $dlfiles; do case $lib in *.la) func_basename "$lib" - name="$func_basename_result" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ - func_fatal_error "\`$lib' is not a valid libtool archive" + func_fatal_error "'$lib' is not a valid libtool archive" func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" ;; *) func_append newdlfiles " $lib" ;; esac done - dlfiles="$newdlfiles" + dlfiles=$newdlfiles newdlprefiles= for lib in $dlprefiles; do case $lib in @@ -9324,34 +10818,34 @@ EOF # didn't already link the preopened objects directly into # the library: func_basename "$lib" - name="$func_basename_result" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ - func_fatal_error "\`$lib' is not a valid libtool archive" + func_fatal_error "'$lib' is not a valid libtool archive" func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" ;; esac done - dlprefiles="$newdlprefiles" + dlprefiles=$newdlprefiles else newdlfiles= for lib in $dlfiles; do case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlfiles " $abs" done - dlfiles="$newdlfiles" + dlfiles=$newdlfiles newdlprefiles= for lib in $dlprefiles; do case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlprefiles " $abs" done - dlprefiles="$newdlprefiles" + dlprefiles=$newdlprefiles fi $RM $output # place dlname in correct position for cygwin @@ -9367,10 +10861,9 @@ EOF case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) # If a -bindir argument was supplied, place the dll there. - if test "x$bindir" != x ; - then + if test -n "$bindir"; then func_relative_path "$install_libdir" "$bindir" - tdlname=$func_relative_path_result$dlname + tdlname=$func_relative_path_result/$dlname else # Otherwise fall back on heuristic. tdlname=../bin/$dlname @@ -9379,7 +10872,7 @@ EOF esac $ECHO > $output "\ # $outputname - a libtool library file -# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # Please DO NOT delete this file! # It is necessary for linking the library. @@ -9393,7 +10886,7 @@ library_names='$library_names' # The name of the static archive. old_library='$old_library' -# Linker flags that can not go in dependency_libs. +# Linker flags that cannot go in dependency_libs. inherited_linker_flags='$new_inherited_linker_flags' # Libraries that this one depends upon. @@ -9419,7 +10912,7 @@ dlpreopen='$dlprefiles' # Directory that this library needs to be installed in: libdir='$install_libdir'" - if test "$installed" = no && test "$need_relink" = yes; then + if test no,yes = "$installed,$need_relink"; then $ECHO >> $output "\ relink_command=\"$relink_command\"" fi @@ -9434,27 +10927,29 @@ relink_command=\"$relink_command\"" exit $EXIT_SUCCESS } -{ test "$opt_mode" = link || test "$opt_mode" = relink; } && - func_mode_link ${1+"$@"} +if test link = "$opt_mode" || test relink = "$opt_mode"; then + func_mode_link ${1+"$@"} +fi # func_mode_uninstall arg... func_mode_uninstall () { - $opt_debug - RM="$nonopt" + $debug_cmd + + RM=$nonopt files= - rmforce= + rmforce=false exit_status=0 # This variable tells wrapper scripts just to set variables rather # than running their programs. - libtool_install_magic="$magic" + libtool_install_magic=$magic for arg do case $arg in - -f) func_append RM " $arg"; rmforce=yes ;; + -f) func_append RM " $arg"; rmforce=: ;; -*) func_append RM " $arg" ;; *) func_append files " $arg" ;; esac @@ -9467,18 +10962,18 @@ func_mode_uninstall () for file in $files; do func_dirname "$file" "" "." - dir="$func_dirname_result" - if test "X$dir" = X.; then - odir="$objdir" + dir=$func_dirname_result + if test . = "$dir"; then + odir=$objdir else - odir="$dir/$objdir" + odir=$dir/$objdir fi func_basename "$file" - name="$func_basename_result" - test "$opt_mode" = uninstall && odir="$dir" + name=$func_basename_result + test uninstall = "$opt_mode" && odir=$dir # Remember odir for removal later, being careful to avoid duplicates - if test "$opt_mode" = clean; then + if test clean = "$opt_mode"; then case " $rmdirs " in *" $odir "*) ;; *) func_append rmdirs " $odir" ;; @@ -9493,11 +10988,11 @@ func_mode_uninstall () elif test -d "$file"; then exit_status=1 continue - elif test "$rmforce" = yes; then + elif $rmforce; then continue fi - rmfiles="$file" + rmfiles=$file case $name in *.la) @@ -9511,7 +11006,7 @@ func_mode_uninstall () done test -n "$old_library" && func_append rmfiles " $odir/$old_library" - case "$opt_mode" in + case $opt_mode in clean) case " $library_names " in *" $dlname "*) ;; @@ -9522,12 +11017,12 @@ func_mode_uninstall () uninstall) if test -n "$library_names"; then # Do each command in the postuninstall commands. - func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' fi if test -n "$old_library"; then # Do each command in the old_postuninstall commands. - func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' fi # FIXME: should reinstall the best remaining shared library. ;; @@ -9543,21 +11038,19 @@ func_mode_uninstall () func_source $dir/$name # Add PIC object to the list of files to remove. - if test -n "$pic_object" && - test "$pic_object" != none; then + if test -n "$pic_object" && test none != "$pic_object"; then func_append rmfiles " $dir/$pic_object" fi # Add non-PIC object to the list of files to remove. - if test -n "$non_pic_object" && - test "$non_pic_object" != none; then + if test -n "$non_pic_object" && test none != "$non_pic_object"; then func_append rmfiles " $dir/$non_pic_object" fi fi ;; *) - if test "$opt_mode" = clean ; then + if test clean = "$opt_mode"; then noexename=$name case $file in *.exe) @@ -9584,12 +11077,12 @@ func_mode_uninstall () # note $name still contains .exe if it was in $file originally # as does the version of $file that was added into $rmfiles - func_append rmfiles " $odir/$name $odir/${name}S.${objext}" - if test "$fast_install" = yes && test -n "$relink_command"; then + func_append rmfiles " $odir/$name $odir/${name}S.$objext" + if test yes = "$fast_install" && test -n "$relink_command"; then func_append rmfiles " $odir/lt-$name" fi - if test "X$noexename" != "X$name" ; then - func_append rmfiles " $odir/lt-${noexename}.c" + if test "X$noexename" != "X$name"; then + func_append rmfiles " $odir/lt-$noexename.c" fi fi fi @@ -9598,7 +11091,7 @@ func_mode_uninstall () func_show_eval "$RM $rmfiles" 'exit_status=1' done - # Try to remove the ${objdir}s in the directories where we deleted files + # Try to remove the $objdir's in the directories where we deleted files for dir in $rmdirs; do if test -d "$dir"; then func_show_eval "rmdir $dir >/dev/null 2>&1" @@ -9608,16 +11101,17 @@ func_mode_uninstall () exit $exit_status } -{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } && - func_mode_uninstall ${1+"$@"} +if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then + func_mode_uninstall ${1+"$@"} +fi test -z "$opt_mode" && { - help="$generic_help" + help=$generic_help func_fatal_help "you must specify a MODE" } test -z "$exec_cmd" && \ - func_fatal_help "invalid operation mode \`$opt_mode'" + func_fatal_help "invalid operation mode '$opt_mode'" if test -n "$exec_cmd"; then eval exec "$exec_cmd" @@ -9628,7 +11122,7 @@ exit $exit_status # The TAGs below are defined such that we never get into a situation -# in which we disable both kinds of libraries. Given conflicting +# where we disable both kinds of libraries. Given conflicting # choices, we go for a static library, that is the most portable, # since we can't tell whether shared libraries were disabled because # the user asked for that or because the platform doesn't support @@ -9651,5 +11145,3 @@ build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` # mode:shell-script # sh-indentation:2 # End: -# vi:sw=2 - diff --git a/callouts/Makefile.am b/callouts/Makefile.am index cc38e01a..2f9fc71d 100644 --- a/callouts/Makefile.am +++ b/callouts/Makefile.am @@ -2,6 +2,7 @@ SUBDIRS = . tests AM_CPPFLAGS = \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ $(GLIB_CFLAGS) \ diff --git a/callouts/Makefile.in b/callouts/Makefile.in index cada1e2a..5a4458b4 100644 --- a/callouts/Makefile.in +++ b/callouts/Makefile.in @@ -403,6 +403,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -546,6 +547,7 @@ with_valgrind = @with_valgrind@ SUBDIRS = . tests AM_CPPFLAGS = \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ $(GLIB_CFLAGS) \ diff --git a/callouts/tests/Makefile.am b/callouts/tests/Makefile.am index fface33d..394fedab 100644 --- a/callouts/tests/Makefile.am +++ b/callouts/tests/Makefile.am @@ -2,6 +2,7 @@ if ENABLE_TESTS AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/callouts \ diff --git a/callouts/tests/Makefile.in b/callouts/tests/Makefile.in index f02c47dd..f3cb7386 100644 --- a/callouts/tests/Makefile.in +++ b/callouts/tests/Makefile.in @@ -515,6 +515,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -657,6 +658,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/callouts \ diff --git a/clients/Makefile.am b/clients/Makefile.am index dea8f9e3..8316dcc0 100644 --- a/clients/Makefile.am +++ b/clients/Makefile.am @@ -1,6 +1,8 @@ SUBDIRS = cli tui AM_CPPFLAGS = \ + -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm \ diff --git a/clients/Makefile.in b/clients/Makefile.in index 2d750714..a281fd13 100644 --- a/clients/Makefile.in +++ b/clients/Makefile.in @@ -349,6 +349,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -491,6 +492,8 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ SUBDIRS = cli tui AM_CPPFLAGS = \ + -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm \ diff --git a/clients/cli/Makefile.am b/clients/cli/Makefile.am index 75c00a99..eef99cba 100644 --- a/clients/cli/Makefile.am +++ b/clients/cli/Makefile.am @@ -5,6 +5,7 @@ AM_CPPFLAGS = \ -I${top_srcdir} \ -I${top_builddir} \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm \ diff --git a/clients/cli/Makefile.in b/clients/cli/Makefile.in index 34315101..d79f0e70 100644 --- a/clients/cli/Makefile.in +++ b/clients/cli/Makefile.in @@ -324,6 +324,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -465,10 +466,11 @@ with_netconfig = @with_netconfig@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = -I${top_srcdir} -I${top_builddir} \ - -I${top_srcdir}/include -I${top_srcdir}/libnm-core \ - -I${top_builddir}/libnm-core -I${top_srcdir}/libnm \ - -I${top_builddir}/libnm -I${top_srcdir}/clients/common \ - $(GLIB_CFLAGS) -DG_LOG_DOMAIN=\""nmcli"\" \ + -I${top_srcdir}/include -I$(top_builddir)/include \ + -I${top_srcdir}/libnm-core -I${top_builddir}/libnm-core \ + -I${top_srcdir}/libnm -I${top_builddir}/libnm \ + -I${top_srcdir}/clients/common $(GLIB_CFLAGS) \ + -DG_LOG_DOMAIN=\""nmcli"\" \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ -DNMCLI_LOCALEDIR=\"$(datadir)/locale\" $(am__append_1) nmcli_SOURCES = agent.c agent.h common.c common.h connections.c \ diff --git a/clients/cli/connections.c b/clients/cli/connections.c index 8d138bdf..55bde29a 100644 --- a/clients/cli/connections.c +++ b/clients/cli/connections.c @@ -397,6 +397,10 @@ usage_connection_add (void) " olpc-mesh: ssid <SSID>\n" " [channel <1-13>]\n" " [dhcp-anycast <MAC address>]\n\n" + " adsl: username <username>\n" + " protocol pppoa|pppoe|ipoatm\n" + " [password <password>]\n" + " [encapsulation vcmux|llc]\n\n" " IP_OPTIONS:\n" " [ip4 <IPv4 address>] [gw4 <IPv4 gateway>]\n" " [ip6 <IPv6 address>] [gw6 <IPv6 gateway>]\n\n")); @@ -2471,7 +2475,9 @@ static const NameItem nmc_gsm_settings [] = { { NM_SETTING_CONNECTION_SETTING_NAME, NULL, NULL, TRUE }, { NM_SETTING_GSM_SETTING_NAME, NULL, NULL, TRUE }, { NM_SETTING_SERIAL_SETTING_NAME, NULL, NULL, FALSE }, + { NM_SETTING_PPP_SETTING_NAME, NULL, NULL, FALSE }, { NM_SETTING_IP4_CONFIG_SETTING_NAME, NULL, NULL, FALSE }, + { NM_SETTING_IP6_CONFIG_SETTING_NAME, NULL, NULL, FALSE }, { NULL, NULL, NULL, FALSE } }; @@ -2479,7 +2485,9 @@ static const NameItem nmc_cdma_settings [] = { { NM_SETTING_CONNECTION_SETTING_NAME, NULL, NULL, TRUE }, { NM_SETTING_CDMA_SETTING_NAME, NULL, NULL, TRUE }, { NM_SETTING_SERIAL_SETTING_NAME, NULL, NULL, FALSE }, + { NM_SETTING_PPP_SETTING_NAME, NULL, NULL, FALSE }, { NM_SETTING_IP4_CONFIG_SETTING_NAME, NULL, NULL, FALSE }, + { NM_SETTING_IP6_CONFIG_SETTING_NAME, NULL, NULL, FALSE }, { NULL, NULL, NULL, FALSE } }; @@ -2904,6 +2912,29 @@ check_infiniband_mode (char **mode, GError **error) return check_valid_enumeration (mode, modes, "mode", _("InfiniBand transport mode"), error); } +/* Checks ADSL protocol */ +static gboolean +check_adsl_protocol (char **protocol, GError **error) +{ + const char *protos[] = { NM_SETTING_ADSL_PROTOCOL_PPPOA, + NM_SETTING_ADSL_PROTOCOL_PPPOE, + NM_SETTING_ADSL_PROTOCOL_IPOATM, + NULL }; + + return check_valid_enumeration (protocol, protos, "protocol", _("ADSL protocol"), error); +} + +/* Checks ADSL encapsulation */ +static gboolean +check_adsl_encapsulation (char **encapsulation, GError **error) +{ + const char *modes[] = { NM_SETTING_ADSL_ENCAPSULATION_VCMUX, + NM_SETTING_ADSL_ENCAPSULATION_LLC, + NULL }; + + return check_valid_enumeration (encapsulation, modes, "encapsulation", _("ADSL encapsulation"), error); +} + static gboolean check_and_convert_vlan_flags (const char *flags, guint32 *flags_int, GError **error) { @@ -3871,6 +3902,33 @@ do_questionnaire_olpc (char **channel, char **dhcp_anycast) } } +#define PROMPT_ADSL_ENCAP "(" NM_SETTING_ADSL_ENCAPSULATION_VCMUX "/" NM_SETTING_ADSL_ENCAPSULATION_LLC ") [none]: " +static void +do_questionnaire_adsl (char **password, char **encapsulation) +{ + gboolean once_more; + GError *error = NULL; + + /* Ask for optional 'adsl' arguments. */ + if (!want_provide_opt_args (_("ADSL"), 2)) + return; + + if (!*password) + *password = nmc_readline (_("Password [none]: ")); + + if (!*encapsulation) { + do { + *encapsulation = nmc_readline (_("ADSL encapsulation %s"), PROMPT_ADSL_ENCAP); + once_more = !check_adsl_encapsulation (encapsulation, &error); + if (once_more) { + g_print ("%s\n", error->message); + g_clear_error (&error); + g_free (*encapsulation); + } + } while (once_more); + } +} + static gboolean split_address (char* str, char **ip, char **rest) { @@ -4006,6 +4064,7 @@ complete_connection_by_type (NMConnection *connection, GError **error) { NMSettingConnection *s_con; + NMSettingGeneric *s_generic; NMSettingWired *s_wired; NMSettingInfiniband *s_infiniband; NMSettingWireless *s_wifi; @@ -4022,6 +4081,7 @@ complete_connection_by_type (NMConnection *connection, NMSettingBridgePort *s_bridge_port; NMSettingVpn *s_vpn; NMSettingOlpcMesh *s_olpc_mesh; + NMSettingAdsl *s_adsl; g_return_val_if_fail (error == NULL || *error == NULL, FALSE); @@ -5232,6 +5292,78 @@ cleanup_olpc: if (!success) return FALSE; + } else if (!strcmp (con_type, NM_SETTING_ADSL_SETTING_NAME)) { + /* Build up the settings required for 'adsl' */ + gboolean success = FALSE; + char *username_ask = NULL; + const char *username = NULL; + char *protocol_ask = NULL; + const char *protocol = NULL; + const char *password_c = NULL; + char *password = NULL; + const char *encapsulation_c = NULL; + char *encapsulation = NULL; + nmc_arg_t exp_args[] = { {"username", TRUE, &username, !ask}, + {"protocol", TRUE, &protocol, !ask}, + {"password", TRUE, &password_c, FALSE}, + {"encapsulation", TRUE, &encapsulation_c, FALSE}, + {NULL} }; + + if (!nmc_parse_args (exp_args, FALSE, &argc, &argv, error)) + return FALSE; + + if (!username && ask) + username = username_ask = nmc_readline (_("Username: ")); + if (!username) { + g_set_error_literal (error, NMCLI_ERROR, NMC_RESULT_ERROR_USER_INPUT, + _("Error: 'username' is required.")); + goto cleanup_adsl; + } + +#define PROMPT_ADSL_PROTO "(" NM_SETTING_ADSL_PROTOCOL_PPPOA "/" NM_SETTING_ADSL_PROTOCOL_PPPOE "/" NM_SETTING_ADSL_PROTOCOL_IPOATM "): " + if (!protocol && ask) + protocol = protocol_ask = nmc_readline (_("Protocol %s"), PROMPT_ADSL_PROTO); + if (!protocol) { + g_set_error_literal (error, NMCLI_ERROR, NMC_RESULT_ERROR_USER_INPUT, + _("Error: 'protocol' is required.")); + goto cleanup_adsl; + } + if (!check_adsl_protocol (&protocol_ask, error)) + goto cleanup_adsl; + + /* Also ask for all optional arguments if '--ask' is specified. */ + password = g_strdup (password_c); + encapsulation = g_strdup (encapsulation_c); + if (ask) + do_questionnaire_adsl (&password, &encapsulation); + + if (!check_adsl_encapsulation (&encapsulation, error)) + goto cleanup_adsl; + + /* Add ADSL setting */ + s_adsl = (NMSettingAdsl *) nm_setting_adsl_new (); + nm_connection_add_setting (connection, NM_SETTING (s_adsl)); + + g_object_set (s_adsl, + NM_SETTING_ADSL_USERNAME, username, + NM_SETTING_ADSL_PROTOCOL, protocol, + NM_SETTING_ADSL_PASSWORD, password, + NM_SETTING_ADSL_ENCAPSULATION, encapsulation, + NULL); + + success = TRUE; +cleanup_adsl: + g_free (username_ask); + g_free (password); + g_free (protocol_ask); + g_free (encapsulation); + if (!success) + return FALSE; + + } else if (!strcmp (con_type, NM_SETTING_GENERIC_SETTING_NAME)) { + /* Add 'generic' setting */ + s_generic = (NMSettingGeneric *) nm_setting_generic_new (); + nm_connection_add_setting (connection, NM_SETTING (s_generic)); } else { g_set_error (error, NMCLI_ERROR, NMC_RESULT_ERROR_USER_INPUT, _("Error: '%s' is not a valid connection type."), @@ -5465,6 +5597,20 @@ gen_func_bond_mon_mode (const char *text, int state) } static char * +gen_func_adsl_proto (const char *text, int state) +{ + const char *words[] = { "pppoe", "pppoa", "ipoatm", NULL }; + return nmc_rl_gen_func_basic (text, state, words); +} + +static char * +gen_func_adsl_encap (const char *text, int state) +{ + const char *words[] = { "vcmux", "llc", NULL }; + return nmc_rl_gen_func_basic (text, state, words); +} + +static char * gen_func_master_ifnames (const char *text, int state) { int i; @@ -5552,6 +5698,10 @@ nmcli_con_add_tab_completion (const char *text, int start, int end) generator_func = gen_func_bond_mode; else if (g_str_has_suffix (rl_prompt, PROMPT_BOND_MON_MODE)) generator_func = gen_func_bond_mon_mode; + else if (g_str_has_suffix (rl_prompt, PROMPT_ADSL_PROTO)) + generator_func = gen_func_adsl_proto; + else if (g_str_has_suffix (rl_prompt, PROMPT_ADSL_ENCAP)) + generator_func = gen_func_adsl_encap; if (generator_func) match_array = rl_completion_matches (text, generator_func); @@ -5646,15 +5796,20 @@ do_connection_add (NmCli *nmc, int argc, char **argv) || strcmp (type, NM_SETTING_VLAN_SETTING_NAME) == 0) ifname_mandatory = FALSE; - if (!ifname && ifname_mandatory && nmc->ask) { - ifname = ifname_ask = nmc_readline (_("Interface name [*]: ")); - if (!ifname) - ifname = ifname_ask = g_strdup ("*"); - } if (!ifname && ifname_mandatory) { - g_string_printf (nmc->return_text, _("Error: 'ifname' argument is required.")); - nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; - goto error; + if (nmc->ask) { + ifname = ifname_ask = nmc_readline (_("Interface name [*]: ")); + if (!ifname) + ifname = ifname_ask = g_strdup ("*"); + } else { + if (!*argv) + g_string_printf (nmc->return_text, _("Error: 'ifname' argument is required.")); + else + g_string_printf (nmc->return_text, _("Error: mandatory 'ifname' not seen before '%s'."), + *argv); + nmc->return_value = NMC_RESULT_ERROR_USER_INPUT; + goto error; + } } if (ifname) { if (!nm_utils_iface_valid_name (ifname) && strcmp (ifname, "*") != 0) { @@ -8373,6 +8528,14 @@ editor_init_new_connection (NmCli *nmc, NMConnection *connection) nmc_setting_custom_init (base_setting); } + /* ADSL */ + if (g_strcmp0 (con_type, NM_SETTING_ADSL_SETTING_NAME) == 0) { + /* Initialize a protocol */ + g_object_set (NM_SETTING_ADSL (base_setting), + NM_SETTING_ADSL_PROTOCOL, NM_SETTING_ADSL_PROTOCOL_PPPOE, + NULL); + } + /* Always add IPv4 and IPv6 settings for non-slave connections */ setting = nm_setting_ip4_config_new (); nmc_setting_custom_init (setting); diff --git a/clients/cli/devices.c b/clients/cli/devices.c index c9ff8970..70c8d5d5 100644 --- a/clients/cli/devices.c +++ b/clients/cli/devices.c @@ -2549,6 +2549,11 @@ do_device_wifi_connect_network (NmCli *nmc, int argc, char **argv) NM_SETTING_WIRELESS_HIDDEN, hidden, NULL); g_bytes_unref (ssid); + + /* Warn when the provided AP identifier looks like BSSID instead of SSID */ + if (bssid1_arr) + g_printerr (_("Warning: '%s' should be SSID for hidden APs; but it looks like a BSSID.\n"), + param_user); } } diff --git a/clients/cli/nmcli-completion b/clients/cli/nmcli-completion index 4146eae0..7bdd5255 100644 --- a/clients/cli/nmcli-completion +++ b/clients/cli/nmcli-completion @@ -41,6 +41,20 @@ _nmcli_list_nl() fi (( i++ )) done + + # Work-around bash_completion issue where bash interprets a colon + # as a separator. + # Colon is escaped here. Change "\\:" back to ":". + # See also: + # http://stackoverflow.com/questions/28479216/how-to-give-correct-suggestions-to-tab-complete-when-my-words-contains-colons + # http://stackoverflow.com/questions/2805412/bash-completion-for-maven-escapes-colon/12495727 + i=0 + for entry in ${COMPREPLY[*]} + do + entry="${entry//\\\\:/:}" + COMPREPLY[$i]=${entry} + (( i++ )) + done } _nmcli_con_show() @@ -353,7 +367,7 @@ _nmcli_compl_ARGS() # user friendly. Only complete them, if the current word already starts with an "8". _nmcli_list "802-3-ethernet 802-11-wireless 802-11-olpc-mesh" else - _nmcli_list "ethernet wifi wimax gsm cdma infiniband bluetooth vpn olpc-mesh vlan bond bond-slave bridge bridge-slave team team-slave pppoe" + _nmcli_list "ethernet wifi wimax gsm cdma infiniband bluetooth vpn olpc-mesh vlan bond bond-slave bridge bridge-slave team team-slave pppoe adsl" fi return 0 fi @@ -522,6 +536,18 @@ _nmcli_compl_ARGS() return 0 fi ;; + encapsulation) + if [[ "${#words[@]}" -eq 2 ]]; then + _nmcli_list "vcmux llc" + return 0 + fi + ;; + protocol) + if [[ "${#words[@]}" -eq 2 ]]; then + _nmcli_list "pppoa pppoe ipoatm" + return 0 + fi + ;; *) return 1 ;; @@ -1010,6 +1036,11 @@ _nmcli() OPTIONS_TYPED=(username password service mtu mac) OPTIONS_MANDATORY=(username) ;; + a|ad|ads|adsl) + OPTIONS_TYPE=adsl + OPTIONS_TYPED=(username password protocol encapsulation) + OPTIONS_MANDATORY=(username protocol) + ;; *) # for an unknown connection type, we stop completion here return 0 diff --git a/clients/cli/settings-docs.c b/clients/cli/settings-docs.c index d48d4b08..eadc5076 100644 --- a/clients/cli/settings-docs.c +++ b/clients/cli/settings-docs.c @@ -99,7 +99,7 @@ NmcPropertyDesc setting_802_3_ethernet[] = { { "s390-options", "Dictionary of key/value pairs of s390-specific device options. Both keys and values must be strings. Allowed keys include \"portno\", \"layer2\", \"portname\", \"protocol\", among others. Key names must contain only alphanumeric characters (ie, [a-zA-Z0-9])." }, { "s390-subchannels", "Identifies specific subchannels that this network device uses for communication with z/VM or s390 host. Like the \"mac-address\" property for non-z/VM devices, this property can be used to ensure this connection only applies to the network device that uses these subchannels. The list should contain exactly 3 strings, and each string may only be composed of hexadecimal characters and the period (.) character." }, { "speed", "If non-zero, request that the device use only the specified speed. In Mbit/s, ie 100 == 100Mbit/s." }, - { "wake-on-lan", "The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40)." }, + { "wake-on-lan", "The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40) or the special values NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (0x1) (to use global settings) and NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (0x8000) (to disable management of Wake-on-LAN in NetworkManager)." }, { "wake-on-lan-password", "If specified, the password used with magic-packet-based Wake-on-LAN, represented as an Ethernet MAC address. If NULL, no password will be required." }, }; diff --git a/clients/cli/settings.c b/clients/cli/settings.c index 8c4af22d..8a6b5fa8 100644 --- a/clients/cli/settings.c +++ b/clients/cli/settings.c @@ -1524,9 +1524,16 @@ nmc_property_wired_get_wake_on_lan (NMSetting *setting, NmcPropertyGetType get_t { NMSettingWired *s_wired = NM_SETTING_WIRED (setting); NMSettingWiredWakeOnLan wol; + char *tmp, *str; wol = nm_setting_wired_get_wake_on_lan (s_wired); - return nm_utils_enum_to_str (nm_setting_wired_wake_on_lan_get_type (), wol); + tmp = nm_utils_enum_to_str (nm_setting_wired_wake_on_lan_get_type (), wol); + if (get_type == NMC_PROPERTY_GET_PARSABLE) + str = g_strdup_printf ("%s", tmp && *tmp ? tmp : "none"); + else + str = g_strdup_printf ("%d (%s)", wol, tmp && *tmp ? tmp : "none"); + g_free (tmp); + return str; } static gboolean @@ -1536,21 +1543,35 @@ nmc_property_wired_set_wake_on_lan (NMSetting *setting, const char *prop, NMSettingWiredWakeOnLan wol; gs_free char *err_token = NULL; gboolean ret; + long int t; - ret = nm_utils_enum_from_str (nm_setting_wired_wake_on_lan_get_type (), val, - (int *) &wol, &err_token); - - if (!ret) { - g_set_error (error, 1, 0, _("invalid option '%s', use a combination of %s or 'default'"), - err_token, - nm_utils_enum_to_str (nm_setting_wired_wake_on_lan_get_type (), - NM_SETTING_WIRED_WAKE_ON_LAN_ALL)); - return FALSE; + if (nmc_string_to_int_base (val, 0, TRUE, 0, + NM_SETTING_WIRED_WAKE_ON_LAN_ALL + | NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS, + &t)) + wol = (NMSettingWiredWakeOnLan) t; + else { + ret = nm_utils_enum_from_str (nm_setting_wired_wake_on_lan_get_type (), val, + (int *) &wol, &err_token); + + if (!ret) { + if ( g_ascii_strcasecmp (err_token, "none") == 0 + || g_ascii_strcasecmp (err_token, "disable") == 0 + || g_ascii_strcasecmp (err_token, "disabled") == 0) + wol = NM_SETTING_WIRED_WAKE_ON_LAN_NONE; + else { + g_set_error (error, 1, 0, _("invalid option '%s', use a combination of [%s] or 'ignore', 'default' or 'none'"), + err_token, + nm_utils_enum_to_str (nm_setting_wired_wake_on_lan_get_type (), + NM_SETTING_WIRED_WAKE_ON_LAN_ALL)); + return FALSE; + } + } } - if (NM_FLAGS_HAS (wol, NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT) && - NM_FLAGS_ANY (wol, NM_SETTING_WIRED_WAKE_ON_LAN_ALL)) { - g_set_error_literal (error, 1, 0, _("'default' is incompatible with other flags")); + if ( NM_FLAGS_ANY (wol, NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS) + && !nm_utils_is_power_of_two (wol)) { + g_set_error_literal (error, 1, 0, _("'default' and 'ignore' are incompatible with other flags")); return FALSE; } @@ -2847,6 +2868,16 @@ nmc_property_connection_set_metered (NMSetting *setting, const char *prop, return TRUE; } +static const char * +nmc_property_connection_describe_metered (NMSetting *setting, const char *prop) +{ + return _("Enter a value which indicates whether the connection is subject to a data\n" + "quota, usage costs or other limitations. Accepted options are:\n" + "'true','yes','on' to set the connection as metered\n" + "'false','no','off' to set the connection as not metered\n" + "'unknown' to let NetworkManager choose a value using some heuristics\n"); +} + /* --- NM_SETTING_802_1X_SETTING_NAME property setter functions --- */ #define DEFINE_SETTER_STR_LIST(def_func, set_func) \ static gboolean \ @@ -5431,7 +5462,7 @@ nmc_properties_init (void) nmc_property_connection_get_metered, nmc_property_connection_set_metered, NULL, - NULL, + nmc_property_connection_describe_metered, NULL, NULL); diff --git a/clients/cli/utils.c b/clients/cli/utils.c index 3cc836d8..47cd4392 100644 --- a/clients/cli/utils.c +++ b/clients/cli/utils.c @@ -92,8 +92,8 @@ nmc_arg_is_option (const char *str, const char *opt_name) * Helper function to parse command-line arguments. * arg_arr: description of arguments to look for * last: whether these are last expected arguments - * argc: command-line argument array - * argv: command-line argument array size + * argc: command-line argument array size + * argv: command-line argument array * error: error set on a failure (when FALSE is returned) * Returns: TRUE on success, FALSE on an error and sets 'error' */ diff --git a/clients/nm-online.c b/clients/nm-online.c index bb0c9706..5a818bae 100644 --- a/clients/nm-online.c +++ b/clients/nm-online.c @@ -93,7 +93,7 @@ handle_timeout (gpointer data) progress_next_step_i = (elapsed_ms / timeout->progress_step_duration) + 1; progress_next_step_i = MIN (progress_next_step_i, PROGRESS_STEPS); - g_print (_("\rConnecting")); + g_print ("\r%s", _("Connecting")); for (i = 0; i < PROGRESS_STEPS; i++) putchar (i < progress_next_step_i ? '.' : ' '); g_print (" %4lds", (long) (MAX (0, remaining_ms) / 1000)); diff --git a/clients/tui/Makefile.am b/clients/tui/Makefile.am index ad9335da..f6d93be2 100644 --- a/clients/tui/Makefile.am +++ b/clients/tui/Makefile.am @@ -5,6 +5,7 @@ SUBDIRS = newt . AM_CPPFLAGS= \ -I$(top_srcdir) \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/libnm \ diff --git a/clients/tui/Makefile.in b/clients/tui/Makefile.in index 331461a7..26f00406 100644 --- a/clients/tui/Makefile.in +++ b/clients/tui/Makefile.in @@ -415,6 +415,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -559,6 +560,7 @@ with_valgrind = @with_valgrind@ @BUILD_NMTUI_TRUE@AM_CPPFLAGS = \ @BUILD_NMTUI_TRUE@ -I$(top_srcdir) \ @BUILD_NMTUI_TRUE@ -I$(top_srcdir)/include \ +@BUILD_NMTUI_TRUE@ -I$(top_builddir)/include \ @BUILD_NMTUI_TRUE@ -I$(top_srcdir)/libnm-core \ @BUILD_NMTUI_TRUE@ -I$(top_builddir)/libnm-core \ @BUILD_NMTUI_TRUE@ -I$(top_srcdir)/libnm \ diff --git a/clients/tui/newt/Makefile.in b/clients/tui/newt/Makefile.in index 96131a7d..ab647863 100644 --- a/clients/tui/newt/Makefile.in +++ b/clients/tui/newt/Makefile.in @@ -319,6 +319,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/clients/tui/nmt-page-ip4.c b/clients/tui/nmt-page-ip4.c index df3f0b64..c7009e2f 100644 --- a/clients/tui/nmt-page-ip4.c +++ b/clients/tui/nmt-page-ip4.c @@ -179,6 +179,12 @@ nmt_page_ip4_constructed (GObject *object) G_BINDING_SYNC_CREATE | G_BINDING_BIDIRECTIONAL); nmt_editor_grid_append (grid, NULL, widget, NULL); + widget = nmt_newt_checkbox_new (_("Ignore automatically obtained routes")); + g_object_bind_property (s_ip4, NM_SETTING_IP_CONFIG_IGNORE_AUTO_ROUTES, + widget, "active", + G_BINDING_SYNC_CREATE | G_BINDING_BIDIRECTIONAL); + nmt_editor_grid_append (grid, NULL, widget, NULL); + nmt_editor_grid_append (grid, NULL, nmt_newt_separator_new (), NULL); widget = nmt_newt_checkbox_new (_("Require IPv4 addressing for this connection")); diff --git a/clients/tui/nmt-page-ip6.c b/clients/tui/nmt-page-ip6.c index 1513dbfa..122c37f6 100644 --- a/clients/tui/nmt-page-ip6.c +++ b/clients/tui/nmt-page-ip6.c @@ -177,6 +177,12 @@ nmt_page_ip6_constructed (GObject *object) G_BINDING_SYNC_CREATE | G_BINDING_BIDIRECTIONAL); nmt_editor_grid_append (grid, NULL, widget, NULL); + widget = nmt_newt_checkbox_new (_("Ignore automatically obtained routes")); + g_object_bind_property (s_ip6, NM_SETTING_IP_CONFIG_IGNORE_AUTO_ROUTES, + widget, "active", + G_BINDING_SYNC_CREATE | G_BINDING_BIDIRECTIONAL); + nmt_editor_grid_append (grid, NULL, widget, NULL); + nmt_editor_grid_append (grid, NULL, nmt_newt_separator_new (), NULL); widget = nmt_newt_checkbox_new (_("Require IPv6 addressing for this connection")); diff --git a/clients/tui/nmtui-connect.c b/clients/tui/nmtui-connect.c index 438915d2..cacb0b44 100644 --- a/clients/tui/nmtui-connect.c +++ b/clients/tui/nmtui-connect.c @@ -30,6 +30,8 @@ #include <glib/gi18n-lib.h> +#include "gsystem-local-alloc.h" + #include "nmt-newt.h" #include "nmtui.h" @@ -132,7 +134,7 @@ activate_connection (NMConnection *connection, NMObject *specific_object) { NmtNewtForm *form; - NMSecretAgentOld *agent; + gs_unref_object NMSecretAgentOld *agent = NULL; NmtNewtWidget *label; NmtSyncOp op; const char *specific_object_path; @@ -188,7 +190,7 @@ activate_connection (NMConnection *connection, goto done; } - if (!connection) { + if (agent && !connection) { connection = NM_CONNECTION (nm_active_connection_get_connection (ac)); if (connection) { nm_secret_agent_simple_enable (NM_SECRET_AGENT_SIMPLE (agent), @@ -220,8 +222,8 @@ activate_connection (NMConnection *connection, nmt_newt_form_quit (form); g_object_unref (form); - nm_secret_agent_old_unregister (agent, NULL, NULL); - g_object_unref (agent); + if (agent) + nm_secret_agent_old_unregister (agent, NULL, NULL); } static void diff --git a/config.h.in b/config.h.in index ce3d6c43..a6b807fe 100644 --- a/config.h.in +++ b/config.h.in @@ -132,8 +132,7 @@ /* Define to path of the kernel firmware directory */ #undef KERNEL_FIRMWARE_DIR -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ +/* Define to the sub-directory where libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* Path to netconfig (if enabled) */ diff --git a/configure b/configure index 8c825c28..1d885322 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for NetworkManager 1.0.6. +# Generated by GNU Autoconf 2.69 for NetworkManager 1.0.8. # # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=NetworkManager>. # @@ -591,8 +591,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='NetworkManager' PACKAGE_TARNAME='NetworkManager' -PACKAGE_VERSION='1.0.6' -PACKAGE_STRING='NetworkManager 1.0.6' +PACKAGE_VERSION='1.0.8' +PACKAGE_STRING='NetworkManager 1.0.8' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=NetworkManager' PACKAGE_URL='' @@ -887,6 +887,7 @@ NM_MICRO_VERSION NM_MINOR_VERSION NM_MAJOR_VERSION CXXCPP +LT_SYS_LIBRARY_PATH OTOOL64 OTOOL LIPO @@ -1018,6 +1019,7 @@ enable_static enable_shared with_pic enable_fast_install +with_aix_soname with_gnu_ld with_sysroot enable_libtool_lock @@ -1092,6 +1094,7 @@ CPP CXX CXXFLAGS CCC +LT_SYS_LIBRARY_PATH CXXCPP PKG_CONFIG PKG_CONFIG_PATH @@ -1680,7 +1683,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 NetworkManager 1.0.6 to adapt to many kinds of systems. +\`configure' configures NetworkManager 1.0.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1750,7 +1753,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of NetworkManager 1.0.6:";; + short | recursive ) echo "Configuration of NetworkManager 1.0.8:";; esac cat <<\_ACEOF @@ -1815,9 +1818,12 @@ Optional Packages: --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] + --with-aix-soname=aix|svr4|both + shared library versioning (aka "SONAME") variant to + provide on AIX, [default=aix]. --with-gnu-ld assume the C compiler uses GNU ld [default=no] - --with-sysroot=DIR Search for dependent libraries within DIR - (or the compiler's sysroot if not specified). + --with-sysroot[=DIR] Search for dependent libraries within DIR (or the + compiler's sysroot if not specified). --with-gnu-ld assume the C compiler uses GNU ld default=no --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir @@ -1889,6 +1895,8 @@ Some influential environment variables: CPP C preprocessor CXX C++ compiler command CXXFLAGS C++ compiler flags + LT_SYS_LIBRARY_PATH + User-defined run-time library search path. CXXCPP C++ preprocessor PKG_CONFIG path to pkg-config utility PKG_CONFIG_PATH @@ -2032,7 +2040,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -NetworkManager configure 1.0.6 +NetworkManager configure 1.0.8 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2576,7 +2584,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 NetworkManager $as_me 1.0.6, which was +It was created by NetworkManager $as_me 1.0.8, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3446,7 +3454,7 @@ fi # Define the identity of the package. PACKAGE='NetworkManager' - VERSION='1.0.6' + VERSION='1.0.8' cat >>confdefs.h <<_ACEOF @@ -6340,8 +6348,8 @@ esac -macro_version='2.4.2' -macro_revision='1.3337' +macro_version='2.4.6' +macro_revision='2.4.6' @@ -6355,7 +6363,7 @@ macro_revision='1.3337' -ltmain="$ac_aux_dir/ltmain.sh" +ltmain=$ac_aux_dir/ltmain.sh # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || @@ -6475,7 +6483,7 @@ func_echo_all () $ECHO "" } -case "$ECHO" in +case $ECHO in printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 $as_echo "printf" >&6; } ;; print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 @@ -6668,19 +6676,19 @@ test -z "$GREP" && GREP=grep # Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then : - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes + withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld -if test "$GCC" = yes; then +if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw + # gcc leaves a trailing carriage return, which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; @@ -6694,7 +6702,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; } while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done - test -z "$LD" && LD="$ac_prog" + test -z "$LD" && LD=$ac_prog ;; "") # If it fails, then pretend we aren't using GCC. @@ -6705,7 +6713,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; } with_gnu_ld=unknown ;; esac -elif test "$with_gnu_ld" = yes; then +elif test yes = "$with_gnu_ld"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else @@ -6716,32 +6724,32 @@ if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" + lt_cv_path_LD=$ac_dir/$ac_prog # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break + test no != "$with_gnu_ld" && break ;; *) - test "$with_gnu_ld" != yes && break + test yes != "$with_gnu_ld" && break ;; esac fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs else - lt_cv_path_LD="$LD" # Let the user override the test with a path. + lt_cv_path_LD=$LD # Let the user override the test with a path. fi fi -LD="$lt_cv_path_LD" +LD=$lt_cv_path_LD if test -n "$LD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 $as_echo "$LD" >&6; } @@ -6784,33 +6792,38 @@ if ${lt_cv_path_NM+:} false; then : else if test -n "$NM"; then # Let the user override the test. - lt_cv_path_NM="$NM" + lt_cv_path_NM=$NM else - lt_nm_to_check="${ac_tool_prefix}nm" + lt_nm_to_check=${ac_tool_prefix}nm if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - tmp_nm="$ac_dir/$lt_tmp_nm" - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + tmp_nm=$ac_dir/$lt_tmp_nm + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # Adding the 'sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file - case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in - */dev/null* | *'Invalid file or object type'*) + # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty + case $build_os in + mingw*) lt_bad_file=conftest.nm/nofile ;; + *) lt_bad_file=/dev/null ;; + esac + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in + *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" - break + break 2 ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" - break + break 2 ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but @@ -6821,15 +6834,15 @@ else esac fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs done : ${lt_cv_path_NM=no} fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } -if test "$lt_cv_path_NM" != "no"; then - NM="$lt_cv_path_NM" +if test no != "$lt_cv_path_NM"; then + NM=$lt_cv_path_NM else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : @@ -6935,9 +6948,9 @@ esac fi fi - case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in *COFF*) - DUMPBIN="$DUMPBIN -symbols" + DUMPBIN="$DUMPBIN -symbols -headers" ;; *) DUMPBIN=: @@ -6945,8 +6958,8 @@ fi esac fi - if test "$DUMPBIN" != ":"; then - NM="$DUMPBIN" + if test : != "$DUMPBIN"; then + NM=$DUMPBIN fi fi test -z "$NM" && NM=nm @@ -6997,7 +7010,7 @@ if ${lt_cv_sys_max_cmd_len+:} false; then : $as_echo_n "(cached) " >&6 else i=0 - teststring="ABCD" + teststring=ABCD case $build_os in msdosdjgpp*) @@ -7037,7 +7050,7 @@ else lt_cv_sys_max_cmd_len=8192; ;; - netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@ -7087,22 +7100,23 @@ else ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len"; then + if test -n "$lt_cv_sys_max_cmd_len" && \ + test undefined != "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. - for i in 1 2 3 4 5 6 7 8 ; do + for i in 1 2 3 4 5 6 7 8; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. - while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ + while { test X`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && - test $i != 17 # 1/2 MB should be enough + test 17 != "$i" # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring @@ -7120,7 +7134,7 @@ else fi -if test -n $lt_cv_sys_max_cmd_len ; then +if test -n "$lt_cv_sys_max_cmd_len"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 $as_echo "$lt_cv_sys_max_cmd_len" >&6; } else @@ -7138,30 +7152,6 @@ max_cmd_len=$lt_cv_sys_max_cmd_len : ${MV="mv -f"} : ${RM="rm -f"} -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5 -$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; } -# Try some XSI features -xsi_shell=no -( _lt_dummy="a/b/c" - test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ - = c,a/b,b/c, \ - && eval 'test $(( 1 + 1 )) -eq 2 \ - && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ - && xsi_shell=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5 -$as_echo "$xsi_shell" >&6; } - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5 -$as_echo_n "checking whether the shell understands \"+=\"... " >&6; } -lt_shell_append=no -( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \ - >/dev/null 2>&1 \ - && lt_shell_append=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5 -$as_echo "$lt_shell_append" >&6; } - - if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else @@ -7284,13 +7274,13 @@ esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in cygwin* | mingw* | pw32* | cegcc*) - if test "$GCC" != yes; then + if test yes != "$GCC"; then reload_cmds=false fi ;; darwin*) - if test "$GCC" = yes; then - reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' + if test yes = "$GCC"; then + reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi @@ -7418,13 +7408,13 @@ lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. +# 'unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given extended regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. +# that responds to the $file_magic_cmd with a given extended regex. +# If you have 'file' or equivalent on your system and you're not sure +# whether 'pass_all' will *always* work, you probably want this one. case $host_os in aix[4-9]*) @@ -7451,8 +7441,7 @@ mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. - # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. - if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then + if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else @@ -7488,10 +7477,6 @@ freebsd* | dragonfly*) fi ;; -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - haiku*) lt_cv_deplibs_check_method=pass_all ;; @@ -7530,7 +7515,7 @@ irix5* | irix6* | nonstopux*) ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; @@ -7552,8 +7537,8 @@ newos6*) lt_cv_deplibs_check_method=pass_all ;; -openbsd*) - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +openbsd* | bitrig*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' @@ -7606,6 +7591,9 @@ sysv4 | sysv4.3*) tpf*) lt_cv_deplibs_check_method=pass_all ;; +os2*) + lt_cv_deplibs_check_method=pass_all + ;; esac fi @@ -7763,8 +7751,8 @@ else case $host_os in cygwin* | mingw* | pw32* | cegcc*) - # two different shell functions defined in ltmain.sh - # decide which to use based on capabilities of $DLLTOOL + # two different shell functions defined in ltmain.sh; + # decide which one to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib @@ -7776,7 +7764,7 @@ cygwin* | mingw* | pw32* | cegcc*) ;; *) # fallback: assume linklib IS sharedlib - lt_cv_sharedlib_from_linklib_cmd="$ECHO" + lt_cv_sharedlib_from_linklib_cmd=$ECHO ;; esac @@ -7930,7 +7918,7 @@ if ac_fn_c_try_compile "$LINENO"; then : ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } - if test "$ac_status" -eq 0; then + if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 @@ -7938,7 +7926,7 @@ if ac_fn_c_try_compile "$LINENO"; then : ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } - if test "$ac_status" -ne 0; then + if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ fi fi @@ -7951,7 +7939,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 $as_echo "$lt_cv_ar_at_file" >&6; } -if test "x$lt_cv_ar_at_file" = xno; then +if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file @@ -8168,7 +8156,7 @@ old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in - openbsd*) + bitrig* | openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) @@ -8258,7 +8246,7 @@ cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then symcode='[ABCDEGRST]' fi ;; @@ -8291,14 +8279,44 @@ case `$NM -V 2>&1` in symcode='[ABCDGIRSTW]' ;; esac +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Gets list of data symbols to import. + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" + # Adjust the below global symbol transforms to fixup imported variables. + lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" + lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" + lt_c_name_lib_hook="\ + -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ + -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" +else + # Disable hooks by default. + lt_cv_sys_global_symbol_to_import= + lt_cdecl_hook= + lt_c_name_hook= + lt_c_name_lib_hook= +fi + # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ +$lt_cdecl_hook\ +" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ +$lt_c_name_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" + +# Transform an extracted symbol line into symbol name with lib prefix and +# symbol address. +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ +$lt_c_name_lib_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" # Handle CRLF in mingw tool chain opt_cr= @@ -8316,21 +8334,24 @@ for ac_symprfx in "" "_"; do # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Fake it for dumpbin and say T for any non-static function - # and D for any global variable. + # Fake it for dumpbin and say T for any non-static function, + # D for any global variable and I for any imported variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ +" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ +" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ -" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ -" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ -" s[1]~/^[@?]/{print s[1], s[1]; next};"\ -" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ +" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ +" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ +" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" @@ -8378,11 +8399,11 @@ _LT_EOF if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) -/* DATA imports from DLLs on WIN32 con't be const, because runtime +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST -#elif defined(__osf__) +#elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else @@ -8408,7 +8429,7 @@ lt__PROGRAM__LTX_preloaded_symbols[] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF - $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; @@ -8428,13 +8449,13 @@ _LT_EOF mv conftest.$ac_objext conftstm.$ac_objext lt_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS - LIBS="conftstm.$ac_objext" + LIBS=conftstm.$ac_objext CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest${ac_exeext}; then + test $ac_status = 0; } && test -s conftest$ac_exeext; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS @@ -8455,7 +8476,7 @@ _LT_EOF rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then + if test yes = "$pipe_works"; then break else lt_cv_sys_global_symbol_pipe= @@ -8508,6 +8529,16 @@ fi + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 $as_echo_n "checking for sysroot... " >&6; } @@ -8520,9 +8551,9 @@ fi lt_sysroot= -case ${with_sysroot} in #( +case $with_sysroot in #( yes) - if test "$GCC" = yes; then + if test yes = "$GCC"; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( @@ -8532,8 +8563,8 @@ case ${with_sysroot} in #( no|'') ;; #( *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5 -$as_echo "${with_sysroot}" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 +$as_echo "$with_sysroot" >&6; } as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 ;; esac @@ -8545,18 +8576,99 @@ $as_echo "${lt_sysroot:-no}" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 +$as_echo_n "checking for a working dd... " >&6; } +if ${ac_cv_path_lt_DD+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +: ${lt_DD:=$DD} +if test -z "$lt_DD"; then + ac_path_lt_DD_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in dd; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_lt_DD" || continue +if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: +fi + $ac_path_lt_DD_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_lt_DD"; then + : + fi +else + ac_cv_path_lt_DD=$lt_DD +fi + +rm -f conftest.i conftest2.i conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 +$as_echo "$ac_cv_path_lt_DD" >&6; } + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 +$as_echo_n "checking how to truncate binary pipes... " >&6; } +if ${lt_cv_truncate_bin+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +lt_cv_truncate_bin= +if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" +fi +rm -f conftest.i conftest2.i conftest.out +test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 +$as_echo "$lt_cv_truncate_bin" >&6; } + + + + + + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + # Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then : enableval=$enable_libtool_lock; fi -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes +test no = "$enable_libtool_lock" || enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set mode + # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 @@ -8565,24 +8677,25 @@ ia64-*-hpux*) test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) - HPUX_IA64_MODE="32" + HPUX_IA64_MODE=32 ;; *ELF-64*) - HPUX_IA64_MODE="64" + HPUX_IA64_MODE=64 ;; esac fi rm -rf conftest* ;; *-*-irix6*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - if test "$lt_cv_prog_gnu_ld" = yes; then + if test yes = "$lt_cv_prog_gnu_ld"; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" @@ -8611,9 +8724,50 @@ ia64-*-hpux*) rm -rf conftest* ;; +mips64*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '#line '$LINENO' "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + emul=elf + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + emul="${emul}32" + ;; + *64-bit*) + emul="${emul}64" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *MSB*) + emul="${emul}btsmip" + ;; + *LSB*) + emul="${emul}ltsmip" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *N32*) + emul="${emul}n32" + ;; + esac + LD="${LD-ld} -m $emul" + fi + rm -rf conftest* + ;; + x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. Note that the listed cases only cover the + # situations where additional linker options are needed (such as when + # doing 32-bit compilation for a host where ld defaults to 64-bit, or + # vice versa); the common cases where no linker options are needed do + # not appear in the list. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 @@ -8627,7 +8781,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - LD="${LD-ld} -m elf_i386" + case `/usr/bin/file conftest.o` in + *x86-64*) + LD="${LD-ld} -m elf32_x86_64" + ;; + *) + LD="${LD-ld} -m elf_i386" + ;; + esac ;; powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" @@ -8672,7 +8833,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" + SAVE_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -belf" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 $as_echo_n "checking whether the C compiler needs -belf... " >&6; } @@ -8712,13 +8873,14 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 $as_echo "$lt_cv_cc_needs_belf" >&6; } - if test x"$lt_cv_cc_needs_belf" != x"yes"; then + if test yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" + CFLAGS=$SAVE_CFLAGS fi ;; *-*solaris*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 @@ -8730,7 +8892,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; } case $lt_cv_prog_gnu_ld in yes*) case $host in - i?86-*-solaris*) + i?86-*-solaris*|x86_64-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) @@ -8739,7 +8901,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; } esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then - LD="${LD-ld}_sol2" + LD=${LD-ld}_sol2 fi ;; *) @@ -8755,7 +8917,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; } ;; esac -need_locks="$enable_libtool_lock" +need_locks=$enable_libtool_lock if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. @@ -8866,7 +9028,7 @@ else fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 $as_echo "$lt_cv_path_mainfest_tool" >&6; } -if test "x$lt_cv_path_mainfest_tool" != xyes; then +if test yes != "$lt_cv_path_mainfest_tool"; then MANIFEST_TOOL=: fi @@ -9369,7 +9531,7 @@ if ${lt_cv_apple_cc_single_mod+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_apple_cc_single_mod=no - if test -z "${LT_MULTI_MODULE}"; then + if test -z "$LT_MULTI_MODULE"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the @@ -9387,7 +9549,7 @@ else cat conftest.err >&5 # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. - elif test -f libconftest.dylib && test $_lt_result -eq 0; then + elif test -f libconftest.dylib && test 0 = "$_lt_result"; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 @@ -9426,7 +9588,7 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 @@ -9455,7 +9617,7 @@ _LT_EOF _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&5 - elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then + elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then lt_cv_ld_force_load=yes else cat conftest.err >&5 @@ -9468,32 +9630,32 @@ fi $as_echo "$lt_cv_ld_force_load" >&6; } case $host_os in rhapsody* | darwin1.[012]) - _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[91]*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - 10.[012]*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[012][,.]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 10.*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac - if test "$lt_cv_apple_cc_single_mod" = "yes"; then + if test yes = "$lt_cv_apple_cc_single_mod"; then _lt_dar_single_mod='$single_module' fi - if test "$lt_cv_ld_exported_symbols_list" = "yes"; then - _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' + if test yes = "$lt_cv_ld_exported_symbols_list"; then + _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' else - _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' fi - if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then + if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= @@ -9501,6 +9663,41 @@ $as_echo "$lt_cv_ld_force_load" >&6; } ;; esac +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + for ac_header in dlfcn.h do : ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default @@ -9519,9 +9716,9 @@ done func_stripname_cnf () { - case ${2} in - .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;; esac } # func_stripname_cnf @@ -9539,14 +9736,14 @@ if test "${enable_static+set}" = set; then : *) enable_static=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_static=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -9577,14 +9774,14 @@ if test "${enable_shared+set}" = set; then : *) enable_shared=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_shared=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -9609,14 +9806,14 @@ if test "${with_pic+set}" = set; then : *) pic_mode=default # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $withval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -9624,8 +9821,6 @@ else fi -test -z "$pic_mode" && pic_mode=default - @@ -9641,14 +9836,14 @@ if test "${enable_fast_install+set}" = set; then : *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -9662,11 +9857,63 @@ fi + shared_archive_member_spec= +case $host,$enable_shared in +power*-*-aix[5-9]*,yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 +$as_echo_n "checking which variant of shared library versioning to provide... " >&6; } + +# Check whether --with-aix-soname was given. +if test "${with_aix_soname+set}" = set; then : + withval=$with_aix_soname; case $withval in + aix|svr4|both) + ;; + *) + as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 + ;; + esac + lt_cv_with_aix_soname=$with_aix_soname +else + if ${lt_cv_with_aix_soname+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_with_aix_soname=aix +fi + + with_aix_soname=$lt_cv_with_aix_soname +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 +$as_echo "$with_aix_soname" >&6; } + if test aix != "$with_aix_soname"; then + # For the AIX way of multilib, we name the shared archive member + # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', + # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. + # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, + # the AIX toolchain works better with OBJECT_MODE set (default 32). + if test 64 = "${OBJECT_MODE-32}"; then + shared_archive_member_spec=shr_64 + else + shared_archive_member_spec=shr + fi + fi + ;; +*) + with_aix_soname=aix + ;; +esac + + + + + + + # This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ltmain" +LIBTOOL_DEPS=$ltmain # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' @@ -9715,7 +9962,7 @@ test -z "$LN_S" && LN_S="ln -s" -if test -n "${ZSH_VERSION+set}" ; then +if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi @@ -9754,7 +10001,7 @@ aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then + if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -9765,14 +10012,14 @@ esac ofile=libtool can_build_shared=yes -# All known linkers require a `.a' archive for static linking (except MSVC, +# All known linkers require a '.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a -with_gnu_ld="$lt_cv_prog_gnu_ld" +with_gnu_ld=$lt_cv_prog_gnu_ld -old_CC="$CC" -old_CFLAGS="$CFLAGS" +old_CC=$CC +old_CFLAGS=$CFLAGS # Set sane defaults for various variables test -z "$CC" && CC=cc @@ -9781,15 +10028,8 @@ test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o -for cc_temp in $compiler""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +func_cc_basename $compiler +cc_basename=$func_cc_basename_result # Only perform the check for file, if the check method requires it @@ -9804,22 +10044,22 @@ if ${lt_cv_path_MAGIC_CMD+:} false; then : else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/${ac_tool_prefix}file; then - lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" + if test -f "$ac_dir/${ac_tool_prefix}file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : @@ -9842,13 +10082,13 @@ _LT_EOF break fi done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac fi -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } @@ -9870,22 +10110,22 @@ if ${lt_cv_path_MAGIC_CMD+:} false; then : else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/file; then - lt_cv_path_MAGIC_CMD="$ac_dir/file" + if test -f "$ac_dir/file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : @@ -9908,13 +10148,13 @@ _LT_EOF break fi done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac fi -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } @@ -9935,7 +10175,7 @@ esac # Use C for the default configuration in the libtool script -lt_save_CC="$CC" +lt_save_CC=$CC ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -9997,7 +10237,7 @@ if test -n "$compiler"; then lt_prog_compiler_no_builtin_flag= -if test "$GCC" = yes; then +if test yes = "$GCC"; then case $cc_basename in nvcc*) lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; @@ -10013,7 +10253,7 @@ else lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="-fno-rtti -fno-exceptions" + lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins @@ -10043,7 +10283,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } -if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then +if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" else : @@ -10061,17 +10301,18 @@ lt_prog_compiler_pic= lt_prog_compiler_static= - if test "$GCC" = yes; then + if test yes = "$GCC"; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi + lt_prog_compiler_pic='-fPIC' ;; amigaos*) @@ -10082,8 +10323,8 @@ lt_prog_compiler_static= ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' ;; esac @@ -10099,6 +10340,11 @@ lt_prog_compiler_static= # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac ;; darwin* | rhapsody*) @@ -10169,7 +10415,7 @@ lt_prog_compiler_static= case $host_os in aix*) lt_prog_compiler_wl='-Wl,' - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else @@ -10177,10 +10423,29 @@ lt_prog_compiler_static= fi ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + case $cc_basename in + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + esac + ;; + mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac ;; hpux9* | hpux10* | hpux11*) @@ -10196,7 +10461,7 @@ lt_prog_compiler_static= ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? - lt_prog_compiler_static='${wl}-a ${wl}archive' + lt_prog_compiler_static='$wl-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) @@ -10205,9 +10470,9 @@ lt_prog_compiler_static= lt_prog_compiler_static='-non_shared' ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in - # old Intel for x86_64 which still supported -KPIC. + # old Intel for x86_64, which still supported -KPIC. ecc*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' @@ -10232,6 +10497,12 @@ lt_prog_compiler_static= lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) @@ -10329,7 +10600,7 @@ lt_prog_compiler_static= ;; sysv4*MP*) - if test -d /usr/nec ;then + if test -d /usr/nec; then lt_prog_compiler_pic='-Kconform_pic' lt_prog_compiler_static='-Bstatic' fi @@ -10358,7 +10629,7 @@ lt_prog_compiler_static= fi case $host_os in - # For platforms which do not support PIC, -DPIC is meaningless: + # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; @@ -10390,7 +10661,7 @@ else lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$lt_prog_compiler_pic -DPIC" + lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins @@ -10420,7 +10691,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; } -if test x"$lt_cv_prog_compiler_pic_works" = xyes; then +if test yes = "$lt_cv_prog_compiler_pic_works"; then case $lt_prog_compiler_pic in "" | " "*) ;; *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; @@ -10452,7 +10723,7 @@ if ${lt_cv_prog_compiler_static_works+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works=no - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $lt_tmp_static_flag" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then @@ -10471,13 +10742,13 @@ else fi fi $RM -r conftest* - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 $as_echo "$lt_cv_prog_compiler_static_works" >&6; } -if test x"$lt_cv_prog_compiler_static_works" = xyes; then +if test yes = "$lt_cv_prog_compiler_static_works"; then : else lt_prog_compiler_static= @@ -10597,8 +10868,8 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; } -hard_links="nottested" -if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then +hard_links=nottested +if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "checking if we can lock with hard links... " >&6; } @@ -10610,9 +10881,9 @@ $as_echo_n "checking if we can lock with hard links... " >&6; } ln conftest.a conftest.b 2>/dev/null && hard_links=no { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } - if test "$hard_links" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + if test no = "$hard_links"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} need_locks=warn fi else @@ -10655,9 +10926,9 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie # included in the symbol list include_expsyms= # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ` (' and `)$', so one must not match beginning or - # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', - # as well as any symbol that contains `d'. + # it will be wrapped by ' (' and ')$', so one must not match beginning or + # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', + # as well as any symbol that contains 'd'. exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if @@ -10672,7 +10943,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. - if test "$GCC" != yes; then + if test yes != "$GCC"; then with_gnu_ld=no fi ;; @@ -10680,7 +10951,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; - openbsd*) + openbsd* | bitrig*) with_gnu_ld=no ;; esac @@ -10690,7 +10961,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility @@ -10712,24 +10983,24 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie esac fi - if test "$lt_use_gnu_ld_interface" = yes; then + if test yes = "$lt_use_gnu_ld_interface"; then # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' + wlarc='$wl' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + export_dynamic_flag_spec='$wl--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else whole_archive_flag_spec= fi supports_anon_versioning=no - case `$LD -v 2>&1` in + case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@ -10742,7 +11013,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie case $host_os in aix[3-9]*) # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then + if test ia64 != "$host_cpu"; then ld_shlibs=no cat <<_LT_EOF 1>&2 @@ -10761,7 +11032,7 @@ _LT_EOF case $host_cpu in powerpc) # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) @@ -10777,7 +11048,7 @@ _LT_EOF allow_undefined_flag=unsupported # Joseph Beckenbach <jrb3@best.com> says some releases of gcc # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else ld_shlibs=no fi @@ -10787,7 +11058,7 @@ _LT_EOF # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' - export_dynamic_flag_spec='${wl}--export-all-symbols' + export_dynamic_flag_spec='$wl--export-all-symbols' allow_undefined_flag=unsupported always_export_symbols=no enable_shared_with_static_runtimes=yes @@ -10795,61 +11066,89 @@ _LT_EOF exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs=no fi ;; haiku*) - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' link_all_deplibs=yes ;; + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes + ;; + interix[3-9]*) hardcode_direct=no hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no - if test "$host_os" = linux-dietlibc; then + if test linux-dietlibc = "$host_os"; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ - && test "$tmp_diet" = no + && test no = "$tmp_diet" then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; @@ -10860,42 +11159,47 @@ _LT_EOF lf95*) # Lahey Fortran 8.1 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; + nagfor*) # NAGFOR 5.3 + tmp_sharedflag='-Wl,-shared' ;; xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 - whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac - archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi case $cc_basename in + tcc*) + export_dynamic_flag_spec='-rdynamic' + ;; xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac @@ -10909,8 +11213,8 @@ _LT_EOF archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' fi ;; @@ -10928,8 +11232,8 @@ _LT_EOF _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi @@ -10941,7 +11245,7 @@ _LT_EOF ld_shlibs=no cat <<_LT_EOF 1>&2 -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify @@ -10956,9 +11260,9 @@ _LT_EOF # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi @@ -10975,15 +11279,15 @@ _LT_EOF *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac - if test "$ld_shlibs" = no; then + if test no = "$ld_shlibs"; then runpath_var= hardcode_libdir_flag_spec= export_dynamic_flag_spec= @@ -10999,7 +11303,7 @@ _LT_EOF # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=unsupported @@ -11007,34 +11311,57 @@ _LT_EOF ;; aix[4-9]*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' - no_entry_flag="" + no_entry_flag= else # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - # Also, AIX nm treats weak defined symbols like other global - # defined symbols, whereas GNU nm marks them as "W". + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then aix_use_runtimelinking=yes break fi done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi ;; esac @@ -11053,13 +11380,21 @@ _LT_EOF hardcode_direct_absolute=yes hardcode_libdir_separator=':' link_all_deplibs=yes - file_list_spec='${wl}-f,' + file_list_spec='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # traditional, no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + hardcode_direct=no + hardcode_direct_absolute=no + ;; + esac - if test "$GCC" = yes; then + if test yes = "$GCC"; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` + collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then @@ -11078,35 +11413,42 @@ _LT_EOF ;; esac shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag="$shared_flag "'$wl-G' fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' else # not using gcc - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' else - shared_flag='${wl}-bM:SRE' + shared_flag='$wl-bM:SRE' fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' fi fi - export_dynamic_flag_spec='${wl}-bexpall' + export_dynamic_flag_spec='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an # empty executable. - if test "${lt_cv_aix_libpath+set}" = set; then + if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : @@ -11141,7 +11483,7 @@ fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_="/usr/lib:/lib" + lt_cv_aix_libpath_=/usr/lib:/lib fi fi @@ -11149,17 +11491,17 @@ fi aix_libpath=$lt_cv_aix_libpath_ fi - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" - archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' + if test ia64 = "$host_cpu"; then + hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. - if test "${lt_cv_aix_libpath+set}" = set; then + if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : @@ -11194,7 +11536,7 @@ fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_="/usr/lib:/lib" + lt_cv_aix_libpath_=/usr/lib:/lib fi fi @@ -11202,21 +11544,33 @@ fi aix_libpath=$lt_cv_aix_libpath_ fi - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. - no_undefined_flag=' ${wl}-bernotok' - allow_undefined_flag=' ${wl}-berok' - if test "$with_gnu_ld" = yes; then + no_undefined_flag=' $wl-bernotok' + allow_undefined_flag=' $wl-berok' + if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. - whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec='$convenience' fi archive_cmds_need_lc=yes - # This is similar to how AIX traditionally builds its shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared libraries. + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' fi fi ;; @@ -11225,7 +11579,7 @@ fi case $host_cpu in powerpc) # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) @@ -11255,16 +11609,17 @@ fi # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' - archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; - else - sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' + archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, )='true' enable_shared_with_static_runtimes=yes @@ -11273,18 +11628,18 @@ fi # Don't use ranlib old_postinstall_cmds='chmod 644 $oldlib' postlink_cmds='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile="$lt_outputfile.exe" - lt_tool_outputfile="$lt_tool_outputfile.exe" - ;; - esac~ - if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' ;; *) # Assume MSVC wrapper @@ -11293,7 +11648,7 @@ fi # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. @@ -11312,24 +11667,24 @@ fi hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported - if test "$lt_cv_ld_force_load" = "yes"; then - whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + if test yes = "$lt_cv_ld_force_load"; then + whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' else whole_archive_flag_spec='' fi link_all_deplibs=yes - allow_undefined_flag="$_lt_dar_allow_undefined" + allow_undefined_flag=$_lt_dar_allow_undefined case $cc_basename in - ifort*) _lt_dar_can_shared=yes ;; + ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac - if test "$_lt_dar_can_shared" = "yes"; then + if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all - archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" - module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" - archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" - module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" + archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" else ld_shlibs=no @@ -11371,33 +11726,33 @@ fi ;; hpux9*) - if test "$GCC" = yes; then - archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + if test yes = "$GCC"; then + archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else - archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' fi - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes - export_dynamic_flag_spec='${wl}-E' + export_dynamic_flag_spec='$wl-E' ;; hpux10*) - if test "$GCC" = yes && test "$with_gnu_ld" = no; then - archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + if test yes,no = "$GCC,$with_gnu_ld"; then + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes hardcode_direct_absolute=yes - export_dynamic_flag_spec='${wl}-E' + export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes @@ -11405,25 +11760,25 @@ fi ;; hpux11*) - if test "$GCC" = yes && test "$with_gnu_ld" = no; then + if test yes,no = "$GCC,$with_gnu_ld"; then case $host_cpu in hppa*64*) - archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) - archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) - archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) - archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) - archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) @@ -11435,7 +11790,7 @@ if ${lt_cv_prog_compiler__b+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler__b=no - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -b" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then @@ -11454,14 +11809,14 @@ else fi fi $RM -r conftest* - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 $as_echo "$lt_cv_prog_compiler__b" >&6; } -if test x"$lt_cv_prog_compiler__b" = xyes; then - archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +if test yes = "$lt_cv_prog_compiler__b"; then + archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi @@ -11469,8 +11824,8 @@ fi ;; esac fi - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: case $host_cpu in @@ -11481,7 +11836,7 @@ fi *) hardcode_direct=yes hardcode_direct_absolute=yes - export_dynamic_flag_spec='${wl}-E' + export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. @@ -11492,8 +11847,8 @@ fi ;; irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_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 -o $lib' + if test yes = "$GCC"; then + archive_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 -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. @@ -11503,8 +11858,8 @@ $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " > if ${lt_cv_irix_exported_symbol+:} false; then : $as_echo_n "(cached) " >&6 else - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo (void) { return 0; } @@ -11516,24 +11871,34 @@ else fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 $as_echo "$lt_cv_irix_exported_symbol" >&6; } - if test "$lt_cv_irix_exported_symbol" = yes; 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' + 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 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' + 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' fi archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: inherit_rpath=yes link_all_deplibs=yes ;; + linux*) + case $cc_basename in + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + ld_shlibs=yes + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out @@ -11548,7 +11913,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } newsos6) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: hardcode_shlibpath_var=no ;; @@ -11556,27 +11921,19 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } *nto* | *qnx*) ;; - openbsd*) + openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then hardcode_direct=yes hardcode_shlibpath_var=no hardcode_direct_absolute=yes - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' + archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' else - case $host_os in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' fi else ld_shlibs=no @@ -11587,33 +11944,53 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported - archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes ;; osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_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 -o $lib' + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_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 -o $lib' else allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' fi archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' else allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' + $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' @@ -11624,24 +12001,24 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } solaris*) no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - wlarc='${wl}' - archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + wlarc='$wl' + archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) - wlarc='${wl}' - archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' + wlarc='$wl' + archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi @@ -11651,11 +12028,11 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } solaris2.[0-5] | solaris2.[0-5].*) ;; *) # The compiler driver will combine and reorder linker options, - # but understands `-z linker_flag'. GCC discards it without `$wl', + # but understands '-z linker_flag'. GCC discards it without '$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) - if test "$GCC" = yes; then - whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + if test yes = "$GCC"; then + whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' else whole_archive_flag_spec='-z allextract$convenience -z defaultextract' fi @@ -11665,10 +12042,10 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } ;; sunos4*) - if test "x$host_vendor" = xsequent; then + if test sequent = "$host_vendor"; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi @@ -11717,43 +12094,43 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) - no_undefined_flag='${wl}-z,text' + no_undefined_flag='$wl-z,text' archive_cmds_need_lc=no hardcode_shlibpath_var=no runpath_var='LD_RUN_PATH' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else - archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not + # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. - no_undefined_flag='${wl}-z,text' - allow_undefined_flag='${wl}-z,nodefs' + no_undefined_flag='$wl-z,text' + allow_undefined_flag='$wl-z,nodefs' archive_cmds_need_lc=no hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='${wl}-R,$libdir' + hardcode_libdir_flag_spec='$wl-R,$libdir' hardcode_libdir_separator=':' link_all_deplibs=yes - export_dynamic_flag_spec='${wl}-Bexport' + export_dynamic_flag_spec='$wl-Bexport' runpath_var='LD_RUN_PATH' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else - archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; @@ -11768,10 +12145,10 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } ;; esac - if test x$host_vendor = xsni; then + if test sni = "$host_vendor"; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - export_dynamic_flag_spec='${wl}-Blargedynsym' + export_dynamic_flag_spec='$wl-Blargedynsym' ;; esac fi @@ -11779,7 +12156,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 $as_echo "$ld_shlibs" >&6; } -test "$ld_shlibs" = no && can_build_shared=no +test no = "$ld_shlibs" && can_build_shared=no with_gnu_ld=$with_gnu_ld @@ -11805,7 +12182,7 @@ x|xyes) # Assume -lc should be added archive_cmds_need_lc=yes - if test "$enable_shared" = yes && test "$GCC" = yes; then + if test yes,yes = "$GCC,$enable_shared"; then case $archive_cmds in *'~'*) # FIXME: we may have to deal with multi-command sequences. @@ -12020,14 +12397,14 @@ esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 $as_echo_n "checking dynamic linker characteristics... " >&6; } -if test "$GCC" = yes; then +if test yes = "$GCC"; then case $host_os in - darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; - *) lt_awk_arg="/^libraries:/" ;; + darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; + *) lt_awk_arg='/^libraries:/' ;; esac case $host_os in - mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;; - *) lt_sed_strip_eq="s,=/,/,g" ;; + mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; + *) lt_sed_strip_eq='s|=/|/|g' ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in @@ -12043,28 +12420,35 @@ if test "$GCC" = yes; then ;; esac # Ok, now we have the path, separated by spaces, we can step through it - # and add multilib dir if necessary. + # and add multilib dir if necessary... lt_tmp_lt_search_path_spec= - lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + # ...but if some path component already ends with the multilib dir we assume + # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). + case "$lt_multi_os_dir; $lt_search_path_spec " in + "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) + lt_multi_os_dir= + ;; + esac for lt_sys_path in $lt_search_path_spec; do - if test -d "$lt_sys_path/$lt_multi_os_dir"; then - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" - else + if test -d "$lt_sys_path$lt_multi_os_dir"; then + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" + elif test -n "$lt_multi_os_dir"; then test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' -BEGIN {RS=" "; FS="/|\n";} { - lt_foo=""; - lt_count=0; +BEGIN {RS = " "; FS = "/|\n";} { + lt_foo = ""; + lt_count = 0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { - lt_foo="/" $lt_i lt_foo; + lt_foo = "/" $lt_i lt_foo; } else { lt_count--; } @@ -12078,7 +12462,7 @@ BEGIN {RS=" "; FS="/|\n";} { # for these hosts. case $host_os in mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ - $SED 's,/\([A-Za-z]:\),\1,g'` ;; + $SED 's|/\([A-Za-z]:\)|\1|g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else @@ -12087,7 +12471,7 @@ fi library_names_spec= libname_spec='lib$name' soname_spec= -shrext_cmds=".so" +shrext_cmds=.so postinstall_cmds= postuninstall_cmds= finish_cmds= @@ -12104,14 +12488,16 @@ hardcode_into_libs=no # flags to be left without arguments need_version=unknown + + case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' + soname_spec='$libname$release$shared_ext$major' ;; aix[4-9]*) @@ -12119,41 +12505,91 @@ aix[4-9]*) need_lib_prefix=no need_version=no hardcode_into_libs=yes - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' - echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib<name>.so # instead of lib<name>.a to let people know that these are not # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a(lib.so.V)' # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac shlibpath_var=LIBPATH fi ;; @@ -12163,18 +12599,18 @@ amigaos*) powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) - library_names_spec='${libname}${shared_ext}' + library_names_spec='$libname$shared_ext' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; @@ -12182,8 +12618,8 @@ beos*) bsdi[45]*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" @@ -12195,7 +12631,7 @@ bsdi[45]*) cygwin* | mingw* | pw32* | cegcc*) version_type=windows - shrext_cmds=".dll" + shrext_cmds=.dll need_version=no need_lib_prefix=no @@ -12204,8 +12640,8 @@ cygwin* | mingw* | pw32* | cegcc*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ @@ -12221,17 +12657,17 @@ cygwin* | mingw* | pw32* | cegcc*) case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' @@ -12240,8 +12676,8 @@ cygwin* | mingw* | pw32* | cegcc*) *,cl*) # Native MSVC libname_spec='$name' - soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - library_names_spec='${libname}.dll.lib' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' case $build_os in mingw*) @@ -12268,7 +12704,7 @@ cygwin* | mingw* | pw32* | cegcc*) sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) - sys_lib_search_path_spec="$LIB" + sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` @@ -12281,8 +12717,8 @@ cygwin* | mingw* | pw32* | cegcc*) esac # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' @@ -12295,7 +12731,7 @@ cygwin* | mingw* | pw32* | cegcc*) *) # Assume MSVC wrapper - library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac @@ -12308,8 +12744,8 @@ darwin* | rhapsody*) version_type=darwin need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' @@ -12322,8 +12758,8 @@ dgux*) version_type=linux # correct to gnu/linux during the next big refactor 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' + 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 ;; @@ -12341,12 +12777,13 @@ freebsd* | dragonfly*) version_type=freebsd-$objformat case $version_type in freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac @@ -12371,26 +12808,15 @@ freebsd* | dragonfly*) esac ;; -gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - 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 - ;; - haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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=LIBRARY_PATH - shlibpath_overrides_runpath=yes + shlibpath_overrides_runpath=no sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; @@ -12408,14 +12834,15 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' @@ -12423,8 +12850,8 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; @@ -12433,8 +12860,8 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... @@ -12447,8 +12874,8 @@ interix[3-9]*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -12459,7 +12886,7 @@ irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) - if test "$lt_cv_prog_gnu_ld" = yes; then + if test yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix @@ -12467,8 +12894,8 @@ irix5* | irix6* | nonstopux*) esac need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= @@ -12487,8 +12914,8 @@ irix5* | irix6* | nonstopux*) esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" hardcode_into_libs=yes ;; @@ -12497,13 +12924,33 @@ linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + hardcode_libdir_flag_spec='-L$libdir' + ;; + # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -12550,11 +12997,15 @@ fi # Add ABI-specific directories to the system library path. sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" - # Append ld.so.conf contents to the search path + # 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 + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # 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="$sys_lib_dlsearch_path_spec $lt_ld_extra" - fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -12571,12 +13022,12 @@ netbsd*) need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH @@ -12586,7 +13037,7 @@ netbsd*) newsos6) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; @@ -12595,58 +13046,68 @@ newsos6) version_type=qnx 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' + 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='ldqnx.so' ;; -openbsd*) +openbsd* | bitrig*) version_type=sunos - sys_lib_dlsearch_path_spec="/usr/lib" + sys_lib_dlsearch_path_spec=/usr/lib need_lib_prefix=no - # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. - case $host_os in - openbsd3.3 | openbsd3.3.*) need_version=yes ;; - *) need_version=no ;; - esac - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[89] | openbsd2.[89].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no else - shlibpath_overrides_runpath=yes + need_version=yes fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' - shrext_cmds=".dll" + version_type=windows + shrext_cmds=.dll + need_version=no need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; rdos*) @@ -12657,8 +13118,8 @@ solaris*) version_type=linux # correct to gnu/linux during the next big refactor 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' + 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=yes hardcode_into_libs=yes @@ -12668,11 +13129,11 @@ solaris*) sunos4*) version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes @@ -12680,8 +13141,8 @@ sunos4*) sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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 case $host_vendor in sni) @@ -12702,24 +13163,24 @@ sysv4 | sysv4.3*) ;; sysv4*MP*) - if test -d /usr/nec ;then + if test -d /usr/nec; then version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=freebsd-elf + version_type=sco need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' @@ -12737,7 +13198,7 @@ tpf*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes @@ -12745,8 +13206,8 @@ tpf*) uts4*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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 ;; @@ -12756,20 +13217,35 @@ uts4*) esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } -test "$dynamic_linker" = no && can_build_shared=no +test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then +if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then - sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi -if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then - sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + + + + + + @@ -12866,15 +13342,15 @@ $as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || - test "X$hardcode_automatic" = "Xyes" ; then + test yes = "$hardcode_automatic"; then # We can hardcode non-existent directories. - if test "$hardcode_direct" != no && + if test no != "$hardcode_direct" && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one - ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no && - test "$hardcode_minus_L" != no; then + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && + test no != "$hardcode_minus_L"; then # Linking always hardcodes the temporary library directory. hardcode_action=relink else @@ -12889,12 +13365,12 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 $as_echo "$hardcode_action" >&6; } -if test "$hardcode_action" = relink || - test "$inherit_rpath" = yes; then +if test relink = "$hardcode_action" || + test yes = "$inherit_rpath"; then # Fast installation is not supported enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then # Fast installation is not necessary enable_fast_install=needless fi @@ -12904,7 +13380,7 @@ fi - if test "x$enable_dlopen" != xyes; then + if test yes != "$enable_dlopen"; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown @@ -12914,23 +13390,23 @@ else case $host_os in beos*) - lt_cv_dlopen="load_add_on" + lt_cv_dlopen=load_add_on lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) - lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen=LoadLibrary lt_cv_dlopen_libs= ;; cygwin*) - lt_cv_dlopen="dlopen" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs= ;; darwin*) - # if libdl is installed we need to link against it + # if libdl is installed we need to link against it { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : @@ -12968,10 +13444,10 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else - lt_cv_dlopen="dyld" + lt_cv_dlopen=dyld lt_cv_dlopen_libs= lt_cv_dlopen_self=yes @@ -12979,10 +13455,18 @@ fi ;; + tpf*) + # Don't try to run any link tests for TPF. We know it's impossible + # because TPF is a cross-compiler, and we know how we open DSOs. + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + lt_cv_dlopen_self=no + ;; + *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" if test "x$ac_cv_func_shl_load" = xyes; then : - lt_cv_dlopen="shl_load" + lt_cv_dlopen=shl_load else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 $as_echo_n "checking for shl_load in -ldld... " >&6; } @@ -13021,11 +13505,11 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 $as_echo "$ac_cv_lib_dld_shl_load" >&6; } if test "x$ac_cv_lib_dld_shl_load" = xyes; then : - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" + lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld else ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" if test "x$ac_cv_func_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" + lt_cv_dlopen=dlopen else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } @@ -13064,7 +13548,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 $as_echo_n "checking for dlopen in -lsvld... " >&6; } @@ -13103,7 +13587,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 $as_echo "$ac_cv_lib_svld_dlopen" >&6; } if test "x$ac_cv_lib_svld_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 $as_echo_n "checking for dld_link in -ldld... " >&6; } @@ -13142,7 +13626,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 $as_echo "$ac_cv_lib_dld_dld_link" >&6; } if test "x$ac_cv_lib_dld_dld_link" = xyes; then : - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" + lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld fi @@ -13163,21 +13647,21 @@ fi ;; esac - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else + if test no = "$lt_cv_dlopen"; then enable_dlopen=no + else + enable_dlopen=yes fi case $lt_cv_dlopen in dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + save_CPPFLAGS=$CPPFLAGS + test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - save_LIBS="$LIBS" + save_LIBS=$LIBS LIBS="$lt_cv_dlopen_libs $LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 @@ -13185,7 +13669,7 @@ $as_echo_n "checking whether a program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : + if test yes = "$cross_compiling"; then : lt_cv_dlopen_self=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 @@ -13232,9 +13716,9 @@ else # endif #endif -/* When -fvisbility=hidden is used, assume the code has been annotated +/* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ -#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif @@ -13264,7 +13748,7 @@ _LT_EOF (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in @@ -13284,14 +13768,14 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 $as_echo "$lt_cv_dlopen_self" >&6; } - if test "x$lt_cv_dlopen_self" = xyes; then + if test yes = "$lt_cv_dlopen_self"; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self_static+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : + if test yes = "$cross_compiling"; then : lt_cv_dlopen_self_static=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 @@ -13338,9 +13822,9 @@ else # endif #endif -/* When -fvisbility=hidden is used, assume the code has been annotated +/* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ -#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif @@ -13370,7 +13854,7 @@ _LT_EOF (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in @@ -13391,9 +13875,9 @@ fi $as_echo "$lt_cv_dlopen_self_static" >&6; } fi - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" + CPPFLAGS=$save_CPPFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS ;; esac @@ -13437,7 +13921,7 @@ else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) - if test -n "$STRIP" ; then + if test -n "$STRIP"; then striplib="$STRIP -x" old_striplib="$STRIP -S" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -13465,7 +13949,7 @@ fi - # Report which library types will actually be built + # Report what library types will actually be built { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 $as_echo_n "checking if libtool supports shared libraries... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 @@ -13473,13 +13957,13 @@ $as_echo "$can_build_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 $as_echo_n "checking whether to build shared libraries... " >&6; } - test "$can_build_shared" = "no" && enable_shared=no + test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) - test "$enable_shared" = yes && enable_static=no + test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' @@ -13487,8 +13971,12 @@ $as_echo_n "checking whether to build shared libraries... " >&6; } ;; aix[4-9]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac fi ;; esac @@ -13498,7 +13986,7 @@ $as_echo "$enable_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 $as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes + test yes = "$enable_shared" || enable_static=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 $as_echo "$enable_static" >&6; } @@ -13512,11 +14000,11 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -CC="$lt_save_CC" +CC=$lt_save_CC - if test -n "$CXX" && ( test "X$CXX" != "Xno" && - ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || - (test "X$CXX" != "Xg++"))) ; then + if test -n "$CXX" && ( test no != "$CXX" && + ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || + (test g++ != "$CXX"))); then ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -13695,7 +14183,7 @@ objext_CXX=$objext # the CXX compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. -if test "$_lt_caught_CXX_error" != yes; then +if test yes != "$_lt_caught_CXX_error"; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" @@ -13756,46 +14244,39 @@ $RM -r conftest* CFLAGS=$CXXFLAGS compiler=$CC compiler_CXX=$CC - for cc_temp in $compiler""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` + func_cc_basename $compiler +cc_basename=$func_cc_basename_result if test -n "$compiler"; then # We don't want -fno-exception when compiling C++ code, so set the # no_builtin_flag separately - if test "$GXX" = yes; then + if test yes = "$GXX"; then lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin' else lt_prog_compiler_no_builtin_flag_CXX= fi - if test "$GXX" = yes; then + if test yes = "$GXX"; then # Set up default GNU C++ configuration # Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then : - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes + withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld -if test "$GCC" = yes; then +if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw + # gcc leaves a trailing carriage return, which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; @@ -13809,7 +14290,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; } while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done - test -z "$LD" && LD="$ac_prog" + test -z "$LD" && LD=$ac_prog ;; "") # If it fails, then pretend we aren't using GCC. @@ -13820,7 +14301,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; } with_gnu_ld=unknown ;; esac -elif test "$with_gnu_ld" = yes; then +elif test yes = "$with_gnu_ld"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else @@ -13831,32 +14312,32 @@ if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" + lt_cv_path_LD=$ac_dir/$ac_prog # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break + test no != "$with_gnu_ld" && break ;; *) - test "$with_gnu_ld" != yes && break + test yes != "$with_gnu_ld" && break ;; esac fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs else - lt_cv_path_LD="$LD" # Let the user override the test with a path. + lt_cv_path_LD=$LD # Let the user override the test with a path. fi fi -LD="$lt_cv_path_LD" +LD=$lt_cv_path_LD if test -n "$LD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 $as_echo "$LD" >&6; } @@ -13892,22 +14373,22 @@ with_gnu_ld=$lt_cv_prog_gnu_ld # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. - if test "$with_gnu_ld" = yes; then - archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + if test yes = "$with_gnu_ld"; then + archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' - export_dynamic_flag_spec_CXX='${wl}--export-dynamic' + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' # If archive_cmds runs LD, not CC, wlarc should be empty # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to # investigate it a little bit more. (MM) - wlarc='${wl}' + wlarc='$wl' # ancient GNU ld didn't support --whole-archive et. al. if eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else whole_archive_flag_spec_CXX= fi @@ -13944,18 +14425,30 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie ld_shlibs_CXX=no ;; aix[4-9]*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' - no_entry_flag="" + no_entry_flag= else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do case $ld_flag in @@ -13965,6 +14458,13 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie ;; esac done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi ;; esac @@ -13983,13 +14483,21 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie hardcode_direct_absolute_CXX=yes hardcode_libdir_separator_CXX=':' link_all_deplibs_CXX=yes - file_list_spec_CXX='${wl}-f,' + file_list_spec_CXX='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + hardcode_direct_CXX=no + hardcode_direct_absolute_CXX=no + ;; + esac - if test "$GXX" = yes; then + if test yes = "$GXX"; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` + collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then @@ -14007,36 +14515,44 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie fi esac shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag=$shared_flag' $wl-G' fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' else # not using gcc - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' else - shared_flag='${wl}-bM:SRE' + shared_flag='$wl-bM:SRE' fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' fi fi - export_dynamic_flag_spec_CXX='${wl}-bexpall' + export_dynamic_flag_spec_CXX='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to # export. always_export_symbols_CXX=yes - if test "$aix_use_runtimelinking" = yes; then + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. - allow_undefined_flag_CXX='-berok' + # The "-G" linker flag allows undefined symbols. + no_undefined_flag_CXX='-bernotok' # Determine the default libpath from the value encoded in an empty # executable. - if test "${lt_cv_aix_libpath+set}" = set; then + if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath__CXX+:} false; then : @@ -14071,7 +14587,7 @@ fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath__CXX"; then - lt_cv_aix_libpath__CXX="/usr/lib:/lib" + lt_cv_aix_libpath__CXX=/usr/lib:/lib fi fi @@ -14079,18 +14595,18 @@ fi aix_libpath=$lt_cv_aix_libpath__CXX fi - hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" + hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath" - archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib' + if test ia64 = "$host_cpu"; then + hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib' allow_undefined_flag_CXX="-z nodefs" - archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. - if test "${lt_cv_aix_libpath+set}" = set; then + if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath__CXX+:} false; then : @@ -14125,7 +14641,7 @@ fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath__CXX"; then - lt_cv_aix_libpath__CXX="/usr/lib:/lib" + lt_cv_aix_libpath__CXX=/usr/lib:/lib fi fi @@ -14133,22 +14649,34 @@ fi aix_libpath=$lt_cv_aix_libpath__CXX fi - hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" + hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. - no_undefined_flag_CXX=' ${wl}-bernotok' - allow_undefined_flag_CXX=' ${wl}-berok' - if test "$with_gnu_ld" = yes; then + no_undefined_flag_CXX=' $wl-bernotok' + allow_undefined_flag_CXX=' $wl-berok' + if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. - whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec_CXX='$convenience' fi archive_cmds_need_lc_CXX=yes - # This is similar to how AIX traditionally builds its shared - # libraries. - archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared + # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d' fi fi ;; @@ -14158,7 +14686,7 @@ fi allow_undefined_flag_CXX=unsupported # Joseph Beckenbach <jrb3@best.com> says some releases of gcc # support --undefined. This deserves some investigation. FIXME - archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else ld_shlibs_CXX=no fi @@ -14186,57 +14714,58 @@ fi # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. - archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' - archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; - else - $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' + archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true' enable_shared_with_static_runtimes_CXX=yes # Don't use ranlib old_postinstall_cmds_CXX='chmod 644 $oldlib' postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile="$lt_outputfile.exe" - lt_tool_outputfile="$lt_tool_outputfile.exe" - ;; - esac~ - func_to_tool_file "$lt_outputfile"~ - if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + func_to_tool_file "$lt_outputfile"~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' ;; *) # g++ # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec_CXX='-L$libdir' - export_dynamic_flag_spec_CXX='${wl}--export-all-symbols' + export_dynamic_flag_spec_CXX='$wl--export-all-symbols' allow_undefined_flag_CXX=unsupported always_export_symbols_CXX=no enable_shared_with_static_runtimes_CXX=yes if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs_CXX=no fi @@ -14250,27 +14779,27 @@ fi hardcode_direct_CXX=no hardcode_automatic_CXX=yes hardcode_shlibpath_var_CXX=unsupported - if test "$lt_cv_ld_force_load" = "yes"; then - whole_archive_flag_spec_CXX='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + if test yes = "$lt_cv_ld_force_load"; then + whole_archive_flag_spec_CXX='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' else whole_archive_flag_spec_CXX='' fi link_all_deplibs_CXX=yes - allow_undefined_flag_CXX="$_lt_dar_allow_undefined" + allow_undefined_flag_CXX=$_lt_dar_allow_undefined case $cc_basename in - ifort*) _lt_dar_can_shared=yes ;; + ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac - if test "$_lt_dar_can_shared" = "yes"; then + if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all - archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" - module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" - archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" - module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" - if test "$lt_cv_apple_cc_single_mod" != "yes"; then - archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" - archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" + archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + module_expsym_cmds_CXX="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + if test yes != "$lt_cv_apple_cc_single_mod"; then + archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" + archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" fi else @@ -14279,6 +14808,34 @@ fi ;; + os2*) + hardcode_libdir_flag_spec_CXX='-L$libdir' + hardcode_minus_L_CXX=yes + allow_undefined_flag_CXX=unsupported + shrext_cmds=.dll + archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes_CXX=yes + ;; + dgux*) case $cc_basename in ec++*) @@ -14313,18 +14870,15 @@ fi ld_shlibs_CXX=yes ;; - gnu*) - ;; - haiku*) - archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' link_all_deplibs_CXX=yes ;; hpux9*) - hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' + hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir' hardcode_libdir_separator_CXX=: - export_dynamic_flag_spec_CXX='${wl}-E' + export_dynamic_flag_spec_CXX='$wl-E' hardcode_direct_CXX=yes hardcode_minus_L_CXX=yes # Not in the search PATH, # but as the default @@ -14336,7 +14890,7 @@ fi ld_shlibs_CXX=no ;; aCC*) - archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. @@ -14345,11 +14899,11 @@ fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) - if test "$GXX" = yes; then - archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + if test yes = "$GXX"; then + archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support ld_shlibs_CXX=no @@ -14359,15 +14913,15 @@ fi ;; hpux10*|hpux11*) - if test $with_gnu_ld = no; then - hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir' hardcode_libdir_separator_CXX=: case $host_cpu in hppa*64*|ia64*) ;; *) - export_dynamic_flag_spec_CXX='${wl}-E' + export_dynamic_flag_spec_CXX='$wl-E' ;; esac fi @@ -14393,13 +14947,13 @@ fi aCC*) case $host_cpu in hppa*64*) - archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) - archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) - archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac # Commands to make compiler produce verbose output that lists @@ -14410,20 +14964,20 @@ fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) - if test "$GXX" = yes; then - if test $with_gnu_ld = no; then + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then case $host_cpu in hppa*64*) - archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) - archive_cmds_CXX='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) - archive_cmds_CXX='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac fi @@ -14438,22 +14992,22 @@ fi interix[3-9]*) hardcode_direct_CXX=no hardcode_shlibpath_var_CXX=no - hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' - export_dynamic_flag_spec_CXX='${wl}-E' + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + export_dynamic_flag_spec_CXX='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. - archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - archive_expsym_cmds_CXX='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_expsym_cmds_CXX='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in CC*) # SGI C++ - archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' # Archives containing C++ object files must be created using # "CC -ar", where "CC" is the IRIX C++ compiler. This is @@ -14462,22 +15016,22 @@ fi old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs' ;; *) - if test "$GXX" = yes; then - if test "$with_gnu_ld" = no; then - archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' else - archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib' fi fi link_all_deplibs_CXX=yes ;; esac - hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' hardcode_libdir_separator_CXX=: inherit_rpath_CXX=yes ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler @@ -14485,8 +15039,8 @@ fi # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. - archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. @@ -14495,10 +15049,10 @@ fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' - hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' - export_dynamic_flag_spec_CXX='${wl}--export-dynamic' + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' # Archives containing C++ object files must be created using # "CC -Bstatic", where "CC" is the KAI C++ compiler. @@ -14512,59 +15066,59 @@ fi # earlier do not add the objects themselves. case `$CC -V 2>&1` in *"Version 7."*) - archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 8.0 or newer tmp_idyn= case $host_cpu in ia64*) tmp_idyn=' -i_dynamic';; esac - archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; esac archive_cmds_need_lc_CXX=no - hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' - export_dynamic_flag_spec_CXX='${wl}--export-dynamic' - whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive' ;; pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in *pgCC\ [1-5].* | *pgcpp\ [1-5].*) prelink_cmds_CXX='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ - compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ + compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' old_archive_cmds_CXX='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ - $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ - $RANLIB $oldlib' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ + $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ + $RANLIB $oldlib' archive_cmds_CXX='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds_CXX='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 6 and above use weak symbols - archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' - archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; esac - hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec_CXX='${wl}--export-dynamic' - whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + whole_archive_flag_spec_CXX='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' ;; cxx*) # Compaq C++ - archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols' runpath_var=LD_RUN_PATH hardcode_libdir_flag_spec_CXX='-rpath $libdir' @@ -14578,18 +15132,18 @@ fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' ;; xl* | mpixl* | bgxl*) # IBM XL 8.0 on PPC, with GNU ld - hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' - export_dynamic_flag_spec_CXX='${wl}--export-dynamic' - archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + if test yes = "$supports_anon_versioning"; then archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi ;; *) @@ -14597,10 +15151,10 @@ fi *Sun\ C*) # Sun C++ 5.9 no_undefined_flag_CXX=' -zdefs' - archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - archive_expsym_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' + archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_expsym_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols' hardcode_libdir_flag_spec_CXX='-R$libdir' - whole_archive_flag_spec_CXX='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec_CXX='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object_CXX=yes # Not sure whether something based on @@ -14658,22 +15212,17 @@ fi ld_shlibs_CXX=yes ;; - openbsd2*) - # C++ shared libraries are fairly broken - ld_shlibs_CXX=no - ;; - - openbsd*) + openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then hardcode_direct_CXX=yes hardcode_shlibpath_var_CXX=no hardcode_direct_absolute_CXX=yes archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' - export_dynamic_flag_spec_CXX='${wl}-E' - whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then + archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib' + export_dynamic_flag_spec_CXX='$wl-E' + whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' fi output_verbose_link_cmd=func_echo_all else @@ -14689,9 +15238,9 @@ fi # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. - archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' hardcode_libdir_separator_CXX=: # Archives containing C++ object files must be created using @@ -14709,17 +15258,17 @@ fi cxx*) case $host in osf3*) - allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' + allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*' + archive_cmds_CXX='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' ;; *) allow_undefined_flag_CXX=' -expect_unresolved \*' - archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~ - $RM $lib.exp' + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~ + $RM $lib.exp' hardcode_libdir_flag_spec_CXX='-rpath $libdir' ;; esac @@ -14734,21 +15283,21 @@ fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' + if test yes,no = "$GXX,$with_gnu_ld"; then + allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*' case $host in osf3*) - archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' + archive_cmds_CXX='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' ;; *) - archive_cmds_CXX='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' ;; esac - hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' hardcode_libdir_separator_CXX=: # Commands to make compiler produce verbose output that lists @@ -14794,9 +15343,9 @@ fi # Sun C++ 4.2, 5.x and Centerline C++ archive_cmds_need_lc_CXX=yes no_undefined_flag_CXX=' -zdefs' - archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' hardcode_libdir_flag_spec_CXX='-R$libdir' hardcode_shlibpath_var_CXX=no @@ -14804,7 +15353,7 @@ fi solaris2.[0-5] | solaris2.[0-5].*) ;; *) # The compiler driver will combine and reorder linker options, - # but understands `-z linker_flag'. + # but understands '-z linker_flag'. # Supported since Solaris 2.6 (maybe 2.5.1?) whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract' ;; @@ -14821,30 +15370,30 @@ fi ;; gcx*) # Green Hills C++ Compiler - archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' # The C++ compiler must be used to create the archive. old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs' ;; *) # GNU C++ compiler with Solaris linker - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - no_undefined_flag_CXX=' ${wl}-z ${wl}defs' + if test yes,no = "$GXX,$with_gnu_ld"; then + no_undefined_flag_CXX=' $wl-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then - archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else - # g++ 2.7 appears to require `-G' NOT `-shared' on this + # g++ 2.7 appears to require '-G' NOT '-shared' on this # platform. - archive_cmds_CXX='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when @@ -14852,11 +15401,11 @@ fi output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' fi - hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir' + hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir' case $host_os in solaris2.[0-5] | solaris2.[0-5].*) ;; *) - whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' ;; esac fi @@ -14865,52 +15414,52 @@ fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) - no_undefined_flag_CXX='${wl}-z,text' + no_undefined_flag_CXX='$wl-z,text' archive_cmds_need_lc_CXX=no hardcode_shlibpath_var_CXX=no runpath_var='LD_RUN_PATH' case $cc_basename in CC*) - archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) - archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not + # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. - no_undefined_flag_CXX='${wl}-z,text' - allow_undefined_flag_CXX='${wl}-z,nodefs' + no_undefined_flag_CXX='$wl-z,text' + allow_undefined_flag_CXX='$wl-z,nodefs' archive_cmds_need_lc_CXX=no hardcode_shlibpath_var_CXX=no - hardcode_libdir_flag_spec_CXX='${wl}-R,$libdir' + hardcode_libdir_flag_spec_CXX='$wl-R,$libdir' hardcode_libdir_separator_CXX=':' link_all_deplibs_CXX=yes - export_dynamic_flag_spec_CXX='${wl}-Bexport' + export_dynamic_flag_spec_CXX='$wl-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) - archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~ - '"$old_archive_cmds_CXX" + '"$old_archive_cmds_CXX" reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~ - '"$reload_cmds_CXX" + '"$reload_cmds_CXX" ;; *) - archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; @@ -14942,10 +15491,10 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 $as_echo "$ld_shlibs_CXX" >&6; } - test "$ld_shlibs_CXX" = no && can_build_shared=no + test no = "$ld_shlibs_CXX" && can_build_shared=no - GCC_CXX="$GXX" - LD_CXX="$LD" + GCC_CXX=$GXX + LD_CXX=$LD ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change @@ -14989,13 +15538,13 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 pre_test_object_deps_done=no for p in `eval "$output_verbose_link_cmd"`; do - case ${prev}${p} in + case $prev$p in -L* | -R* | -l*) # Some compilers place space between "-{L,R}" and the path. # Remove the space. - if test $p = "-L" || - test $p = "-R"; then + if test x-L = "$p" || + test x-R = "$p"; then prev=$p continue fi @@ -15011,16 +15560,16 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 case $p in =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; esac - if test "$pre_test_object_deps_done" = no; then - case ${prev} in + if test no = "$pre_test_object_deps_done"; then + case $prev in -L | -R) # Internal compiler library paths should come after those # provided the user. The postdeps already come after the # user supplied libs so there is no need to process them. if test -z "$compiler_lib_search_path_CXX"; then - compiler_lib_search_path_CXX="${prev}${p}" + compiler_lib_search_path_CXX=$prev$p else - compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} ${prev}${p}" + compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p" fi ;; # The "-l" case would never come before the object being @@ -15028,9 +15577,9 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 esac else if test -z "$postdeps_CXX"; then - postdeps_CXX="${prev}${p}" + postdeps_CXX=$prev$p else - postdeps_CXX="${postdeps_CXX} ${prev}${p}" + postdeps_CXX="${postdeps_CXX} $prev$p" fi fi prev= @@ -15045,15 +15594,15 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 continue fi - if test "$pre_test_object_deps_done" = no; then + if test no = "$pre_test_object_deps_done"; then if test -z "$predep_objects_CXX"; then - predep_objects_CXX="$p" + predep_objects_CXX=$p else predep_objects_CXX="$predep_objects_CXX $p" fi else if test -z "$postdep_objects_CXX"; then - postdep_objects_CXX="$p" + postdep_objects_CXX=$p else postdep_objects_CXX="$postdep_objects_CXX $p" fi @@ -15083,51 +15632,6 @@ interix[3-9]*) postdep_objects_CXX= postdeps_CXX= ;; - -linux*) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C++ 5.9 - - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - if test "$solaris_use_stlport4" != yes; then - postdeps_CXX='-library=Cstd -library=Crun' - fi - ;; - esac - ;; - -solaris*) - case $cc_basename in - CC* | sunCC*) - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - # Adding this requires a known-good setup of shared libraries for - # Sun compiler versions before 5.6, else PIC objects from an old - # archive will be linked into the output, leading to subtle bugs. - if test "$solaris_use_stlport4" != yes; then - postdeps_CXX='-library=Cstd -library=Crun' - fi - ;; - esac - ;; esac @@ -15136,7 +15640,7 @@ case " $postdeps_CXX " in esac compiler_lib_search_dirs_CXX= if test -n "${compiler_lib_search_path_CXX}"; then - compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` + compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'` fi @@ -15175,17 +15679,18 @@ lt_prog_compiler_static_CXX= # C++ specific cases for pic, static, wl, etc. - if test "$GXX" = yes; then + if test yes = "$GXX"; then lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_static_CXX='-static' case $host_os in aix*) # All AIX code is PIC. - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static_CXX='-Bstatic' fi + lt_prog_compiler_pic_CXX='-fPIC' ;; amigaos*) @@ -15196,8 +15701,8 @@ lt_prog_compiler_static_CXX= ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4' ;; esac @@ -15212,6 +15717,11 @@ lt_prog_compiler_static_CXX= # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries lt_prog_compiler_pic_CXX='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static_CXX='$wl-static' + ;; + esac ;; darwin* | rhapsody*) # PIC is the default on this platform @@ -15261,7 +15771,7 @@ lt_prog_compiler_static_CXX= case $host_os in aix[4-9]*) # All AIX code is PIC. - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static_CXX='-Bstatic' else @@ -15301,14 +15811,14 @@ lt_prog_compiler_static_CXX= case $cc_basename in CC*) lt_prog_compiler_wl_CXX='-Wl,' - lt_prog_compiler_static_CXX='${wl}-a ${wl}archive' - if test "$host_cpu" != ia64; then + lt_prog_compiler_static_CXX='$wl-a ${wl}archive' + if test ia64 != "$host_cpu"; then lt_prog_compiler_pic_CXX='+Z' fi ;; aCC*) lt_prog_compiler_wl_CXX='-Wl,' - lt_prog_compiler_static_CXX='${wl}-a ${wl}archive' + lt_prog_compiler_static_CXX='$wl-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default @@ -15337,7 +15847,7 @@ lt_prog_compiler_static_CXX= ;; esac ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # KAI C++ Compiler @@ -15345,7 +15855,7 @@ lt_prog_compiler_static_CXX= lt_prog_compiler_pic_CXX='-fPIC' ;; ecpc* ) - # old Intel C++ for x86_64 which still supported -KPIC. + # old Intel C++ for x86_64, which still supported -KPIC. lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_pic_CXX='-KPIC' lt_prog_compiler_static_CXX='-static' @@ -15490,7 +16000,7 @@ lt_prog_compiler_static_CXX= fi case $host_os in - # For platforms which do not support PIC, -DPIC is meaningless: + # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic_CXX= ;; @@ -15522,7 +16032,7 @@ else lt_cv_prog_compiler_pic_works_CXX=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" + lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins @@ -15552,7 +16062,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5 $as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; } -if test x"$lt_cv_prog_compiler_pic_works_CXX" = xyes; then +if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then case $lt_prog_compiler_pic_CXX in "" | " "*) ;; *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;; @@ -15578,7 +16088,7 @@ if ${lt_cv_prog_compiler_static_works_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works_CXX=no - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $lt_tmp_static_flag" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then @@ -15597,13 +16107,13 @@ else fi fi $RM -r conftest* - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5 $as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; } -if test x"$lt_cv_prog_compiler_static_works_CXX" = xyes; then +if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then : else lt_prog_compiler_static_CXX= @@ -15717,8 +16227,8 @@ $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } -hard_links="nottested" -if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then +hard_links=nottested +if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "checking if we can lock with hard links... " >&6; } @@ -15730,9 +16240,9 @@ $as_echo_n "checking if we can lock with hard links... " >&6; } ln conftest.a conftest.b 2>/dev/null && hard_links=no { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } - if test "$hard_links" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + if test no = "$hard_links"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} need_locks=warn fi else @@ -15749,17 +16259,21 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie case $host_os in aix[4-9]*) # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - # Also, AIX nm treats weak defined symbols like other global defined - # symbols, whereas GNU nm marks them as "W". + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds_CXX='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) - export_symbols_cmds_CXX="$ltdll_cmds" + export_symbols_cmds_CXX=$ltdll_cmds ;; cygwin* | mingw* | cegcc*) case $cc_basename in @@ -15779,7 +16293,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 $as_echo "$ld_shlibs_CXX" >&6; } -test "$ld_shlibs_CXX" = no && can_build_shared=no +test no = "$ld_shlibs_CXX" && can_build_shared=no with_gnu_ld_CXX=$with_gnu_ld @@ -15796,7 +16310,7 @@ x|xyes) # Assume -lc should be added archive_cmds_need_lc_CXX=yes - if test "$enable_shared" = yes && test "$GCC" = yes; then + if test yes,yes = "$GCC,$enable_shared"; then case $archive_cmds_CXX in *'~'*) # FIXME: we may have to deal with multi-command sequences. @@ -15924,7 +16438,7 @@ $as_echo_n "checking dynamic linker characteristics... " >&6; } library_names_spec= libname_spec='lib$name' soname_spec= -shrext_cmds=".so" +shrext_cmds=.so postinstall_cmds= postuninstall_cmds= finish_cmds= @@ -15941,14 +16455,16 @@ hardcode_into_libs=no # flags to be left without arguments need_version=unknown + + case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' + soname_spec='$libname$release$shared_ext$major' ;; aix[4-9]*) @@ -15956,41 +16472,91 @@ aix[4-9]*) need_lib_prefix=no need_version=no hardcode_into_libs=yes - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' - echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib<name>.so # instead of lib<name>.a to let people know that these are not # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a(lib.so.V)' # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac shlibpath_var=LIBPATH fi ;; @@ -16000,18 +16566,18 @@ amigaos*) powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) - library_names_spec='${libname}${shared_ext}' + library_names_spec='$libname$shared_ext' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; @@ -16019,8 +16585,8 @@ beos*) bsdi[45]*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" @@ -16032,7 +16598,7 @@ bsdi[45]*) cygwin* | mingw* | pw32* | cegcc*) version_type=windows - shrext_cmds=".dll" + shrext_cmds=.dll need_version=no need_lib_prefix=no @@ -16041,8 +16607,8 @@ cygwin* | mingw* | pw32* | cegcc*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ @@ -16058,16 +16624,16 @@ cygwin* | mingw* | pw32* | cegcc*) case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' @@ -16076,8 +16642,8 @@ cygwin* | mingw* | pw32* | cegcc*) *,cl*) # Native MSVC libname_spec='$name' - soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - library_names_spec='${libname}.dll.lib' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' case $build_os in mingw*) @@ -16104,7 +16670,7 @@ cygwin* | mingw* | pw32* | cegcc*) sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) - sys_lib_search_path_spec="$LIB" + sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` @@ -16117,8 +16683,8 @@ cygwin* | mingw* | pw32* | cegcc*) esac # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' @@ -16131,7 +16697,7 @@ cygwin* | mingw* | pw32* | cegcc*) *) # Assume MSVC wrapper - library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac @@ -16144,8 +16710,8 @@ darwin* | rhapsody*) version_type=darwin need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' @@ -16157,8 +16723,8 @@ dgux*) version_type=linux # correct to gnu/linux during the next big refactor 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' + 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 ;; @@ -16176,12 +16742,13 @@ freebsd* | dragonfly*) version_type=freebsd-$objformat case $version_type in freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac @@ -16206,26 +16773,15 @@ freebsd* | dragonfly*) esac ;; -gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - 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 - ;; - haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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=LIBRARY_PATH - shlibpath_overrides_runpath=yes + shlibpath_overrides_runpath=no sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; @@ -16243,14 +16799,15 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' @@ -16258,8 +16815,8 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; @@ -16268,8 +16825,8 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... @@ -16282,8 +16839,8 @@ interix[3-9]*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -16294,7 +16851,7 @@ irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) - if test "$lt_cv_prog_gnu_ld" = yes; then + if test yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix @@ -16302,8 +16859,8 @@ irix5* | irix6* | nonstopux*) esac need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= @@ -16322,8 +16879,8 @@ irix5* | irix6* | nonstopux*) esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" hardcode_into_libs=yes ;; @@ -16332,13 +16889,33 @@ linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + hardcode_libdir_flag_spec_CXX='-L$libdir' + ;; + # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -16385,11 +16962,15 @@ fi # Add ABI-specific directories to the system library path. sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" - # Append ld.so.conf contents to the search path + # 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 + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # 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="$sys_lib_dlsearch_path_spec $lt_ld_extra" - fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -16406,12 +16987,12 @@ netbsd*) need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH @@ -16421,7 +17002,7 @@ netbsd*) newsos6) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; @@ -16430,58 +17011,68 @@ newsos6) version_type=qnx 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' + 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='ldqnx.so' ;; -openbsd*) +openbsd* | bitrig*) version_type=sunos - sys_lib_dlsearch_path_spec="/usr/lib" + sys_lib_dlsearch_path_spec=/usr/lib need_lib_prefix=no - # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. - case $host_os in - openbsd3.3 | openbsd3.3.*) need_version=yes ;; - *) need_version=no ;; - esac - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[89] | openbsd2.[89].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no else - shlibpath_overrides_runpath=yes + need_version=yes fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' - shrext_cmds=".dll" + version_type=windows + shrext_cmds=.dll + need_version=no need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; rdos*) @@ -16492,8 +17083,8 @@ solaris*) version_type=linux # correct to gnu/linux during the next big refactor 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' + 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=yes hardcode_into_libs=yes @@ -16503,11 +17094,11 @@ solaris*) sunos4*) version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes @@ -16515,8 +17106,8 @@ sunos4*) sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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 case $host_vendor in sni) @@ -16537,24 +17128,24 @@ sysv4 | sysv4.3*) ;; sysv4*MP*) - if test -d /usr/nec ;then + if test -d /usr/nec; then version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=freebsd-elf + version_type=sco need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' @@ -16572,7 +17163,7 @@ tpf*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes @@ -16580,8 +17171,8 @@ tpf*) uts4*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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 ;; @@ -16591,20 +17182,32 @@ uts4*) esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } -test "$dynamic_linker" = no && can_build_shared=no +test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then +if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then - sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi -if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then - sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + + + @@ -16647,15 +17250,15 @@ $as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action_CXX= if test -n "$hardcode_libdir_flag_spec_CXX" || test -n "$runpath_var_CXX" || - test "X$hardcode_automatic_CXX" = "Xyes" ; then + test yes = "$hardcode_automatic_CXX"; then # We can hardcode non-existent directories. - if test "$hardcode_direct_CXX" != no && + if test no != "$hardcode_direct_CXX" && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one - ## test "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" != no && - test "$hardcode_minus_L_CXX" != no; then + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" && + test no != "$hardcode_minus_L_CXX"; then # Linking always hardcodes the temporary library directory. hardcode_action_CXX=relink else @@ -16670,12 +17273,12 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5 $as_echo "$hardcode_action_CXX" >&6; } -if test "$hardcode_action_CXX" = relink || - test "$inherit_rpath_CXX" = yes; then +if test relink = "$hardcode_action_CXX" || + test yes = "$inherit_rpath_CXX"; then # Fast installation is not supported enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then # Fast installation is not necessary enable_fast_install=needless fi @@ -16698,7 +17301,7 @@ fi lt_cv_path_LD=$lt_save_path_LD lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -fi # test "$_lt_caught_CXX_error" != yes +fi # test yes != "$_lt_caught_CXX_error" ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -16731,9 +17334,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu NM_MAJOR_VERSION=1 NM_MINOR_VERSION=0 -NM_MICRO_VERSION=6 -NM_VERSION=1.0.6 -NM_GIT_SHA=59deb78f851961eec159ba7e11c01f5d9ae667d4 +NM_MICRO_VERSION=8 +NM_VERSION=1.0.8 +NM_GIT_SHA=faea1ff074740431d9af5804f090e1d904d61156 @@ -20175,7 +20778,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mw__mwvalidcheckl" >&5 $as_echo "$ac_cv_lib_mw__mwvalidcheckl" >&6; } if test "x$ac_cv_lib_mw__mwvalidcheckl" = xyes; then : - LIBM="-lmw" + LIBM=-lmw fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5 @@ -20257,7 +20860,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5 $as_echo "$ac_cv_lib_m_cos" >&6; } if test "x$ac_cv_lib_m_cos" = xyes; then : - LIBM="-lm" + LIBM=-lm fi ;; @@ -21092,6 +21695,7 @@ $as_echo "$found_introspection" >&6; } INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection fi + INTROSPECTION_SCANNER='CFLAGS="${CFLAGS} -Wno-error" '"$INTROSPECTION_SCANNER" @@ -24544,7 +25148,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -Wundef -Wimplicit-function-declaration \ -Wpointer-arith -Winit-self \ -Wmissing-include-dirs -Wno-pragmas; do - CFLAGS="$CFLAGS_MORE_WARNINGS $(printf '%s' "$option" | sed 's/^-Wno-/-W/') $CFLAGS_SAVED" + CFLAGS="-Werror $CFLAGS_MORE_WARNINGS $(printf '%s' "$option" | sed 's/^-Wno-/-W/') $CFLAGS_SAVED" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler understands $option" >&5 $as_echo_n "checking whether compiler understands $option... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -25690,7 +26294,7 @@ fi -ac_config_files="$ac_config_files Makefile include/Makefile src/Makefile src/tests/Makefile src/tests/config/Makefile src/dhcp-manager/Makefile src/dhcp-manager/tests/Makefile src/dnsmasq-manager/tests/Makefile src/supplicant-manager/tests/Makefile src/ppp-manager/Makefile src/settings/plugins/Makefile src/settings/plugins/ifupdown/Makefile src/settings/plugins/ifupdown/tests/Makefile src/settings/plugins/ifnet/Makefile src/settings/plugins/ifnet/tests/Makefile src/settings/plugins/ifcfg-rh/Makefile src/settings/plugins/ifcfg-rh/tests/Makefile src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile src/settings/plugins/ibft/Makefile src/settings/plugins/ibft/tests/Makefile src/settings/plugins/ifcfg-suse/Makefile src/settings/plugins/keyfile/Makefile src/settings/plugins/keyfile/tests/Makefile src/settings/plugins/keyfile/tests/keyfiles/Makefile src/settings/plugins/example/Makefile src/platform/Makefile src/platform/tests/Makefile src/rdisc/Makefile src/rdisc/tests/Makefile src/devices/adsl/Makefile src/devices/wimax/Makefile src/devices/bluetooth/Makefile src/devices/team/Makefile src/devices/wifi/Makefile src/devices/wifi/tests/Makefile src/devices/wwan/Makefile libnm-core/nm-version.h libnm-core/Makefile libnm-core/tests/Makefile libnm/libnm.pc libnm/Makefile libnm/tests/Makefile libnm-util/libnm-util.pc libnm-util/nm-version.h libnm-util/Makefile libnm-util/tests/Makefile libnm-glib/libnm-glib.pc libnm-glib/libnm-glib-vpn.pc libnm-glib/Makefile libnm-glib/tests/Makefile callouts/Makefile callouts/tests/Makefile tools/Makefile clients/Makefile clients/cli/Makefile clients/tui/Makefile clients/tui/newt/Makefile initscript/RedHat/NetworkManager initscript/Debian/NetworkManager initscript/Slackware/rc.networkmanager initscript/SUSE/networkmanager initscript/Arch/networkmanager initscript/Mandriva/networkmanager initscript/linexa/networkmanager introspection/Makefile introspection/all.xml man/Makefile man/NetworkManager.conf.xml man/nm-system-settings.conf.5 man/nm-online.1 man/nmcli.1 man/nmtui.1 po/Makefile.in policy/Makefile policy/org.freedesktop.NetworkManager.policy.in data/Makefile docs/Makefile docs/api/Makefile docs/api/version.xml docs/libnm-glib/Makefile docs/libnm-glib/version.xml docs/libnm-util/Makefile docs/libnm-util/version.xml docs/libnm/Makefile docs/libnm/version.xml NetworkManager.pc examples/Makefile examples/shell/Makefile examples/python/Makefile examples/python/dbus/Makefile examples/python/gi/Makefile examples/ruby/Makefile examples/C/Makefile examples/C/glib/Makefile examples/C/qt/Makefile examples/dispatcher/Makefile vapi/Makefile" +ac_config_files="$ac_config_files Makefile include/Makefile include/nm-version-macros.h src/Makefile src/tests/Makefile src/tests/config/Makefile src/dhcp-manager/Makefile src/dhcp-manager/tests/Makefile src/dnsmasq-manager/tests/Makefile src/supplicant-manager/tests/Makefile src/supplicant-manager/tests/certs/Makefile src/ppp-manager/Makefile src/settings/plugins/Makefile src/settings/plugins/ifupdown/Makefile src/settings/plugins/ifupdown/tests/Makefile src/settings/plugins/ifnet/Makefile src/settings/plugins/ifnet/tests/Makefile src/settings/plugins/ifcfg-rh/Makefile src/settings/plugins/ifcfg-rh/tests/Makefile src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile src/settings/plugins/ibft/Makefile src/settings/plugins/ibft/tests/Makefile src/settings/plugins/ifcfg-suse/Makefile src/settings/plugins/keyfile/Makefile src/settings/plugins/keyfile/tests/Makefile src/settings/plugins/keyfile/tests/keyfiles/Makefile src/settings/plugins/example/Makefile src/platform/Makefile src/platform/tests/Makefile src/rdisc/Makefile src/rdisc/tests/Makefile src/devices/adsl/Makefile src/devices/wimax/Makefile src/devices/bluetooth/Makefile src/devices/team/Makefile src/devices/wifi/Makefile src/devices/wifi/tests/Makefile src/devices/wwan/Makefile libnm-core/Makefile libnm-core/tests/Makefile libnm/libnm.pc libnm/Makefile libnm/tests/Makefile libnm-util/libnm-util.pc libnm-util/Makefile libnm-util/tests/Makefile libnm-glib/libnm-glib.pc libnm-glib/libnm-glib-vpn.pc libnm-glib/Makefile libnm-glib/tests/Makefile callouts/Makefile callouts/tests/Makefile tools/Makefile clients/Makefile clients/cli/Makefile clients/tui/Makefile clients/tui/newt/Makefile initscript/RedHat/NetworkManager initscript/Debian/NetworkManager initscript/Slackware/rc.networkmanager initscript/SUSE/networkmanager initscript/Arch/networkmanager initscript/Mandriva/networkmanager initscript/linexa/networkmanager introspection/Makefile introspection/all.xml man/Makefile man/NetworkManager.conf.xml man/nm-system-settings.conf.5 man/nm-online.1 man/nmcli.1 man/nmtui.1 po/Makefile.in policy/Makefile policy/org.freedesktop.NetworkManager.policy.in data/Makefile docs/Makefile docs/api/Makefile docs/api/version.xml docs/libnm-glib/Makefile docs/libnm-glib/version.xml docs/libnm-util/Makefile docs/libnm-util/version.xml docs/libnm/Makefile docs/libnm/version.xml NetworkManager.pc examples/Makefile examples/shell/Makefile examples/python/Makefile examples/python/dbus/Makefile examples/python/gi/Makefile examples/ruby/Makefile examples/C/Makefile examples/C/glib/Makefile examples/C/qt/Makefile examples/dispatcher/Makefile vapi/Makefile" @@ -26415,7 +27019,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 NetworkManager $as_me 1.0.6, which was +This file was extended by NetworkManager $as_me 1.0.8, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -26481,7 +27085,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -NetworkManager config.status 1.0.6 +NetworkManager config.status 1.0.8 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -26616,6 +27220,7 @@ enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' +shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' @@ -26665,10 +27270,13 @@ compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' +lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' +lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' @@ -26733,7 +27341,8 @@ finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' -sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`' +configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' +configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' @@ -26838,9 +27447,12 @@ CFLAGS \ compiler \ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ +lt_cv_sys_global_symbol_to_import \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ +lt_cv_nm_interface \ nm_file_list_spec \ +lt_cv_truncate_bin \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_pic \ lt_prog_compiler_wl \ @@ -26906,7 +27518,7 @@ postdeps_CXX \ compiler_lib_search_path_CXX; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -26933,7 +27545,8 @@ postinstall_cmds \ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ -sys_lib_dlsearch_path_spec \ +configure_time_dlsearch_path \ +configure_time_lt_sys_library_path \ reload_cmds_CXX \ old_archive_cmds_CXX \ old_archive_from_new_cmds_CXX \ @@ -26947,7 +27560,7 @@ prelink_cmds_CXX \ postlink_cmds_CXX; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -26956,19 +27569,16 @@ postlink_cmds_CXX; do done ac_aux_dir='$ac_aux_dir' -xsi_shell='$xsi_shell' -lt_shell_append='$lt_shell_append' -# See if we are running on zsh, and set the options which allow our +# See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}" ; then +if test -n "\${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' - TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile' @@ -26998,6 +27608,7 @@ do "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; + "include/nm-version-macros.h") CONFIG_FILES="$CONFIG_FILES include/nm-version-macros.h" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "src/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/tests/Makefile" ;; "src/tests/config/Makefile") CONFIG_FILES="$CONFIG_FILES src/tests/config/Makefile" ;; @@ -27005,6 +27616,7 @@ do "src/dhcp-manager/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/dhcp-manager/tests/Makefile" ;; "src/dnsmasq-manager/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/dnsmasq-manager/tests/Makefile" ;; "src/supplicant-manager/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/supplicant-manager/tests/Makefile" ;; + "src/supplicant-manager/tests/certs/Makefile") CONFIG_FILES="$CONFIG_FILES src/supplicant-manager/tests/certs/Makefile" ;; "src/ppp-manager/Makefile") CONFIG_FILES="$CONFIG_FILES src/ppp-manager/Makefile" ;; "src/settings/plugins/Makefile") CONFIG_FILES="$CONFIG_FILES src/settings/plugins/Makefile" ;; "src/settings/plugins/ifupdown/Makefile") CONFIG_FILES="$CONFIG_FILES src/settings/plugins/ifupdown/Makefile" ;; @@ -27032,14 +27644,12 @@ do "src/devices/wifi/Makefile") CONFIG_FILES="$CONFIG_FILES src/devices/wifi/Makefile" ;; "src/devices/wifi/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/devices/wifi/tests/Makefile" ;; "src/devices/wwan/Makefile") CONFIG_FILES="$CONFIG_FILES src/devices/wwan/Makefile" ;; - "libnm-core/nm-version.h") CONFIG_FILES="$CONFIG_FILES libnm-core/nm-version.h" ;; "libnm-core/Makefile") CONFIG_FILES="$CONFIG_FILES libnm-core/Makefile" ;; "libnm-core/tests/Makefile") CONFIG_FILES="$CONFIG_FILES libnm-core/tests/Makefile" ;; "libnm/libnm.pc") CONFIG_FILES="$CONFIG_FILES libnm/libnm.pc" ;; "libnm/Makefile") CONFIG_FILES="$CONFIG_FILES libnm/Makefile" ;; "libnm/tests/Makefile") CONFIG_FILES="$CONFIG_FILES libnm/tests/Makefile" ;; "libnm-util/libnm-util.pc") CONFIG_FILES="$CONFIG_FILES libnm-util/libnm-util.pc" ;; - "libnm-util/nm-version.h") CONFIG_FILES="$CONFIG_FILES libnm-util/nm-version.h" ;; "libnm-util/Makefile") CONFIG_FILES="$CONFIG_FILES libnm-util/Makefile" ;; "libnm-util/tests/Makefile") CONFIG_FILES="$CONFIG_FILES libnm-util/tests/Makefile" ;; "libnm-glib/libnm-glib.pc") CONFIG_FILES="$CONFIG_FILES libnm-glib/libnm-glib.pc" ;; @@ -27784,55 +28394,53 @@ $as_echo X"$file" | ;; "libtool":C) - # See if we are running on zsh, and set the options which allow our + # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then + if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi - cfgfile="${ofile}T" + cfgfile=${ofile}T trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# 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. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 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. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. # -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. # -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program. If not, see <http://www.gnu.org/licenses/>. # The names of the tagged configurations supported by this script. -available_tags="CXX " +available_tags='CXX ' + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} # ### BEGIN LIBTOOL CONFIG @@ -27852,6 +28460,9 @@ pic_mode=$pic_mode # Whether or not to optimize for fast installation. fast_install=$enable_fast_install +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec=$shared_archive_member_spec + # Shell to use when invoking shell scripts. SHELL=$lt_SHELL @@ -27969,18 +28580,27 @@ global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe # Transform the output of nm in a proper C declaration. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import + # Transform the output of nm in a C name address pair. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix +# The name lister interface. +nm_interface=$lt_lt_cv_nm_interface + # Specify filename containing input files for \$NM. nm_file_list_spec=$lt_nm_file_list_spec -# The root where to search for dependent libraries,and in which our libraries should be installed. +# The root where to search for dependent libraries,and where our libraries should be installed. lt_sysroot=$lt_sysroot +# Command to truncate a binary pipe. +lt_truncate_bin=$lt_lt_cv_truncate_bin + # The name of the directory that contains temporary libtool files. objdir=$objdir @@ -28071,8 +28691,11 @@ hardcode_into_libs=$hardcode_into_libs # Compile-time system search path for libraries. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path # Whether dlopen is supported. dlopen_support=$enable_dlopen @@ -28165,13 +28788,13 @@ hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the +# "absolute",i.e impossible to change by setting \$shlibpath_var if the # library is relocated. hardcode_direct_absolute=$hardcode_direct_absolute @@ -28237,13 +28860,72 @@ compiler_lib_search_path=$lt_compiler_lib_search_path _LT_EOF + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then +if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -28252,7 +28934,7 @@ _LT_EOF esac -ltmain="$ac_aux_dir/ltmain.sh" +ltmain=$ac_aux_dir/ltmain.sh # We use sed instead of cat because bash on DJGPP gets confused if @@ -28262,165 +28944,6 @@ ltmain="$ac_aux_dir/ltmain.sh" sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) - if test x"$xsi_shell" = xyes; then - sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ -func_dirname ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_basename ()$/,/^} # func_basename /c\ -func_basename ()\ -{\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ -func_dirname_and_basename ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ -func_stripname ()\ -{\ -\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ -\ # positional parameters, so assign one to ordinary parameter first.\ -\ func_stripname_result=${3}\ -\ func_stripname_result=${func_stripname_result#"${1}"}\ -\ func_stripname_result=${func_stripname_result%"${2}"}\ -} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ -func_split_long_opt ()\ -{\ -\ func_split_long_opt_name=${1%%=*}\ -\ func_split_long_opt_arg=${1#*=}\ -} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ -func_split_short_opt ()\ -{\ -\ func_split_short_opt_arg=${1#??}\ -\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ -} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ -func_lo2o ()\ -{\ -\ case ${1} in\ -\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ -\ *) func_lo2o_result=${1} ;;\ -\ esac\ -} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_xform ()$/,/^} # func_xform /c\ -func_xform ()\ -{\ - func_xform_result=${1%.*}.lo\ -} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_arith ()$/,/^} # func_arith /c\ -func_arith ()\ -{\ - func_arith_result=$(( $* ))\ -} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_len ()$/,/^} # func_len /c\ -func_len ()\ -{\ - func_len_result=${#1}\ -} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - -fi - -if test x"$lt_shell_append" = xyes; then - sed -e '/^func_append ()$/,/^} # func_append /c\ -func_append ()\ -{\ - eval "${1}+=\\${2}"\ -} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ -func_append_quoted ()\ -{\ -\ func_quote_for_eval "${2}"\ -\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ -} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 -$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} -fi - - mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" @@ -28507,13 +29030,13 @@ hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct_CXX -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the +# "absolute",i.e impossible to change by setting \$shlibpath_var if the # library is relocated. hardcode_direct_absolute=$hardcode_direct_absolute_CXX diff --git a/configure.ac b/configure.ac index 74dacb63..9c461ab1 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ([2.63]) dnl The NM version number m4_define([nm_major_version], [1]) m4_define([nm_minor_version], [0]) -m4_define([nm_micro_version], [6]) +m4_define([nm_micro_version], [8]) m4_define([nm_version], [nm_major_version.nm_minor_version.nm_micro_version]) m4_define([nm_git_sha], [m4_esyscmd([ ( [ -d ./.git/ ] && [ "$(readlink -f ./.git/)" = "$(readlink -f "$(git rev-parse --git-dir 2>/dev/null)" 2>/dev/null)" ] && git rev-parse --verify -q HEAD 2>/dev/null ) || true ])]) @@ -956,6 +956,7 @@ AM_CONDITIONAL(SETTING_DOCS_AVAILABLE, test "$build_setting_docs" = "yes" -o "$h AC_CONFIG_FILES([ Makefile include/Makefile +include/nm-version-macros.h src/Makefile src/tests/Makefile src/tests/config/Makefile @@ -963,6 +964,7 @@ src/dhcp-manager/Makefile src/dhcp-manager/tests/Makefile src/dnsmasq-manager/tests/Makefile src/supplicant-manager/tests/Makefile +src/supplicant-manager/tests/certs/Makefile src/ppp-manager/Makefile src/settings/plugins/Makefile src/settings/plugins/ifupdown/Makefile @@ -990,14 +992,12 @@ src/devices/team/Makefile src/devices/wifi/Makefile src/devices/wifi/tests/Makefile src/devices/wwan/Makefile -libnm-core/nm-version.h libnm-core/Makefile libnm-core/tests/Makefile libnm/libnm.pc libnm/Makefile libnm/tests/Makefile libnm-util/libnm-util.pc -libnm-util/nm-version.h libnm-util/Makefile libnm-util/tests/Makefile libnm-glib/libnm-glib.pc diff --git a/data/84-nm-drivers.rules b/data/84-nm-drivers.rules new file mode 100644 index 00000000..d246ef6c --- /dev/null +++ b/data/84-nm-drivers.rules @@ -0,0 +1,12 @@ +# Do not modify this file, it will get overwritten on updates. +# To override or extend the rules place a file in /etc/udev/rules.d + +SUBSYSTEM!="net", GOTO="nm_drivers_end" +ACTION!="add|change", GOTO="nm_drivers_end" + +# Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?) +ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end" +DRIVERS=="?*", GOTO="nm_drivers_end" +PROGRAM="/bin/sh -c 'ethtool -i $1 | sed -n s/^driver:\ //p' -- $env{INTERFACE}", RESULT=="?*", ENV{ID_NET_DRIVER}="%c" + +LABEL="nm_drivers_end" diff --git a/data/85-nm-unmanaged.rules b/data/85-nm-unmanaged.rules index 9d2ad773..887ab845 100644 --- a/data/85-nm-unmanaged.rules +++ b/data/85-nm-unmanaged.rules @@ -1,15 +1,9 @@ -# Do not modify this file, it will get overwriten on updates. +# Do not modify this file, it will get overwritten on updates. # To override or extend the rules place a file in /etc/udev/rules.d SUBSYSTEM!="net", GOTO="nm_unmanaged_end" ACTION!="add|change", GOTO="nm_unmanaged_end" -# Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?) -ENV{ID_NET_DRIVER}=="?*", GOTO="nm_unmanaged_driver" -DRIVERS=="?*", GOTO="nm_unmanaged_driver" -PROGRAM="/bin/sh -c '/usr/sbin/ethtool -i $1 | /bin/sed -n s/^driver:\ //p' -- $env{INTERFACE}", RESULT=="?*", ENV{ID_NET_DRIVER}="%c" -LABEL="nm_unmanaged_driver" - # VirtualBox host networking. Out-of-tree driver that looks like an ordinary # Ethernet. No parent device (lives in /virtual/), no support for ethtool # to identify the driver, MAC address defaults to 08:00:27:, but can be diff --git a/data/Makefile.am b/data/Makefile.am index 64ff3376..ce059fcb 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -37,6 +37,7 @@ examples_DATA = server.conf if WITH_UDEV_DIR udevrulesdir = $(UDEV_DIR)/rules.d udevrules_DATA = \ + 84-nm-drivers.rules \ 85-nm-unmanaged.rules endif @@ -57,6 +58,7 @@ EXTRA_DIST = \ NetworkManager-wait-online-systemd-pre200.service.in \ NetworkManager-dispatcher.service.in \ org.freedesktop.NetworkManager.service.in \ + 84-nm-drivers.rules \ 85-nm-unmanaged.rules \ server.conf.in diff --git a/data/Makefile.in b/data/Makefile.in index 89a0749b..db9db2f9 100644 --- a/data/Makefile.in +++ b/data/Makefile.in @@ -286,6 +286,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -438,6 +439,7 @@ examplesdir = $(docdir)/examples examples_DATA = server.conf @WITH_UDEV_DIR_TRUE@udevrulesdir = $(UDEV_DIR)/rules.d @WITH_UDEV_DIR_TRUE@udevrules_DATA = \ +@WITH_UDEV_DIR_TRUE@ 84-nm-drivers.rules \ @WITH_UDEV_DIR_TRUE@ 85-nm-unmanaged.rules edit = sed \ @@ -454,6 +456,7 @@ EXTRA_DIST = \ NetworkManager-wait-online-systemd-pre200.service.in \ NetworkManager-dispatcher.service.in \ org.freedesktop.NetworkManager.service.in \ + 84-nm-drivers.rules \ 85-nm-unmanaged.rules \ server.conf.in diff --git a/data/NetworkManager.service.in b/data/NetworkManager.service.in index b2e61ffb..980573d3 100644 --- a/data/NetworkManager.service.in +++ b/data/NetworkManager.service.in @@ -6,6 +6,7 @@ Before=network.target @DISTRO_NETWORK_SERVICE@ [Service] Type=dbus BusName=org.freedesktop.NetworkManager +ExecReload=/bin/kill -HUP $MAINPID ExecStart=@sbindir@/NetworkManager --no-daemon Restart=on-failure # NM doesn't want systemd to kill its children for it diff --git a/docs/Makefile.in b/docs/Makefile.in index 6d65e596..b66cb0b4 100644 --- a/docs/Makefile.in +++ b/docs/Makefile.in @@ -313,6 +313,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/docs/api/Makefile.in b/docs/api/Makefile.in index 891f0402..ef861209 100644 --- a/docs/api/Makefile.in +++ b/docs/api/Makefile.in @@ -263,6 +263,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/docs/api/html/index.html b/docs/api/html/index.html index 5656932f..3e41a4ce 100644 --- a/docs/api/html/index.html +++ b/docs/api/html/index.html @@ -14,7 +14,7 @@ <div class="titlepage"> <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">NetworkManager D-Bus Reference Manual</p></th></tr></table></div> -<div><p class="releaseinfo">Version 1.0.6 +<div><p class="releaseinfo">Version 1.0.8 </p></div> <div><p class="copyright">Copyright © 2012 The NetworkManager Authors</p></div> <div><div class="legalnotice"> diff --git a/docs/api/html/ref-settings.html b/docs/api/html/ref-settings.html index 501656bc..24add750 100644 --- a/docs/api/html/ref-settings.html +++ b/docs/api/html/ref-settings.html @@ -1810,7 +1810,7 @@ <td><pre class="screen">wake-on-lan</pre></td> <td><pre class="screen">uint32</pre></td> <td><pre class="screen">1</pre></td> -<td>The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40).</td> +<td>The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40) or the special values NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (0x1) (to use global settings) and NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (0x8000) (to disable management of Wake-on-LAN in NetworkManager).</td> </tr> <tr> <td><pre class="screen">wake-on-lan-password</pre></td> diff --git a/docs/api/html/spec.html b/docs/api/html/spec.html index 7f7559c5..8d8f7dfa 100644 --- a/docs/api/html/spec.html +++ b/docs/api/html/spec.html @@ -1,4 +1,4 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ascii" /><title>NetworkManager D-Bus Interface Specification version 1.0.6</title><style type="text/css"> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ascii" /><title>NetworkManager D-Bus Interface Specification version 1.0.8</title><style type="text/css"> body { font-family: sans-serif; @@ -97,7 +97,7 @@ margin-right: 4em; } - </style></head><body><h1 class="topbox">NetworkManager D-Bus Interface Specification</h1><h2>Version 1.0.6</h2><div>Copyright (C) 2008 - 2011 Red Hat, Inc.</div><div>Copyright (C) 2008 - 2009 Novell, Inc.</div><div class="license"> + </style></head><body><h1 class="topbox">NetworkManager D-Bus Interface Specification</h1><h2>Version 1.0.8</h2><div>Copyright (C) 2008 - 2011 Red Hat, Inc.</div><div>Copyright (C) 2008 - 2009 Novell, Inc.</div><div class="license"> <p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or @@ -255,7 +255,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</ WIFI, BT, MB, DHCP4, DHCP6, PPP, WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT, AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX, INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE, DBUS_PROPS, - TEAM, CONCHECK, DCB, DISPATCH]. + TEAM, CONCHECK, DCB, DISPATCH, AUDIT]. In addition to these domains, the following special domains can be used: [NONE, ALL, DEFAULT, DHCP, IP]. You can also specify that some domains should log at a different level from the default by appending a colon (':') diff --git a/docs/api/settings-spec.xml b/docs/api/settings-spec.xml index 6f8645a7..5247d409 100644 --- a/docs/api/settings-spec.xml +++ b/docs/api/settings-spec.xml @@ -264,7 +264,7 @@ <row><entry><screen>s390-options</screen></entry><entry><screen>dict of string to string</screen></entry><entry><screen>{}</screen></entry><entry>Dictionary of key/value pairs of s390-specific device options. Both keys and values must be strings. Allowed keys include "portno", "layer2", "portname", "protocol", among others. Key names must contain only alphanumeric characters (ie, [a-zA-Z0-9]).</entry></row> <row><entry><screen>s390-subchannels</screen></entry><entry><screen>array of string</screen></entry><entry><screen>[]</screen></entry><entry>Identifies specific subchannels that this network device uses for communication with z/VM or s390 host. Like the "mac-address" property for non-z/VM devices, this property can be used to ensure this connection only applies to the network device that uses these subchannels. The list should contain exactly 3 strings, and each string may only be composed of hexadecimal characters and the period (.) character.</entry></row> <row><entry><screen>speed</screen></entry><entry><screen>uint32</screen></entry><entry><screen>0</screen></entry><entry>If non-zero, request that the device use only the specified speed. In Mbit/s, ie 100 == 100Mbit/s.</entry></row> - <row><entry><screen>wake-on-lan</screen></entry><entry><screen>uint32</screen></entry><entry><screen>1</screen></entry><entry>The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40).</entry></row> + <row><entry><screen>wake-on-lan</screen></entry><entry><screen>uint32</screen></entry><entry><screen>1</screen></entry><entry>The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40) or the special values NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (0x1) (to use global settings) and NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (0x8000) (to disable management of Wake-on-LAN in NetworkManager).</entry></row> <row><entry><screen>wake-on-lan-password</screen></entry><entry><screen>string</screen></entry><entry><screen/></entry><entry>If specified, the password used with magic-packet-based Wake-on-LAN, represented as an Ethernet MAC address. If NULL, no password will be required.</entry></row> </tbody></tgroup></table></para> <para><table><title>802-11-wireless setting</title><tgroup cols="4"><thead><row><entry>Key Name</entry><entry>Value Type</entry><entry>Default Value</entry><entry>Value Description</entry></row></thead><tbody> diff --git a/docs/api/spec.html b/docs/api/spec.html index 7f7559c5..8d8f7dfa 100644 --- a/docs/api/spec.html +++ b/docs/api/spec.html @@ -1,4 +1,4 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ascii" /><title>NetworkManager D-Bus Interface Specification version 1.0.6</title><style type="text/css"> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ascii" /><title>NetworkManager D-Bus Interface Specification version 1.0.8</title><style type="text/css"> body { font-family: sans-serif; @@ -97,7 +97,7 @@ margin-right: 4em; } - </style></head><body><h1 class="topbox">NetworkManager D-Bus Interface Specification</h1><h2>Version 1.0.6</h2><div>Copyright (C) 2008 - 2011 Red Hat, Inc.</div><div>Copyright (C) 2008 - 2009 Novell, Inc.</div><div class="license"> + </style></head><body><h1 class="topbox">NetworkManager D-Bus Interface Specification</h1><h2>Version 1.0.8</h2><div>Copyright (C) 2008 - 2011 Red Hat, Inc.</div><div>Copyright (C) 2008 - 2009 Novell, Inc.</div><div class="license"> <p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or @@ -255,7 +255,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</ WIFI, BT, MB, DHCP4, DHCP6, PPP, WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT, AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX, INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE, DBUS_PROPS, - TEAM, CONCHECK, DCB, DISPATCH]. + TEAM, CONCHECK, DCB, DISPATCH, AUDIT]. In addition to these domains, the following special domains can be used: [NONE, ALL, DEFAULT, DHCP, IP]. You can also specify that some domains should log at a different level from the default by appending a colon (':') diff --git a/docs/api/version.xml b/docs/api/version.xml index af0b7ddb..b0f3d96f 100644 --- a/docs/api/version.xml +++ b/docs/api/version.xml @@ -1 +1 @@ -1.0.6 +1.0.8 diff --git a/docs/libnm-glib/Makefile.am b/docs/libnm-glib/Makefile.am index 5c3c492f..2d788561 100644 --- a/docs/libnm-glib/Makefile.am +++ b/docs/libnm-glib/Makefile.am @@ -53,6 +53,8 @@ extra_files = libnm-glib.png # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = \ + -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-util \ -I$(top_builddir)/libnm-util \ -I$(top_srcdir)/libnm-glib \ diff --git a/docs/libnm-glib/Makefile.in b/docs/libnm-glib/Makefile.in index 8c0dbdce..a9aa4a0c 100644 --- a/docs/libnm-glib/Makefile.in +++ b/docs/libnm-glib/Makefile.in @@ -260,6 +260,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -454,6 +455,8 @@ extra_files = libnm-glib.png # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = \ + -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-util \ -I$(top_builddir)/libnm-util \ -I$(top_srcdir)/libnm-glib \ diff --git a/docs/libnm-glib/html/NMActiveConnection.html b/docs/libnm-glib/html/NMActiveConnection.html index e14a0408..51037dca 100644 --- a/docs/libnm-glib/html/NMActiveConnection.html +++ b/docs/libnm-glib/html/NMActiveConnection.html @@ -655,7 +655,7 @@ nm_active_connection_get_ip4_config (<em class="parameter"><code><a class="link" <div class="refsect3"> <a name="id-1.3.3.8.12.6"></a><h4>Returns</h4> <p> the <a class="link" href="NMIP4Config.html" title="NMIP4Config"><span class="type">NMIP4Config</span></a>, or <code class="literal">NULL</code> if the -connection is not in the <code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code> +connection is not in the <a href="https://developer.gnome.org/libnm-util/0.9/libnm-util-NetworkManager.html#NM-ACTIVE-CONNECTION-STATE-ACTIVATED:CAPS"><code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code></a> state. </p> <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> </div> @@ -687,7 +687,7 @@ nm_active_connection_get_dhcp4_config (<em class="parameter"><code><a class="lin <a name="id-1.3.3.8.13.6"></a><h4>Returns</h4> <p> the <a class="link" href="NMDHCP4Config.html" title="NMDHCP4Config"><span class="type">NMDHCP4Config</span></a>, or <code class="literal">NULL</code> if the connection does not use DHCP, or is not in the -<code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code> state. </p> +<a href="https://developer.gnome.org/libnm-util/0.9/libnm-util-NetworkManager.html#NM-ACTIVE-CONNECTION-STATE-ACTIVATED:CAPS"><code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code></a> state. </p> <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> </div> <p class="since">Since: 0.9.10</p> @@ -743,7 +743,7 @@ nm_active_connection_get_ip6_config (<em class="parameter"><code><a class="link" <div class="refsect3"> <a name="id-1.3.3.8.15.6"></a><h4>Returns</h4> <p> the <a class="link" href="NMIP6Config.html" title="NMIP6Config"><span class="type">NMIP6Config</span></a>, or <code class="literal">NULL</code> if the -connection is not in the <code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code> +connection is not in the <a href="https://developer.gnome.org/libnm-util/0.9/libnm-util-NetworkManager.html#NM-ACTIVE-CONNECTION-STATE-ACTIVATED:CAPS"><code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code></a> state. </p> <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> </div> @@ -775,7 +775,7 @@ nm_active_connection_get_dhcp6_config (<em class="parameter"><code><a class="lin <a name="id-1.3.3.8.16.6"></a><h4>Returns</h4> <p> the <a class="link" href="NMDHCP6Config.html" title="NMDHCP6Config"><span class="type">NMDHCP6Config</span></a>, or <code class="literal">NULL</code> if the connection does not use DHCPv6, or is not in the -<code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code> state. </p> +<a href="https://developer.gnome.org/libnm-util/0.9/libnm-util-NetworkManager.html#NM-ACTIVE-CONNECTION-STATE-ACTIVATED:CAPS"><code class="literal">NM_ACTIVE_CONNECTION_STATE_ACTIVATED</code></a> state. </p> <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> </div> <p class="since">Since: 0.9.10</p> diff --git a/docs/libnm-glib/html/NMSecretAgent.html b/docs/libnm-glib/html/NMSecretAgent.html index 354c1209..8acd02c1 100644 --- a/docs/libnm-glib/html/NMSecretAgent.html +++ b/docs/libnm-glib/html/NMSecretAgent.html @@ -289,7 +289,7 @@ something like this:</p> <span class="normal"> <a href="https://developer.gnome.org/libnm-util/0.9/NMSettingWirelessSecurity.html#NM-SETTING-WIRELESS-SECURITY-PSK:CAPS">NM_SETTING_WIRELESS_SECURITY_PSK</a></span><span class="symbol">,</span><span class="normal"> </span><span class="string">"my really cool PSK"</span><span class="symbol">,</span> <span class="normal"> NULL</span><span class="symbol">);</span> <span class="function"><a href="https://developer.gnome.org/libnm-util/0.9/NMConnection.html#nm-connection-add-setting">nm_connection_add_setting</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">secrets</span><span class="symbol">,</span><span class="normal"> </span><span class="function">NM_SETTING</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">s_wsec</span><span class="symbol">));</span> -<span class="normal">secrets_hash </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="https://developer.gnome.org/libnm-util/0.9/NMConnection.html#nm-connection-to-hash">nm_connection_to_hash</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">secrets</span><span class="symbol">,</span><span class="normal"> NM_SETTING_HASH_FLAG_ALL</span><span class="symbol">);</span> +<span class="normal">secrets_hash </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="https://developer.gnome.org/libnm-util/0.9/NMConnection.html#nm-connection-to-hash">nm_connection_to_hash</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">secrets</span><span class="symbol">,</span><span class="normal"> <a href="https://developer.gnome.org/libnm-util/0.9/NMSetting.html#NM-SETTING-HASH-FLAG-ALL:CAPS">NM_SETTING_HASH_FLAG_ALL</a></span><span class="symbol">);</span> <span class="symbol">(</span><span class="normal">call the NMSecretAgentGetSecretsFunc </span><span class="usertype">with</span><span class="normal"> secrets_hash</span><span class="symbol">)</span> diff --git a/docs/libnm-glib/html/index.html b/docs/libnm-glib/html/index.html index 6a134292..c2803d06 100644 --- a/docs/libnm-glib/html/index.html +++ b/docs/libnm-glib/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libnm-glib Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for libnm-glib 1.0.6 + for libnm-glib 1.0.8 The latest version of this documentation can be found on-line at <a class="ulink" href="https://developer.gnome.org/libnm-glib/0.9/" target="_top">https://developer.gnome.org/libnm-glib/0.9/</a>. diff --git a/docs/libnm-glib/version.xml b/docs/libnm-glib/version.xml index af0b7ddb..b0f3d96f 100644 --- a/docs/libnm-glib/version.xml +++ b/docs/libnm-glib/version.xml @@ -1 +1 @@ -1.0.6 +1.0.8 diff --git a/docs/libnm-util/Makefile.in b/docs/libnm-util/Makefile.in index 1d2ea506..fd3b9f4e 100644 --- a/docs/libnm-util/Makefile.in +++ b/docs/libnm-util/Makefile.in @@ -260,6 +260,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/docs/libnm-util/html/NMConnection.html b/docs/libnm-util/html/NMConnection.html index 3ef46ffb..cd3a6330 100644 --- a/docs/libnm-util/html/NMConnection.html +++ b/docs/libnm-util/html/NMConnection.html @@ -598,7 +598,7 @@ </div> <div class="refsect1"> <a name="NMConnection.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMConnectionError GObject <span class="lineart">╰──</span> NMConnection diff --git a/docs/libnm-util/html/NMSetting.html b/docs/libnm-util/html/NMSetting.html index 3ce89683..83dc3b25 100644 --- a/docs/libnm-util/html/NMSetting.html +++ b/docs/libnm-util/html/NMSetting.html @@ -271,7 +271,7 @@ </div> <div class="refsect1"> <a name="NMSetting.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSettingCompareFlags <span class="lineart">├──</span> NMSettingDiffResult <span class="lineart">├──</span> NMSettingError diff --git a/docs/libnm-util/html/NMSetting8021x.html b/docs/libnm-util/html/NMSetting8021x.html index 05d9516c..c36eaff5 100644 --- a/docs/libnm-util/html/NMSetting8021x.html +++ b/docs/libnm-util/html/NMSetting8021x.html @@ -923,7 +923,7 @@ </div> <div class="refsect1"> <a name="NMSetting8021x.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSetting8021xCKFormat <span class="lineart">├──</span> NMSetting8021xCKScheme <span class="lineart">╰──</span> NMSetting8021xError diff --git a/docs/libnm-util/html/NMSettingAdsl.html b/docs/libnm-util/html/NMSettingAdsl.html index 165177b5..a1ecee9b 100644 --- a/docs/libnm-util/html/NMSettingAdsl.html +++ b/docs/libnm-util/html/NMSettingAdsl.html @@ -236,7 +236,7 @@ </div> <div class="refsect1"> <a name="NMSettingAdsl.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingAdslError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingBluetooth.html b/docs/libnm-util/html/NMSettingBluetooth.html index b011f98f..885a378b 100644 --- a/docs/libnm-util/html/NMSettingBluetooth.html +++ b/docs/libnm-util/html/NMSettingBluetooth.html @@ -139,7 +139,7 @@ </div> <div class="refsect1"> <a name="NMSettingBluetooth.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingBluetoothError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingBond.html b/docs/libnm-util/html/NMSettingBond.html index 8d0e4d48..ac2fdc8e 100644 --- a/docs/libnm-util/html/NMSettingBond.html +++ b/docs/libnm-util/html/NMSettingBond.html @@ -244,7 +244,7 @@ </div> <div class="refsect1"> <a name="NMSettingBond.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingBondError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingBridge.html b/docs/libnm-util/html/NMSettingBridge.html index 71cdd58f..6eb6900c 100644 --- a/docs/libnm-util/html/NMSettingBridge.html +++ b/docs/libnm-util/html/NMSettingBridge.html @@ -233,7 +233,7 @@ </div> <div class="refsect1"> <a name="NMSettingBridge.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingBridgeError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingBridgePort.html b/docs/libnm-util/html/NMSettingBridgePort.html index bc204181..53126856 100644 --- a/docs/libnm-util/html/NMSettingBridgePort.html +++ b/docs/libnm-util/html/NMSettingBridgePort.html @@ -148,7 +148,7 @@ </div> <div class="refsect1"> <a name="NMSettingBridgePort.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingBridgePortError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingCdma.html b/docs/libnm-util/html/NMSettingCdma.html index 43980d9d..c96324ad 100644 --- a/docs/libnm-util/html/NMSettingCdma.html +++ b/docs/libnm-util/html/NMSettingCdma.html @@ -165,7 +165,7 @@ </div> <div class="refsect1"> <a name="NMSettingCdma.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingCdmaError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingConnection.html b/docs/libnm-util/html/NMSettingConnection.html index ba73eb00..db0dc6ed 100644 --- a/docs/libnm-util/html/NMSettingConnection.html +++ b/docs/libnm-util/html/NMSettingConnection.html @@ -403,7 +403,7 @@ </div> <div class="refsect1"> <a name="NMSettingConnection.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingConnectionError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingDcb.html b/docs/libnm-util/html/NMSettingDcb.html index 5cd1cd53..fd94edf0 100644 --- a/docs/libnm-util/html/NMSettingDcb.html +++ b/docs/libnm-util/html/NMSettingDcb.html @@ -418,7 +418,7 @@ </div> <div class="refsect1"> <a name="NMSettingDcb.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSettingDcbError <span class="lineart">╰──</span> NMSettingDcbFlags GObject diff --git a/docs/libnm-util/html/NMSettingGeneric.html b/docs/libnm-util/html/NMSettingGeneric.html index b6cc9066..18fbdb85 100644 --- a/docs/libnm-util/html/NMSettingGeneric.html +++ b/docs/libnm-util/html/NMSettingGeneric.html @@ -84,7 +84,7 @@ </div> <div class="refsect1"> <a name="NMSettingGeneric.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingGenericError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingGsm.html b/docs/libnm-util/html/NMSettingGsm.html index 1e725b02..4a1d9629 100644 --- a/docs/libnm-util/html/NMSettingGsm.html +++ b/docs/libnm-util/html/NMSettingGsm.html @@ -296,7 +296,7 @@ </div> <div class="refsect1"> <a name="NMSettingGsm.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSettingGsmError <span class="lineart">├──</span> NMSettingGsmNetworkBand <span class="lineart">╰──</span> NMSettingGsmNetworkType diff --git a/docs/libnm-util/html/NMSettingIP4Config.html b/docs/libnm-util/html/NMSettingIP4Config.html index 08d29926..59c89182 100644 --- a/docs/libnm-util/html/NMSettingIP4Config.html +++ b/docs/libnm-util/html/NMSettingIP4Config.html @@ -693,10 +693,10 @@ </div> <div class="refsect1"> <a name="NMSettingIP4Config.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a> +<pre class="screen"> GBoxed <span class="lineart">├──</span> NMIP4Address <span class="lineart">╰──</span> NMIP4Route - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> + GEnum <span class="lineart">╰──</span> NMSettingIP4ConfigError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingIP6Config.html b/docs/libnm-util/html/NMSettingIP6Config.html index eb42de11..76fd5ef4 100644 --- a/docs/libnm-util/html/NMSettingIP6Config.html +++ b/docs/libnm-util/html/NMSettingIP6Config.html @@ -677,10 +677,10 @@ </div> <div class="refsect1"> <a name="NMSettingIP6Config.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a> +<pre class="screen"> GBoxed <span class="lineart">├──</span> NMIP6Address <span class="lineart">╰──</span> NMIP6Route - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> + GEnum <span class="lineart">├──</span> NMSettingIP6ConfigError <span class="lineart">╰──</span> NMSettingIP6ConfigPrivacy GObject diff --git a/docs/libnm-util/html/NMSettingInfiniband.html b/docs/libnm-util/html/NMSettingInfiniband.html index 82db623e..de8975e2 100644 --- a/docs/libnm-util/html/NMSettingInfiniband.html +++ b/docs/libnm-util/html/NMSettingInfiniband.html @@ -182,7 +182,7 @@ </div> <div class="refsect1"> <a name="NMSettingInfiniband.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingInfinibandError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingOlpcMesh.html b/docs/libnm-util/html/NMSettingOlpcMesh.html index d9a5d1d0..fbcb946d 100644 --- a/docs/libnm-util/html/NMSettingOlpcMesh.html +++ b/docs/libnm-util/html/NMSettingOlpcMesh.html @@ -148,7 +148,7 @@ </div> <div class="refsect1"> <a name="NMSettingOlpcMesh.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingOlpcMeshError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingPPP.html b/docs/libnm-util/html/NMSettingPPP.html index c66bd595..543868a4 100644 --- a/docs/libnm-util/html/NMSettingPPP.html +++ b/docs/libnm-util/html/NMSettingPPP.html @@ -404,7 +404,7 @@ that require PPP to deliver IP capability</p> </div> <div class="refsect1"> <a name="NMSettingPPP.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingPPPError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingPPPOE.html b/docs/libnm-util/html/NMSettingPPPOE.html index c7abaffe..0d2355a7 100644 --- a/docs/libnm-util/html/NMSettingPPPOE.html +++ b/docs/libnm-util/html/NMSettingPPPOE.html @@ -165,7 +165,7 @@ </div> <div class="refsect1"> <a name="NMSettingPPPOE.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingPPPOEError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingSerial.html b/docs/libnm-util/html/NMSettingSerial.html index 43c21e9e..b371e910 100644 --- a/docs/libnm-util/html/NMSettingSerial.html +++ b/docs/libnm-util/html/NMSettingSerial.html @@ -183,7 +183,7 @@ serial communications</p> </div> <div class="refsect1"> <a name="NMSettingSerial.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingSerialError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingTeam.html b/docs/libnm-util/html/NMSettingTeam.html index 2e40a312..846f6179 100644 --- a/docs/libnm-util/html/NMSettingTeam.html +++ b/docs/libnm-util/html/NMSettingTeam.html @@ -131,7 +131,7 @@ </div> <div class="refsect1"> <a name="NMSettingTeam.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingTeamError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingTeamPort.html b/docs/libnm-util/html/NMSettingTeamPort.html index c08a4eb0..37a4495b 100644 --- a/docs/libnm-util/html/NMSettingTeamPort.html +++ b/docs/libnm-util/html/NMSettingTeamPort.html @@ -112,7 +112,7 @@ </div> <div class="refsect1"> <a name="NMSettingTeamPort.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingTeamPortError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingVPN.html b/docs/libnm-util/html/NMSettingVPN.html index 7f44ba65..020ab7c0 100644 --- a/docs/libnm-util/html/NMSettingVPN.html +++ b/docs/libnm-util/html/NMSettingVPN.html @@ -252,7 +252,7 @@ </div> <div class="refsect1"> <a name="NMSettingVPN.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingVpnError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingVlan.html b/docs/libnm-util/html/NMSettingVlan.html index 35e0e7a9..87465814 100644 --- a/docs/libnm-util/html/NMSettingVlan.html +++ b/docs/libnm-util/html/NMSettingVlan.html @@ -257,7 +257,7 @@ </div> <div class="refsect1"> <a name="NMSettingVlan.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSettingVlanError <span class="lineart">├──</span> NMVlanFlags <span class="lineart">╰──</span> NMVlanPriorityMap @@ -958,7 +958,7 @@ output packet headers), <a class="link" href="NMSettingVlan.html#NM-VLAN-FLAG-GV and <a class="link" href="NMSettingVlan.html#NM-VLAN-FLAG-LOOSE-BINDING:CAPS"><code class="literal">NM_VLAN_FLAG_LOOSE_BINDING</code></a> (loose binding of the interface to its master device's operating state).</p> <p>Flags: Read / Write / Construct</p> -<p>Default value: 0</p> +<p>Default value: 1</p> </div> <hr> <div class="refsect2"> diff --git a/docs/libnm-util/html/NMSettingWimax.html b/docs/libnm-util/html/NMSettingWimax.html index 1b10df76..034ebe90 100644 --- a/docs/libnm-util/html/NMSettingWimax.html +++ b/docs/libnm-util/html/NMSettingWimax.html @@ -131,7 +131,7 @@ </div> <div class="refsect1"> <a name="NMSettingWimax.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingWimaxError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingWired.html b/docs/libnm-util/html/NMSettingWired.html index 75184b1b..9a6619aa 100644 --- a/docs/libnm-util/html/NMSettingWired.html +++ b/docs/libnm-util/html/NMSettingWired.html @@ -369,7 +369,7 @@ </div> <div class="refsect1"> <a name="NMSettingWired.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingWiredError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingWireless.html b/docs/libnm-util/html/NMSettingWireless.html index 4642d621..1f1ac2c2 100644 --- a/docs/libnm-util/html/NMSettingWireless.html +++ b/docs/libnm-util/html/NMSettingWireless.html @@ -418,7 +418,7 @@ </div> <div class="refsect1"> <a name="NMSettingWireless.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingWirelessError GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm-util/html/NMSettingWirelessSecurity.html b/docs/libnm-util/html/NMSettingWirelessSecurity.html index d091dda2..36b60f5f 100644 --- a/docs/libnm-util/html/NMSettingWirelessSecurity.html +++ b/docs/libnm-util/html/NMSettingWirelessSecurity.html @@ -498,7 +498,7 @@ use WEP, LEAP, WPA or WPA2/RSN security</p> </div> <div class="refsect1"> <a name="NMSettingWirelessSecurity.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSettingWirelessSecurityError <span class="lineart">╰──</span> NMWepKeyType GObject diff --git a/docs/libnm-util/html/index.html b/docs/libnm-util/html/index.html index 453e0d98..164e6e6e 100644 --- a/docs/libnm-util/html/index.html +++ b/docs/libnm-util/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libnm-util Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for libnm-util 1.0.6 + for libnm-util 1.0.8 The latest version of this documentation can be found on-line at <a class="ulink" href="https://developer.gnome.org/libnm-util/0.9/" target="_top">https://developer.gnome.org/libnm-util/0.9/</a>. diff --git a/docs/libnm-util/html/libnm-util-nm-utils.html b/docs/libnm-util/html/libnm-util-nm-utils.html index 9507d0ab..350ba973 100644 --- a/docs/libnm-util/html/libnm-util-nm-utils.html +++ b/docs/libnm-util/html/libnm-util-nm-utils.html @@ -480,7 +480,7 @@ </div> <div class="refsect1"> <a name="libnm-util-nm-utils.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMUtilsSecurityType </pre> </div> diff --git a/docs/libnm-util/html/object-tree.html b/docs/libnm-util/html/object-tree.html index 9c2eaa40..4c668702 100644 --- a/docs/libnm-util/html/object-tree.html +++ b/docs/libnm-util/html/object-tree.html @@ -52,7 +52,7 @@ <span class="lineart">│</span> <span class="lineart">├──</span> <a class="link" href="NMSettingWirelessSecurity.html" title="NMSettingWirelessSecurity">NMSettingWirelessSecurity</a> <span class="lineart">│</span> <span class="lineart">╰──</span> <a class="link" href="NMSettingVPN.html" title="NMSettingVPN">NMSettingVPN</a> <span class="lineart">╰──</span> <a class="link" href="NMConnection.html" title="NMConnection">NMConnection</a> - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> + GEnum <span class="lineart">├──</span> <a class="link" href="NMConnection.html#NMConnectionError" title="enum NMConnectionError">NMConnectionError</a> <span class="lineart">├──</span> <a class="link" href="NMSetting8021x.html#NMSetting8021xCKFormat" title="enum NMSetting8021xCKFormat">NMSetting8021xCKFormat</a> <span class="lineart">├──</span> <a class="link" href="NMSetting8021x.html#NMSetting8021xCKScheme" title="enum NMSetting8021xCKScheme">NMSetting8021xCKScheme</a> @@ -95,7 +95,7 @@ <span class="lineart">├──</span> <a class="link" href="NMSettingVlan.html#NMVlanFlags" title="enum NMVlanFlags">NMVlanFlags</a> <span class="lineart">├──</span> <a class="link" href="NMSettingVlan.html#NMVlanPriorityMap" title="enum NMVlanPriorityMap">NMVlanPriorityMap</a> <span class="lineart">╰──</span> <a class="link" href="NMSettingWirelessSecurity.html#NMWepKeyType" title="enum NMWepKeyType">NMWepKeyType</a> - <a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a> + GBoxed <span class="lineart">├──</span> <a class="link" href="NMSettingIP4Config.html#NMIP4Address">NMIP4Address</a> <span class="lineart">├──</span> <a class="link" href="NMSettingIP4Config.html#NMIP4Route">NMIP4Route</a> <span class="lineart">├──</span> <a class="link" href="NMSettingIP6Config.html#NMIP6Address">NMIP6Address</a> diff --git a/docs/libnm-util/version.xml b/docs/libnm-util/version.xml index af0b7ddb..b0f3d96f 100644 --- a/docs/libnm-util/version.xml +++ b/docs/libnm-util/version.xml @@ -1 +1 @@ -1.0.6 +1.0.8 diff --git a/docs/libnm/Makefile.in b/docs/libnm/Makefile.in index bb41ba14..7d4cbe91 100644 --- a/docs/libnm/Makefile.in +++ b/docs/libnm/Makefile.in @@ -260,6 +260,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/docs/libnm/html/NMClient.html b/docs/libnm/html/NMClient.html index 1914ba7b..f5ad56c0 100644 --- a/docs/libnm/html/NMClient.html +++ b/docs/libnm/html/NMClient.html @@ -758,7 +758,7 @@ </div> <div class="refsect1"> <a name="NMClient.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMClientError <span class="lineart">├──</span> NMClientPermission <span class="lineart">╰──</span> NMClientPermissionResult diff --git a/docs/libnm/html/NMSetting.html b/docs/libnm/html/NMSetting.html index 43757b42..565947a4 100644 --- a/docs/libnm/html/NMSetting.html +++ b/docs/libnm/html/NMSetting.html @@ -207,10 +207,10 @@ </div> <div class="refsect1"> <a name="NMSetting.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSettingCompareFlags <span class="lineart">╰──</span> NMSettingDiffResult - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> + GFlags <span class="lineart">╰──</span> NMSettingSecretFlags GObject <span class="lineart">╰──</span> NMSetting diff --git a/docs/libnm/html/NMSetting8021x.html b/docs/libnm/html/NMSetting8021x.html index f9e3ae1b..38a438bd 100644 --- a/docs/libnm/html/NMSetting8021x.html +++ b/docs/libnm/html/NMSetting8021x.html @@ -915,7 +915,7 @@ </div> <div class="refsect1"> <a name="NMSetting8021x.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMSetting8021xCKFormat <span class="lineart">╰──</span> NMSetting8021xCKScheme GObject diff --git a/docs/libnm/html/NMSettingConnection.html b/docs/libnm/html/NMSettingConnection.html index aef02658..f6ab97cc 100644 --- a/docs/libnm/html/NMSettingConnection.html +++ b/docs/libnm/html/NMSettingConnection.html @@ -452,7 +452,7 @@ </div> <div class="refsect1"> <a name="NMSettingConnection.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingConnectionAutoconnectSlaves GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm/html/NMSettingDcb.html b/docs/libnm/html/NMSettingDcb.html index a662d108..9cafb09a 100644 --- a/docs/libnm/html/NMSettingDcb.html +++ b/docs/libnm/html/NMSettingDcb.html @@ -402,7 +402,7 @@ </div> <div class="refsect1"> <a name="NMSettingDcb.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> +<pre class="screen"> GFlags <span class="lineart">╰──</span> NMSettingDcbFlags GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm/html/NMSettingIP6Config.html b/docs/libnm/html/NMSettingIP6Config.html index 7d4408c7..0b3633d9 100644 --- a/docs/libnm/html/NMSettingIP6Config.html +++ b/docs/libnm/html/NMSettingIP6Config.html @@ -124,7 +124,7 @@ </div> <div class="refsect1"> <a name="NMSettingIP6Config.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingIP6ConfigPrivacy GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm/html/NMSettingIPConfig.html b/docs/libnm/html/NMSettingIPConfig.html index 9ec05095..35289f40 100644 --- a/docs/libnm/html/NMSettingIPConfig.html +++ b/docs/libnm/html/NMSettingIPConfig.html @@ -752,7 +752,7 @@ </div> <div class="refsect1"> <a name="NMSettingIPConfig.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a> +<pre class="screen"> GBoxed <span class="lineart">├──</span> NMIPAddress <span class="lineart">╰──</span> NMIPRoute GObject @@ -2502,7 +2502,8 @@ nm_setting_ip_config_get_address (<em class="parameter"><code><a class="link" hr <div class="refsect3"> <a name="id-1.4.17.11.54.5"></a><h4>Returns</h4> <p> the address at index <em class="parameter"><code>i</code></em> -</p> +. </p> +<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> </div> </div> <hr> @@ -2712,7 +2713,8 @@ nm_setting_ip_config_get_route (<em class="parameter"><code><a class="link" href <div class="refsect3"> <a name="id-1.4.17.11.61.5"></a><h4>Returns</h4> <p> the route at index <em class="parameter"><code>i</code></em> -</p> +. </p> +<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> </div> </div> <hr> diff --git a/docs/libnm/html/NMSettingSerial.html b/docs/libnm/html/NMSettingSerial.html index 14ae299b..ca4a38b3 100644 --- a/docs/libnm/html/NMSettingSerial.html +++ b/docs/libnm/html/NMSettingSerial.html @@ -171,7 +171,7 @@ serial communications</p> </div> <div class="refsect1"> <a name="NMSettingSerial.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMSettingSerialParity GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm/html/NMSettingVlan.html b/docs/libnm/html/NMSettingVlan.html index d205fd32..f261e7f3 100644 --- a/docs/libnm/html/NMSettingVlan.html +++ b/docs/libnm/html/NMSettingVlan.html @@ -222,9 +222,9 @@ </div> <div class="refsect1"> <a name="NMSettingVlan.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMVlanPriorityMap - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> + GFlags <span class="lineart">╰──</span> NMVlanFlags GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> @@ -822,6 +822,7 @@ output packet headers), <a class="link" href="NMSettingVlan.html#NM-VLAN-FLAG-GV and <a class="link" href="NMSettingVlan.html#NM-VLAN-FLAG-LOOSE-BINDING:CAPS"><code class="literal">NM_VLAN_FLAG_LOOSE_BINDING</code></a> (loose binding of the interface to its master device's operating state).</p> <p>Flags: Read / Write / Construct</p> +<p>Default value: NM_VLAN_FLAG_REORDER_HEADERS</p> </div> <hr> <div class="refsect2"> diff --git a/docs/libnm/html/NMSettingWired.html b/docs/libnm/html/NMSettingWired.html index 1ee7de44..1bc895c4 100644 --- a/docs/libnm/html/NMSettingWired.html +++ b/docs/libnm/html/NMSettingWired.html @@ -390,7 +390,7 @@ </div> <div class="refsect1"> <a name="NMSettingWired.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> +<pre class="screen"> GFlags <span class="lineart">╰──</span> NMSettingWiredWakeOnLan GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> @@ -1181,13 +1181,6 @@ are supported by all devices.</p> <td class="enum_member_annotations"> </td> </tr> <tr> -<td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS"></a>NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT</p></td> -<td class="enum_member_description"> -<p>Use the default value</p> -</td> -<td class="enum_member_annotations"> </td> -</tr> -<tr> <td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-PHY:CAPS"></a>NM_SETTING_WIRED_WAKE_ON_LAN_PHY</p></td> <td class="enum_member_description"> <p>Wake on PHY activity</p> @@ -1230,14 +1223,40 @@ are supported by all devices.</p> <td class="enum_member_annotations"> </td> </tr> <tr> -<td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-LAST:CAPS"></a>_NM_SETTING_WIRED_WAKE_ON_LAN_LAST</p></td> +<td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-LAST-OPT:CAPS"></a>_NM_SETTING_WIRED_WAKE_ON_LAN_LAST_OPT</p></td> <td> </td> <td> </td> </tr> <tr> <td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-ALL:CAPS"></a>NM_SETTING_WIRED_WAKE_ON_LAN_ALL</p></td> <td class="enum_member_description"> -<p>Wake on all events</p> +<p>Wake on all events. This does not + include the exclusive flags <em class="parameter"><code>NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT</code></em> + or + <em class="parameter"><code>NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE</code></em> +.</p> +</td> +<td class="enum_member_annotations"> </td> +</tr> +<tr> +<td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS"></a>NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT</p></td> +<td class="enum_member_description"> +<p>Use the default value</p> +</td> +<td class="enum_member_annotations"> </td> +</tr> +<tr> +<td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-IGNORE:CAPS"></a>NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE</p></td> +<td class="enum_member_description"> +<p>Don't change configured settings</p> +</td> +<td class="enum_member_annotations"> </td> +</tr> +<tr> +<td class="enum_member_name"><p><a name="NM-SETTING-WIRED-WAKE-ON-LAN-EXCLUSIVE-FLAGS:CAPS"></a>NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS</p></td> +<td class="enum_member_description"> +<p>Mask of flags that are + incompatible with other flags</p> </td> <td class="enum_member_annotations"> </td> </tr> @@ -1444,7 +1463,10 @@ Mbit/s, ie 100 == 100Mbit/s.</p> May be any combination of <a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-PHY:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_PHY</code></a>, <a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-UNICAST:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST</code></a>, <a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-MULTICAST:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST</code></a>, <a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-BROADCAST:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST</code></a>, <a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-ARP:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_ARP</code></a>, -<a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-MAGIC:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC</code></a>.</p> +<a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-MAGIC:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC</code></a> or the special values +<a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT</code></a> (to use global settings) and +<a class="link" href="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-IGNORE:CAPS"><code class="literal">NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE</code></a> (to disable management of Wake-on-LAN in +NetworkManager).</p> <p>Flags: Read / Write / Construct</p> <p>Default value: 1</p> <p class="since">Since: 1.0.6</p> diff --git a/docs/libnm/html/NMSettingWirelessSecurity.html b/docs/libnm/html/NMSettingWirelessSecurity.html index 59829fac..1f4d125b 100644 --- a/docs/libnm/html/NMSettingWirelessSecurity.html +++ b/docs/libnm/html/NMSettingWirelessSecurity.html @@ -479,7 +479,7 @@ use WEP, LEAP, WPA or WPA2/RSN security</p> </div> <div class="refsect1"> <a name="NMSettingWirelessSecurity.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMWepKeyType GObject <span class="lineart">╰──</span> <a class="link" href="NMSetting.html" title="NMSetting">NMSetting</a> diff --git a/docs/libnm/html/NMVpnEditor.html b/docs/libnm/html/NMVpnEditor.html index d6f1b3ca..fe188bf4 100644 --- a/docs/libnm/html/NMVpnEditor.html +++ b/docs/libnm/html/NMVpnEditor.html @@ -199,9 +199,9 @@ </div> <div class="refsect1"> <a name="NMVpnEditor.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> +<pre class="screen"> GFlags <span class="lineart">╰──</span> NMVpnEditorPluginCapability - <a href="/usr/share/gtk-doc/html/gobject/GTypeModule.html">GInterface</a> + GInterface <span class="lineart">├──</span> NMVpnEditor <span class="lineart">╰──</span> NMVpnEditorPlugin </pre> diff --git a/docs/libnm/html/NMWimaxNsp.html b/docs/libnm/html/NMWimaxNsp.html index c91b65e2..52fcc5ec 100644 --- a/docs/libnm/html/NMWimaxNsp.html +++ b/docs/libnm/html/NMWimaxNsp.html @@ -140,7 +140,7 @@ </div> <div class="refsect1"> <a name="NMWimaxNsp.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMWimaxNspNetworkType GObject <span class="lineart">╰──</span> <a class="link" href="NMObject.html" title="NMObject">NMObject</a> diff --git a/docs/libnm/html/api-index-full.html b/docs/libnm/html/api-index-full.html index cc075c7d..0400e114 100644 --- a/docs/libnm/html/api-index-full.html +++ b/docs/libnm/html/api-index-full.html @@ -23,8 +23,6 @@  <span class="dim">|</span> <a class="shortcut" href="#idxD">D</a>  <span class="dim">|</span> - <a class="shortcut" href="#idxE">E</a> -  <span class="dim">|</span> <a class="shortcut" href="#idxI">I</a>  <span class="dim">|</span> <a class="shortcut" href="#idxK">K</a> @@ -411,19 +409,19 @@ </dt> <dd></dd> <dt> -<a class="link" href="libnm-nm-version.html#NM-AVAILABLE-IN-1-0-6:CAPS" title="NM_AVAILABLE_IN_1_0_6">NM_AVAILABLE_IN_1_0_6</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> +<a class="link" href="libnm-nm-dbus-interface.html#NM-AVAILABLE-IN-1-0-6:CAPS" title="NM_AVAILABLE_IN_1_0_6">NM_AVAILABLE_IN_1_0_6</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> </dt> <dd></dd> -<a name="idxB"></a><h3 class="title">B</h3> <dt> -<a class="link" href="libnm-nm-dbus-interface.html#NMBluetoothCapabilities" title="enum NMBluetoothCapabilities">NMBluetoothCapabilities</a>, enum in <a class="link" href="libnm-nm-dbus-interface.html" title="nm-dbus-interface">nm-dbus-interface</a> +<a class="link" href="libnm-nm-version.html#NM-AVAILABLE-IN-1-0-8:CAPS" title="NM_AVAILABLE_IN_1_0_8">NM_AVAILABLE_IN_1_0_8</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> </dt> <dd></dd> -<a name="idxC"></a><h3 class="title">C</h3> +<a name="idxB"></a><h3 class="title">B</h3> <dt> -<a class="link" href="libnm-nm-version.html#NM-CHECK-VERSION:CAPS" title="NM_CHECK_VERSION()">NM_CHECK_VERSION</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> +<a class="link" href="libnm-nm-dbus-interface.html#NMBluetoothCapabilities" title="enum NMBluetoothCapabilities">NMBluetoothCapabilities</a>, enum in <a class="link" href="libnm-nm-dbus-interface.html" title="nm-dbus-interface">nm-dbus-interface</a> </dt> <dd></dd> +<a name="idxC"></a><h3 class="title">C</h3> <dt> <a class="link" href="NMClient.html#NMClient-connection-added" title="The “connection-added†signal">NMClient::connection-added</a>, object signal in <a class="link" href="NMClient.html" title="NMClient">NMClient</a> </dt> @@ -2397,11 +2395,6 @@ DEFINE_KF_WRAPPER_PROTO, macro in nm-keyfile-utils <a class="link" href="NMDhcpConfig.html#NM-DHCP-CONFIG-OPTIONS:CAPS" title="NM_DHCP_CONFIG_OPTIONS">NM_DHCP_CONFIG_OPTIONS</a>, macro in <a class="link" href="NMDhcpConfig.html" title="NMDhcpConfig">NMDhcpConfig</a> </dt> <dd></dd> -<a name="idxE"></a><h3 class="title">E</h3> -<dt> -<a class="link" href="libnm-nm-version.html#NM-ENCODE-VERSION:CAPS" title="NM_ENCODE_VERSION()">NM_ENCODE_VERSION</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> <a name="idxI"></a><h3 class="title">I</h3> <dt> <a class="link" href="NMIPConfig.html#NMIPConfig--addresses" title="The “addresses†property">NMIPConfig:addresses</a>, object property in <a class="link" href="NMIPConfig.html" title="NMIPConfig">NMIPConfig</a> @@ -2726,10 +2719,6 @@ nm_keyfile_write, function in nm-keyfile-internal <dd></dd> <a name="idxM"></a><h3 class="title">M</h3> <dt> -<a class="link" href="libnm-nm-version.html#NM-MAJOR-VERSION:CAPS" title="NM_MAJOR_VERSION">NM_MAJOR_VERSION</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> <a class="link" href="libnm-nm-errors.html#NMManagerError" title="enum NMManagerError">NMManagerError</a>, enum in <a class="link" href="libnm-nm-errors.html" title="nm-errors">nm-errors</a> </dt> <dd></dd> @@ -2745,14 +2734,6 @@ nm_keyfile_write, function in nm-keyfile-internal <a class="link" href="libnm-nm-dbus-interface.html#NMMetered" title="enum NMMetered">NMMetered</a>, enum in <a class="link" href="libnm-nm-dbus-interface.html" title="nm-dbus-interface">nm-dbus-interface</a> </dt> <dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-MICRO-VERSION:CAPS" title="NM_MICRO_VERSION">NM_MICRO_VERSION</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-MINOR-VERSION:CAPS" title="NM_MINOR_VERSION">NM_MINOR_VERSION</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> <a name="idxO"></a><h3 class="title">O</h3> <dt> <a class="link" href="NMObject.html#NMObject--dbus-connection" title="The “dbus-connection†property">NMObject:dbus-connection</a>, object property in <a class="link" href="NMObject.html" title="NMObject">NMObject</a> @@ -6688,38 +6669,6 @@ NMTestGeneralMetaFlags, enum in test-general-enums </dt> <dd></dd> <dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-0-9-10:CAPS" title="NM_VERSION_0_9_10">NM_VERSION_0_9_10</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-0-9-8:CAPS" title="NM_VERSION_0_9_8">NM_VERSION_0_9_8</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-1-0:CAPS" title="NM_VERSION_1_0">NM_VERSION_1_0</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-2:CAPS" title="NM_VERSION_1_0_2">NM_VERSION_1_0_2</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-4:CAPS" title="NM_VERSION_1_0_4">NM_VERSION_1_0_4</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-6:CAPS" title="NM_VERSION_1_0_6">NM_VERSION_1_0_6</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-8:CAPS" title="NM_VERSION_1_0_8">NM_VERSION_1_0_8</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-CUR-STABLE:CAPS" title="NM_VERSION_CUR_STABLE">NM_VERSION_CUR_STABLE</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> <a class="link" href="libnm-nm-version.html#NM-VERSION-MAX-ALLOWED:CAPS" title="NM_VERSION_MAX_ALLOWED">NM_VERSION_MAX_ALLOWED</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> </dt> <dd></dd> @@ -6728,10 +6677,6 @@ NMTestGeneralMetaFlags, enum in test-general-enums </dt> <dd></dd> <dt> -<a class="link" href="libnm-nm-version.html#NM-VERSION-NEXT-STABLE:CAPS" title="NM_VERSION_NEXT_STABLE">NM_VERSION_NEXT_STABLE</a>, macro in <a class="link" href="libnm-nm-version.html" title="nm-version">nm-version</a> -</dt> -<dd></dd> -<dt> <a class="link" href="NMSettingVlan.html#NMVlanFlags" title="enum NMVlanFlags">NMVlanFlags</a>, enum in <a class="link" href="NMSettingVlan.html" title="NMSettingVlan">NMSettingVlan</a> </dt> <dd></dd> diff --git a/docs/libnm/html/index.html b/docs/libnm/html/index.html index 1e772084..78d6e12c 100644 --- a/docs/libnm/html/index.html +++ b/docs/libnm/html/index.html @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libnm Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for libnm 1.0.6 + for libnm 1.0.8 The latest version of this documentation can be found on-line at <a class="ulink" href="https://developer.gnome.org/libnm/1.0/" target="_top">https://developer.gnome.org/libnm/1.0/</a>. diff --git a/docs/libnm/html/index.sgml b/docs/libnm/html/index.sgml index 946d3818..9f0bc381 100644 --- a/docs/libnm/html/index.sgml +++ b/docs/libnm/html/index.sgml @@ -283,6 +283,7 @@ <ANCHOR id="libnm-nm-dbus-interface.description" href="libnm/libnm-nm-dbus-interface.html#libnm-nm-dbus-interface.description"> <ANCHOR id="libnm-nm-dbus-interface.functions_details" href="libnm/libnm-nm-dbus-interface.html#libnm-nm-dbus-interface.functions_details"> <ANCHOR id="libnm-nm-dbus-interface.other_details" href="libnm/libnm-nm-dbus-interface.html#libnm-nm-dbus-interface.other_details"> +<ANCHOR id="NM-AVAILABLE-IN-1-0-6:CAPS" href="libnm/libnm-nm-dbus-interface.html#NM-AVAILABLE-IN-1-0-6:CAPS"> <ANCHOR id="NM-DBUS-SERVICE:CAPS" href="libnm/libnm-nm-dbus-interface.html#NM-DBUS-SERVICE:CAPS"> <ANCHOR id="NM-DBUS-PATH:CAPS" href="libnm/libnm-nm-dbus-interface.html#NM-DBUS-PATH:CAPS"> <ANCHOR id="NM-DBUS-INTERFACE:CAPS" href="libnm/libnm-nm-dbus-interface.html#NM-DBUS-INTERFACE:CAPS"> @@ -1618,15 +1619,17 @@ <ANCHOR id="NM-SETTING-WIRED-SETTING-NAME:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-SETTING-NAME:CAPS"> <ANCHOR id="NMSettingWiredWakeOnLan" href="libnm/NMSettingWired.html#NMSettingWiredWakeOnLan"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-NONE:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-NONE:CAPS"> -<ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-PHY:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-PHY:CAPS"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-UNICAST:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-UNICAST:CAPS"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-MULTICAST:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-MULTICAST:CAPS"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-BROADCAST:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-BROADCAST:CAPS"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-ARP:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-ARP:CAPS"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-MAGIC:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-MAGIC:CAPS"> -<ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-LAST:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-LAST:CAPS"> +<ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-LAST-OPT:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-LAST-OPT:CAPS"> <ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-ALL:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-ALL:CAPS"> +<ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS"> +<ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-IGNORE:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-IGNORE:CAPS"> +<ANCHOR id="NM-SETTING-WIRED-WAKE-ON-LAN-EXCLUSIVE-FLAGS:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-EXCLUSIVE-FLAGS:CAPS"> <ANCHOR id="NM-SETTING-WIRED-PORT:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-PORT:CAPS"> <ANCHOR id="NM-SETTING-WIRED-SPEED:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-SPEED:CAPS"> <ANCHOR id="NM-SETTING-WIRED-DUPLEX:CAPS" href="libnm/NMSettingWired.html#NM-SETTING-WIRED-DUPLEX:CAPS"> @@ -2461,31 +2464,18 @@ <ANCHOR id="libnm-nm-version.other" href="libnm/libnm-nm-version.html#libnm-nm-version.other"> <ANCHOR id="libnm-nm-version.description" href="libnm/libnm-nm-version.html#libnm-nm-version.description"> <ANCHOR id="libnm-nm-version.functions_details" href="libnm/libnm-nm-version.html#libnm-nm-version.functions_details"> -<ANCHOR id="NM-MAJOR-VERSION:CAPS" href="libnm/libnm-nm-version.html#NM-MAJOR-VERSION:CAPS"> -<ANCHOR id="NM-MINOR-VERSION:CAPS" href="libnm/libnm-nm-version.html#NM-MINOR-VERSION:CAPS"> -<ANCHOR id="NM-MICRO-VERSION:CAPS" href="libnm/libnm-nm-version.html#NM-MICRO-VERSION:CAPS"> -<ANCHOR id="NM-CHECK-VERSION:CAPS" href="libnm/libnm-nm-version.html#NM-CHECK-VERSION:CAPS"> -<ANCHOR id="NM-ENCODE-VERSION:CAPS" href="libnm/libnm-nm-version.html#NM-ENCODE-VERSION:CAPS"> -<ANCHOR id="NM-VERSION-0-9-8:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-0-9-8:CAPS"> -<ANCHOR id="NM-VERSION-0-9-10:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-0-9-10:CAPS"> -<ANCHOR id="NM-VERSION-1-0:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-1-0:CAPS"> -<ANCHOR id="NM-VERSION-1-0-2:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-1-0-2:CAPS"> -<ANCHOR id="NM-VERSION-1-0-4:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-1-0-4:CAPS"> -<ANCHOR id="NM-VERSION-1-0-6:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-1-0-6:CAPS"> -<ANCHOR id="NM-VERSION-1-0-8:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-1-0-8:CAPS"> <ANCHOR id="NM-VERSION-MIN-REQUIRED:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-MIN-REQUIRED:CAPS"> <ANCHOR id="NM-VERSION-MAX-ALLOWED:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-MAX-ALLOWED:CAPS"> <ANCHOR id="NM-DEPRECATED-IN-0-9-10-FOR:CAPS" href="libnm/libnm-nm-version.html#NM-DEPRECATED-IN-0-9-10-FOR:CAPS"> <ANCHOR id="NM-DEPRECATED-IN-1-0-FOR:CAPS" href="libnm/libnm-nm-version.html#NM-DEPRECATED-IN-1-0-FOR:CAPS"> <ANCHOR id="libnm-nm-version.other_details" href="libnm/libnm-nm-version.html#libnm-nm-version.other_details"> -<ANCHOR id="NM-VERSION-CUR-STABLE:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-CUR-STABLE:CAPS"> -<ANCHOR id="NM-VERSION-NEXT-STABLE:CAPS" href="libnm/libnm-nm-version.html#NM-VERSION-NEXT-STABLE:CAPS"> <ANCHOR id="NM-DEPRECATED-IN-0-9-10:CAPS" href="libnm/libnm-nm-version.html#NM-DEPRECATED-IN-0-9-10:CAPS"> <ANCHOR id="NM-AVAILABLE-IN-0-9-10:CAPS" href="libnm/libnm-nm-version.html#NM-AVAILABLE-IN-0-9-10:CAPS"> <ANCHOR id="NM-DEPRECATED-IN-1-0:CAPS" href="libnm/libnm-nm-version.html#NM-DEPRECATED-IN-1-0:CAPS"> <ANCHOR id="NM-AVAILABLE-IN-1-0:CAPS" href="libnm/libnm-nm-version.html#NM-AVAILABLE-IN-1-0:CAPS"> <ANCHOR id="NM-AVAILABLE-IN-1-0-4:CAPS" href="libnm/libnm-nm-version.html#NM-AVAILABLE-IN-1-0-4:CAPS"> <ANCHOR id="NM-AVAILABLE-IN-1-0-6:CAPS" href="libnm/libnm-nm-version.html#NM-AVAILABLE-IN-1-0-6:CAPS"> +<ANCHOR id="NM-AVAILABLE-IN-1-0-8:CAPS" href="libnm/libnm-nm-version.html#NM-AVAILABLE-IN-1-0-8:CAPS"> <ANCHOR id="libnm-nm-vpn-dbus-interface" href="libnm/libnm-nm-vpn-dbus-interface.html"> <ANCHOR id="libnm-nm-vpn-dbus-interface.other" href="libnm/libnm-nm-vpn-dbus-interface.html#libnm-nm-vpn-dbus-interface.other"> <ANCHOR id="libnm-nm-vpn-dbus-interface.object-hierarchy" href="libnm/libnm-nm-vpn-dbus-interface.html#libnm-nm-vpn-dbus-interface.object-hierarchy"> diff --git a/docs/libnm/html/libnm-NMConnection.html b/docs/libnm/html/libnm-NMConnection.html index 7c3f7952..aa683548 100644 --- a/docs/libnm/html/libnm-NMConnection.html +++ b/docs/libnm/html/libnm-NMConnection.html @@ -502,7 +502,7 @@ </div> <div class="refsect1"> <a name="libnm-NMConnection.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> +<pre class="screen"> GFlags <span class="lineart">╰──</span> NMConnectionSerializationFlags </pre> </div> diff --git a/docs/libnm/html/libnm-nm-dbus-interface.html b/docs/libnm/html/libnm-nm-dbus-interface.html index f67efaba..4029fc6c 100644 --- a/docs/libnm/html/libnm-nm-dbus-interface.html +++ b/docs/libnm/html/libnm-nm-dbus-interface.html @@ -42,6 +42,10 @@ <tbody> <tr> <td class="define_keyword">#define</td> +<td class="function_name"><a class="link" href="libnm-nm-dbus-interface.html#NM-AVAILABLE-IN-1-0-6:CAPS" title="NM_AVAILABLE_IN_1_0_6">NM_AVAILABLE_IN_1_0_6</a></td> +</tr> +<tr> +<td class="define_keyword">#define</td> <td class="function_name"><a class="link" href="libnm-nm-dbus-interface.html#NM-DBUS-SERVICE:CAPS" title="NM_DBUS_SERVICE">NM_DBUS_SERVICE</a></td> </tr> <tr> @@ -269,7 +273,7 @@ </div> <div class="refsect1"> <a name="libnm-nm-dbus-interface.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NM80211Mode <span class="lineart">├──</span> NMActiveConnectionState <span class="lineart">├──</span> NMConnectivityState @@ -278,7 +282,7 @@ <span class="lineart">├──</span> NMDeviceType <span class="lineart">├──</span> NMMetered <span class="lineart">╰──</span> NMState - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> + GFlags <span class="lineart">├──</span> NM80211ApFlags <span class="lineart">├──</span> NM80211ApSecurityFlags <span class="lineart">├──</span> NMBluetoothCapabilities @@ -299,6 +303,11 @@ <div class="refsect1"> <a name="libnm-nm-dbus-interface.other_details"></a><h2>Types and Values</h2> <div class="refsect2"> +<a name="NM-AVAILABLE-IN-1-0-6:CAPS"></a><h3>NM_AVAILABLE_IN_1_0_6</h3> +<pre class="programlisting">#define NM_AVAILABLE_IN_1_0_6</pre> +</div> +<hr> +<div class="refsect2"> <a name="NM-DBUS-SERVICE:CAPS"></a><h3>NM_DBUS_SERVICE</h3> <pre class="programlisting">#define NM_DBUS_SERVICE "org.freedesktop.NetworkManager" </pre> @@ -543,7 +552,7 @@ <p><a class="link" href="libnm-nm-dbus-interface.html#NMState" title="enum NMState"><span class="type">NMState</span></a> values indicate the current overall networking state.</p> <p>(Corresponds to the NM_STATE type in nm-manager.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.42.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.43.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -616,7 +625,7 @@ <a name="NMConnectivityState"></a><h3>enum NMConnectivityState</h3> <p>(Corresponds to the NM_CONNECTIVITY type in nm-manager.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.43.4"></a><h4>Members</h4> +<a name="id-1.3.6.7.44.4"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -673,7 +682,7 @@ an <a class="link" href="NMDevice.html" title="NMDevice"><span class="type">NMDevice</span></a>.</p> <p>(Corresponds to the NM_DEVICE_TYPE type in nm-device.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.44.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.45.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -804,7 +813,7 @@ GSM/UMTS, or LTE network access protocols</p> <p>General device capability flags.</p> <p>(Corresponds to the NM_DEVICE_CAP type in nm-device-wifi.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.45.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.46.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -850,7 +859,7 @@ GSM/UMTS, or LTE network access protocols</p> <p>802.11 specific device encryption and authentication capabilities.</p> <p>(Corresponds to the NM_802_11_DEVICE_CAP type in nm-device-wifi.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.46.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.47.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -952,7 +961,7 @@ GSM/UMTS, or LTE network access protocols</p> <p>802.11 access point flags.</p> <p>(Corresponds to the NM_802_11_AP_FLAGS type in nm-access-point.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.47.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.48.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -987,7 +996,7 @@ the current security requirements of an access point as determined from the access point's beacon.</p> <p>(Corresponds to the NM_802_11_AP_SEC type in nm-access-point.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.48.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.49.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1089,7 +1098,7 @@ is supported</p> <p>Indicates the 802.11 mode an access point or device is currently in.</p> <p>(Corresponds to the NM_802_11_MODE type in generic-types.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.49.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.50.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1142,7 +1151,7 @@ is supported</p> Bluetooth device.</p> <p>(Corresponds to the NM_BT_CAPABILITY type in nm-device-bt.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.50.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.51.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1184,7 +1193,7 @@ specific access technologies the device supports use the ModemManager D-Bus API.</p> <p>(Corresponds to the NM_DEVICE_MODEM_CAPABILITY type in nm-device-modem.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.51.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.52.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1239,7 +1248,7 @@ GPRS, EDGE, UMTS, HSDPA, HSUPA, or HSPA+ packet switched data capability</p> <a name="NMDeviceState"></a><h3>enum NMDeviceState</h3> <p>(Corresponds to the NM_DEVICE_STATE type in nm-device.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.52.4"></a><h4>Members</h4> +<a name="id-1.3.6.7.53.4"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1370,7 +1379,7 @@ GPRS, EDGE, UMTS, HSDPA, HSUPA, or HSPA+ packet switched data capability</p> <p>Device state change reason codes</p> <p>(Corresponds to the NM_DEVICE_STATE_REASON type in nm-device.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.53.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.54.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1828,7 +1837,7 @@ GPRS, EDGE, UMTS, HSDPA, HSUPA, or HSPA+ packet switched data capability</p> <a name="NMMetered"></a><h3>enum NMMetered</h3> <p>(Corresponds to the NM_METERED type in nm-device.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.54.4"></a><h4>Members</h4> +<a name="id-1.3.6.7.55.4"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1884,7 +1893,7 @@ specific network while it is starting, connected, or disconnecting from that network.</p> <p>(Corresponds to the NM_ACTIVE_CONNECTION_STATE type in nm-active-connection.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.55.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.56.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -1939,7 +1948,7 @@ network.</p> <p><a class="link" href="libnm-nm-dbus-interface.html#NMSecretAgentGetSecretsFlags" title="enum NMSecretAgentGetSecretsFlags"><span class="type">NMSecretAgentGetSecretsFlags</span></a> values modify the behavior of a GetSecrets request.</p> <p>(Corresponds to the NM_SECRET_AGENT_GET_SECRETS_FLAGS type in nm-secret-agent.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.56.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.57.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> @@ -2011,7 +2020,7 @@ network.</p> <p><a class="link" href="libnm-nm-dbus-interface.html#NMSecretAgentCapabilities" title="enum NMSecretAgentCapabilities"><span class="type">NMSecretAgentCapabilities</span></a> indicate various capabilities of the agent.</p> <p>(Corresponds to the NM_SECRET_AGENT_CAPABILITIES type in nm-secret-agent.xml.)</p> <div class="refsect3"> -<a name="id-1.3.6.7.57.5"></a><h4>Members</h4> +<a name="id-1.3.6.7.58.5"></a><h4>Members</h4> <div class="informaltable"><table width="100%" border="0"> <colgroup> <col width="300px" class="enum_members_name"> diff --git a/docs/libnm/html/libnm-nm-errors.html b/docs/libnm/html/libnm-nm-errors.html index 92ea7737..70f88392 100644 --- a/docs/libnm/html/libnm-nm-errors.html +++ b/docs/libnm/html/libnm-nm-errors.html @@ -184,7 +184,7 @@ </div> <div class="refsect1"> <a name="libnm-nm-errors.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMAgentManagerError <span class="lineart">├──</span> NMConnectionError <span class="lineart">├──</span> NMCryptoError diff --git a/docs/libnm/html/libnm-nm-utils.html b/docs/libnm/html/libnm-nm-utils.html index 5406f966..123ff21a 100644 --- a/docs/libnm/html/libnm-nm-utils.html +++ b/docs/libnm/html/libnm-nm-utils.html @@ -517,7 +517,7 @@ </div> <div class="refsect1"> <a name="libnm-nm-utils.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">╰──</span> NMUtilsSecurityType </pre> </div> diff --git a/docs/libnm/html/libnm-nm-version.html b/docs/libnm/html/libnm-nm-version.html index 81f2b0d2..0f983c27 100644 --- a/docs/libnm/html/libnm-nm-version.html +++ b/docs/libnm/html/libnm-nm-version.html @@ -41,58 +41,6 @@ <tbody> <tr> <td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-MAJOR-VERSION:CAPS" title="NM_MAJOR_VERSION">NM_MAJOR_VERSION</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-MINOR-VERSION:CAPS" title="NM_MINOR_VERSION">NM_MINOR_VERSION</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-MICRO-VERSION:CAPS" title="NM_MICRO_VERSION">NM_MICRO_VERSION</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"> -<a class="link" href="libnm-nm-version.html#NM-CHECK-VERSION:CAPS" title="NM_CHECK_VERSION()">NM_CHECK_VERSION</a><span class="c_punctuation">()</span> -</td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"> -<a class="link" href="libnm-nm-version.html#NM-ENCODE-VERSION:CAPS" title="NM_ENCODE_VERSION()">NM_ENCODE_VERSION</a><span class="c_punctuation">()</span> -</td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-0-9-8:CAPS" title="NM_VERSION_0_9_8">NM_VERSION_0_9_8</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-0-9-10:CAPS" title="NM_VERSION_0_9_10">NM_VERSION_0_9_10</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-1-0:CAPS" title="NM_VERSION_1_0">NM_VERSION_1_0</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-2:CAPS" title="NM_VERSION_1_0_2">NM_VERSION_1_0_2</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-4:CAPS" title="NM_VERSION_1_0_4">NM_VERSION_1_0_4</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-6:CAPS" title="NM_VERSION_1_0_6">NM_VERSION_1_0_6</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-1-0-8:CAPS" title="NM_VERSION_1_0_8">NM_VERSION_1_0_8</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> <td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-MIN-REQUIRED:CAPS" title="NM_VERSION_MIN_REQUIRED">NM_VERSION_MIN_REQUIRED</a></td> </tr> <tr> @@ -124,14 +72,6 @@ <tbody> <tr> <td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-CUR-STABLE:CAPS" title="NM_VERSION_CUR_STABLE">NM_VERSION_CUR_STABLE</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-VERSION-NEXT-STABLE:CAPS" title="NM_VERSION_NEXT_STABLE">NM_VERSION_NEXT_STABLE</a></td> -</tr> -<tr> -<td class="define_keyword">#define</td> <td class="function_name"><a class="link" href="libnm-nm-version.html#NM-DEPRECATED-IN-0-9-10:CAPS" title="NM_DEPRECATED_IN_0_9_10">NM_DEPRECATED_IN_0_9_10</a></td> </tr> <tr> @@ -152,7 +92,11 @@ </tr> <tr> <td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-AVAILABLE-IN-1-0-6:CAPS" title="NM_AVAILABLE_IN_1_0_6">NM_AVAILABLE_IN_1_0_6</a></td> +<td class="function_name"><a class="link" href="libnm-nm-dbus-interface.html#NM-AVAILABLE-IN-1-0-6:CAPS" title="NM_AVAILABLE_IN_1_0_6">NM_AVAILABLE_IN_1_0_6</a></td> +</tr> +<tr> +<td class="define_keyword">#define</td> +<td class="function_name"><a class="link" href="libnm-nm-version.html#NM-AVAILABLE-IN-1-0-8:CAPS" title="NM_AVAILABLE_IN_1_0_8">NM_AVAILABLE_IN_1_0_8</a></td> </tr> </tbody> </table></div> @@ -163,115 +107,6 @@ <div class="refsect1"> <a name="libnm-nm-version.functions_details"></a><h2>Functions</h2> <div class="refsect2"> -<a name="NM-MAJOR-VERSION:CAPS"></a><h3>NM_MAJOR_VERSION</h3> -<pre class="programlisting">#define NM_MAJOR_VERSION (1) -</pre> -<p>Evaluates to the major version number of NetworkManager which this source -is compiled against.</p> -</div> -<hr> -<div class="refsect2"> -<a name="NM-MINOR-VERSION:CAPS"></a><h3>NM_MINOR_VERSION</h3> -<pre class="programlisting">#define NM_MINOR_VERSION (0) -</pre> -<p>Evaluates to the minor version number of NetworkManager which this source -is compiled against.</p> -</div> -<hr> -<div class="refsect2"> -<a name="NM-MICRO-VERSION:CAPS"></a><h3>NM_MICRO_VERSION</h3> -<pre class="programlisting">#define NM_MICRO_VERSION (6) -</pre> -<p>Evaluates to the micro version number of NetworkManager which this source -compiled against.</p> -</div> -<hr> -<div class="refsect2"> -<a name="NM-CHECK-VERSION:CAPS"></a><h3>NM_CHECK_VERSION()</h3> -<pre class="programlisting">#define NM_CHECK_VERSION(major,minor,micro)</pre> -<div class="refsect3"> -<a name="id-1.6.3.6.5.4"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> -<colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> -</colgroup> -<tbody> -<tr> -<td class="parameter_name"><p>major</p></td> -<td class="parameter_description"><p>major version (e.g. 1 for version 1.2.5)</p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>minor</p></td> -<td class="parameter_description"><p>minor version (e.g. 2 for version 1.2.5)</p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>micro</p></td> -<td class="parameter_description"><p>micro version (e.g. 5 for version 1.2.5)</p></td> -<td class="parameter_annotations"> </td> -</tr> -</tbody> -</table></div> -</div> -<div class="refsect3"> -<a name="id-1.6.3.6.5.5"></a><h4>Returns</h4> -<p> <code class="literal">TRUE</code> if the version of the NetworkManager header files -is the same as or newer than the passed-in version.</p> -</div> -</div> -<hr> -<div class="refsect2"> -<a name="NM-ENCODE-VERSION:CAPS"></a><h3>NM_ENCODE_VERSION()</h3> -<pre class="programlisting">#define NM_ENCODE_VERSION(major,minor,micro) ((major) << 16 | (minor) << 8 | (micro)) -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-0-9-8:CAPS"></a><h3>NM_VERSION_0_9_8</h3> -<pre class="programlisting">#define NM_VERSION_0_9_8 (NM_ENCODE_VERSION (0, 9, 8)) -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-0-9-10:CAPS"></a><h3>NM_VERSION_0_9_10</h3> -<pre class="programlisting">#define NM_VERSION_0_9_10 (NM_ENCODE_VERSION (0, 9, 10)) -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-1-0:CAPS"></a><h3>NM_VERSION_1_0</h3> -<pre class="programlisting">#define NM_VERSION_1_0 (NM_ENCODE_VERSION (1, 0, 0)) -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-1-0-2:CAPS"></a><h3>NM_VERSION_1_0_2</h3> -<pre class="programlisting">#define NM_VERSION_1_0_2 (NM_ENCODE_VERSION (1, 0, 2)) -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-1-0-4:CAPS"></a><h3>NM_VERSION_1_0_4</h3> -<pre class="programlisting">#define NM_VERSION_1_0_4 (NM_ENCODE_VERSION (1, 0, 4)) -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-1-0-6:CAPS"></a><h3>NM_VERSION_1_0_6</h3> -<pre class="programlisting">#define NM_VERSION_1_0_6 (NM_ENCODE_VERSION (1, 0, 6)) -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-1-0-8:CAPS"></a><h3>NM_VERSION_1_0_8</h3> -<pre class="programlisting">#define NM_VERSION_1_0_8 (NM_ENCODE_VERSION (1, 0, 8)) -</pre> -</div> -<hr> -<div class="refsect2"> <a name="NM-VERSION-MIN-REQUIRED:CAPS"></a><h3>NM_VERSION_MIN_REQUIRED</h3> <pre class="programlisting"># define NM_VERSION_MIN_REQUIRED (NM_VERSION_CUR_STABLE) </pre> @@ -298,18 +133,6 @@ is the same as or newer than the passed-in version.</p> <div class="refsect1"> <a name="libnm-nm-version.other_details"></a><h2>Types and Values</h2> <div class="refsect2"> -<a name="NM-VERSION-CUR-STABLE:CAPS"></a><h3>NM_VERSION_CUR_STABLE</h3> -<pre class="programlisting">#define NM_VERSION_CUR_STABLE NM_VERSION_1_0_6 -</pre> -</div> -<hr> -<div class="refsect2"> -<a name="NM-VERSION-NEXT-STABLE:CAPS"></a><h3>NM_VERSION_NEXT_STABLE</h3> -<pre class="programlisting">#define NM_VERSION_NEXT_STABLE NM_VERSION_1_0_8 -</pre> -</div> -<hr> -<div class="refsect2"> <a name="NM-DEPRECATED-IN-0-9-10:CAPS"></a><h3>NM_DEPRECATED_IN_0_9_10</h3> <pre class="programlisting"># define NM_DEPRECATED_IN_0_9_10 G_DEPRECATED </pre> @@ -341,7 +164,12 @@ is the same as or newer than the passed-in version.</p> <hr> <div class="refsect2"> <a name="NM-AVAILABLE-IN-1-0-6:CAPS"></a><h3>NM_AVAILABLE_IN_1_0_6</h3> -<pre class="programlisting"># define NM_AVAILABLE_IN_1_0_6 G_UNAVAILABLE(1,0.6) +<pre class="programlisting">#define NM_AVAILABLE_IN_1_0_6</pre> +</div> +<hr> +<div class="refsect2"> +<a name="NM-AVAILABLE-IN-1-0-8:CAPS"></a><h3>NM_AVAILABLE_IN_1_0_8</h3> +<pre class="programlisting"># define NM_AVAILABLE_IN_1_0_8 G_UNAVAILABLE(1,0.8) </pre> </div> </div> diff --git a/docs/libnm/html/libnm-nm-vpn-dbus-interface.html b/docs/libnm/html/libnm-nm-vpn-dbus-interface.html index cb1bb7f5..7f0d523b 100644 --- a/docs/libnm/html/libnm-nm-vpn-dbus-interface.html +++ b/docs/libnm/html/libnm-nm-vpn-dbus-interface.html @@ -293,7 +293,7 @@ </div> <div class="refsect1"> <a name="libnm-nm-vpn-dbus-interface.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> +<pre class="screen"> GEnum <span class="lineart">├──</span> NMVpnConnectionState <span class="lineart">├──</span> NMVpnConnectionStateReason <span class="lineart">├──</span> NMVpnPluginFailure diff --git a/docs/libnm/html/libnm.devhelp2 b/docs/libnm/html/libnm.devhelp2 index daf26d9c..cbecd2b3 100644 --- a/docs/libnm/html/libnm.devhelp2 +++ b/docs/libnm/html/libnm.devhelp2 @@ -236,6 +236,7 @@ <keyword type="enum" name="enum NMSecretAgentError" link="libnm-nm-errors.html#NMSecretAgentError"/> <keyword type="enum" name="enum NMSettingsError" link="libnm-nm-errors.html#NMSettingsError"/> <keyword type="enum" name="enum NMVpnPluginError" link="libnm-nm-errors.html#NMVpnPluginError"/> + <keyword type="macro" name="NM_AVAILABLE_IN_1_0_6" link="libnm-nm-dbus-interface.html#NM-AVAILABLE-IN-1-0-6:CAPS"/> <keyword type="macro" name="NM_DBUS_SERVICE" link="libnm-nm-dbus-interface.html#NM-DBUS-SERVICE:CAPS"/> <keyword type="macro" name="NM_DBUS_PATH" link="libnm-nm-dbus-interface.html#NM-DBUS-PATH:CAPS"/> <keyword type="macro" name="NM_DBUS_INTERFACE" link="libnm-nm-dbus-interface.html#NM-DBUS-INTERFACE:CAPS"/> @@ -1699,30 +1700,17 @@ <keyword type="enum" name="enum NMUtilsSecurityType" link="libnm-nm-utils.html#NMUtilsSecurityType"/> <keyword type="macro" name="NM_UTILS_HWADDR_LEN_MAX" link="libnm-nm-utils.html#NM-UTILS-HWADDR-LEN-MAX:CAPS"/> <keyword type="macro" name="NM_UTILS_INET_ADDRSTRLEN" link="libnm-nm-utils.html#NM-UTILS-INET-ADDRSTRLEN:CAPS"/> - <keyword type="macro" name="NM_MAJOR_VERSION" link="libnm-nm-version.html#NM-MAJOR-VERSION:CAPS"/> - <keyword type="macro" name="NM_MINOR_VERSION" link="libnm-nm-version.html#NM-MINOR-VERSION:CAPS"/> - <keyword type="macro" name="NM_MICRO_VERSION" link="libnm-nm-version.html#NM-MICRO-VERSION:CAPS"/> - <keyword type="macro" name="NM_CHECK_VERSION()" link="libnm-nm-version.html#NM-CHECK-VERSION:CAPS"/> - <keyword type="macro" name="NM_ENCODE_VERSION()" link="libnm-nm-version.html#NM-ENCODE-VERSION:CAPS"/> - <keyword type="macro" name="NM_VERSION_0_9_8" link="libnm-nm-version.html#NM-VERSION-0-9-8:CAPS"/> - <keyword type="macro" name="NM_VERSION_0_9_10" link="libnm-nm-version.html#NM-VERSION-0-9-10:CAPS"/> - <keyword type="macro" name="NM_VERSION_1_0" link="libnm-nm-version.html#NM-VERSION-1-0:CAPS"/> - <keyword type="macro" name="NM_VERSION_1_0_2" link="libnm-nm-version.html#NM-VERSION-1-0-2:CAPS"/> - <keyword type="macro" name="NM_VERSION_1_0_4" link="libnm-nm-version.html#NM-VERSION-1-0-4:CAPS"/> - <keyword type="macro" name="NM_VERSION_1_0_6" link="libnm-nm-version.html#NM-VERSION-1-0-6:CAPS"/> - <keyword type="macro" name="NM_VERSION_1_0_8" link="libnm-nm-version.html#NM-VERSION-1-0-8:CAPS"/> <keyword type="macro" name="NM_VERSION_MIN_REQUIRED" link="libnm-nm-version.html#NM-VERSION-MIN-REQUIRED:CAPS"/> <keyword type="macro" name="NM_VERSION_MAX_ALLOWED" link="libnm-nm-version.html#NM-VERSION-MAX-ALLOWED:CAPS"/> <keyword type="macro" name="NM_DEPRECATED_IN_0_9_10_FOR()" link="libnm-nm-version.html#NM-DEPRECATED-IN-0-9-10-FOR:CAPS"/> <keyword type="macro" name="NM_DEPRECATED_IN_1_0_FOR()" link="libnm-nm-version.html#NM-DEPRECATED-IN-1-0-FOR:CAPS"/> - <keyword type="macro" name="NM_VERSION_CUR_STABLE" link="libnm-nm-version.html#NM-VERSION-CUR-STABLE:CAPS"/> - <keyword type="macro" name="NM_VERSION_NEXT_STABLE" link="libnm-nm-version.html#NM-VERSION-NEXT-STABLE:CAPS"/> <keyword type="macro" name="NM_DEPRECATED_IN_0_9_10" link="libnm-nm-version.html#NM-DEPRECATED-IN-0-9-10:CAPS"/> <keyword type="macro" name="NM_AVAILABLE_IN_0_9_10" link="libnm-nm-version.html#NM-AVAILABLE-IN-0-9-10:CAPS"/> <keyword type="macro" name="NM_DEPRECATED_IN_1_0" link="libnm-nm-version.html#NM-DEPRECATED-IN-1-0:CAPS"/> <keyword type="macro" name="NM_AVAILABLE_IN_1_0" link="libnm-nm-version.html#NM-AVAILABLE-IN-1-0:CAPS"/> <keyword type="macro" name="NM_AVAILABLE_IN_1_0_4" link="libnm-nm-version.html#NM-AVAILABLE-IN-1-0-4:CAPS"/> <keyword type="macro" name="NM_AVAILABLE_IN_1_0_6" link="libnm-nm-version.html#NM-AVAILABLE-IN-1-0-6:CAPS"/> + <keyword type="macro" name="NM_AVAILABLE_IN_1_0_8" link="libnm-nm-version.html#NM-AVAILABLE-IN-1-0-8:CAPS"/> <keyword type="macro" name="NM_DBUS_PATH_VPN" link="libnm-nm-vpn-dbus-interface.html#NM-DBUS-PATH-VPN:CAPS"/> <keyword type="macro" name="NM_DBUS_INTERFACE_VPN" link="libnm-nm-vpn-dbus-interface.html#NM-DBUS-INTERFACE-VPN:CAPS"/> <keyword type="macro" name="NM_DBUS_PATH_VPN_CONNECTION" link="libnm-nm-vpn-dbus-interface.html#NM-DBUS-PATH-VPN-CONNECTION:CAPS"/> @@ -2100,15 +2088,17 @@ <keyword type="constant" name="NM_VLAN_FLAG_GVRP" link="NMSettingVlan.html#NM-VLAN-FLAG-GVRP:CAPS"/> <keyword type="constant" name="NM_VLAN_FLAG_LOOSE_BINDING" link="NMSettingVlan.html#NM-VLAN-FLAG-LOOSE-BINDING:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_NONE" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-NONE:CAPS"/> - <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_PHY" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-PHY:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-UNICAST:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-MULTICAST:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-BROADCAST:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_ARP" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-ARP:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-MAGIC:CAPS"/> - <keyword type="constant" name="_NM_SETTING_WIRED_WAKE_ON_LAN_LAST" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-LAST:CAPS"/> + <keyword type="constant" name="_NM_SETTING_WIRED_WAKE_ON_LAN_LAST_OPT" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-LAST-OPT:CAPS"/> <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_ALL" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-ALL:CAPS"/> + <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-DEFAULT:CAPS"/> + <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-IGNORE:CAPS"/> + <keyword type="constant" name="NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS" link="NMSettingWired.html#NM-SETTING-WIRED-WAKE-ON-LAN-EXCLUSIVE-FLAGS:CAPS"/> <keyword type="constant" name="NM_WEP_KEY_TYPE_UNKNOWN" link="NMSettingWirelessSecurity.html#NM-WEP-KEY-TYPE-UNKNOWN:CAPS"/> <keyword type="constant" name="NM_WEP_KEY_TYPE_KEY" link="NMSettingWirelessSecurity.html#NM-WEP-KEY-TYPE-KEY:CAPS"/> <keyword type="constant" name="NM_WEP_KEY_TYPE_PASSPHRASE" link="NMSettingWirelessSecurity.html#NM-WEP-KEY-TYPE-PASSPHRASE:CAPS"/> diff --git a/docs/libnm/html/object-tree.html b/docs/libnm/html/object-tree.html index 87198759..555bc33f 100644 --- a/docs/libnm/html/object-tree.html +++ b/docs/libnm/html/object-tree.html @@ -77,10 +77,10 @@ <span class="lineart">├──</span> <a class="link" href="NMClient.html" title="NMClient">NMClient</a> <span class="lineart">├──</span> <a class="link" href="NMSecretAgentOld.html" title="NMSecretAgentOld">NMSecretAgentOld</a> <span class="lineart">╰──</span> <a class="link" href="NMSimpleConnection.html" title="NMSimpleConnection">NMSimpleConnection</a> - <a href="/usr/share/gtk-doc/html/gobject/GTypeModule.html">GInterface</a> + GInterface <span class="lineart">├──</span> <a class="link" href="NMVpnEditor.html" title="NMVpnEditor">NMVpnEditor</a> <span class="lineart">╰──</span> <a class="link" href="NMVpnEditor.html#NMVpnEditorPlugin">NMVpnEditorPlugin</a> - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GFlags</a> + GFlags <span class="lineart">├──</span> <a class="link" href="libnm-nm-dbus-interface.html#NM80211ApFlags" title="enum NM80211ApFlags">NM80211ApFlags</a> <span class="lineart">├──</span> <a class="link" href="libnm-nm-dbus-interface.html#NM80211ApSecurityFlags" title="enum NM80211ApSecurityFlags">NM80211ApSecurityFlags</a> <span class="lineart">├──</span> <a class="link" href="libnm-nm-dbus-interface.html#NMBluetoothCapabilities" title="enum NMBluetoothCapabilities">NMBluetoothCapabilities</a> @@ -95,7 +95,7 @@ <span class="lineart">├──</span> <a class="link" href="NMSettingWired.html#NMSettingWiredWakeOnLan" title="enum NMSettingWiredWakeOnLan">NMSettingWiredWakeOnLan</a> <span class="lineart">├──</span> <a class="link" href="NMSettingVlan.html#NMVlanFlags" title="enum NMVlanFlags">NMVlanFlags</a> <span class="lineart">╰──</span> <a class="link" href="NMVpnEditor.html#NMVpnEditorPluginCapability" title="enum NMVpnEditorPluginCapability">NMVpnEditorPluginCapability</a> - <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> + GEnum <span class="lineart">├──</span> <a class="link" href="libnm-nm-errors.html#NMAgentManagerError" title="enum NMAgentManagerError">NMAgentManagerError</a> <span class="lineart">├──</span> <a class="link" href="libnm-nm-errors.html#NMConnectionError" title="enum NMConnectionError">NMConnectionError</a> <span class="lineart">├──</span> <a class="link" href="libnm-nm-errors.html#NMDeviceError" title="enum NMDeviceError">NMDeviceError</a> @@ -130,7 +130,7 @@ <span class="lineart">├──</span> <a class="link" href="libnm-nm-vpn-dbus-interface.html#NMVpnServiceState" title="enum NMVpnServiceState">NMVpnServiceState</a> <span class="lineart">├──</span> <a class="link" href="NMSettingWirelessSecurity.html#NMWepKeyType" title="enum NMWepKeyType">NMWepKeyType</a> <span class="lineart">╰──</span> <a class="link" href="NMWimaxNsp.html#NMWimaxNspNetworkType" title="enum NMWimaxNspNetworkType">NMWimaxNspNetworkType</a> - <a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a> + GBoxed <span class="lineart">├──</span> <a class="link" href="NMSettingIPConfig.html#NMIPAddress">NMIPAddress</a> <span class="lineart">╰──</span> <a class="link" href="NMSettingIPConfig.html#NMIPRoute">NMIPRoute</a> </pre> diff --git a/docs/libnm/libnm-sections.txt b/docs/libnm/libnm-sections.txt index 35ea1533..dfbfec46 100644 --- a/docs/libnm/libnm-sections.txt +++ b/docs/libnm/libnm-sections.txt @@ -344,6 +344,7 @@ nm_wep_key_type_get_type <SECTION> <FILE>nm-dbus-interface</FILE> +NM_AVAILABLE_IN_1_0_6 NM_DBUS_SERVICE NM_DBUS_PATH NM_DBUS_INTERFACE @@ -2180,20 +2181,6 @@ nm_utils_enum_from_str <SECTION> <FILE>nm-version</FILE> -NM_MAJOR_VERSION -NM_MINOR_VERSION -NM_MICRO_VERSION -NM_CHECK_VERSION -NM_ENCODE_VERSION -NM_VERSION_0_9_8 -NM_VERSION_0_9_10 -NM_VERSION_1_0 -NM_VERSION_1_0_2 -NM_VERSION_1_0_4 -NM_VERSION_1_0_6 -NM_VERSION_1_0_8 -NM_VERSION_CUR_STABLE -NM_VERSION_NEXT_STABLE NM_VERSION_MIN_REQUIRED NM_VERSION_MAX_ALLOWED NM_DEPRECATED_IN_0_9_10 @@ -2204,6 +2191,7 @@ NM_DEPRECATED_IN_1_0_FOR NM_AVAILABLE_IN_1_0 NM_AVAILABLE_IN_1_0_4 NM_AVAILABLE_IN_1_0_6 +NM_AVAILABLE_IN_1_0_8 </SECTION> <SECTION> diff --git a/docs/libnm/version.xml b/docs/libnm/version.xml index af0b7ddb..b0f3d96f 100644 --- a/docs/libnm/version.xml +++ b/docs/libnm/version.xml @@ -1 +1 @@ -1.0.6 +1.0.8 diff --git a/examples/C/Makefile.in b/examples/C/Makefile.in index 0d606287..3b154702 100644 --- a/examples/C/Makefile.in +++ b/examples/C/Makefile.in @@ -314,6 +314,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/C/glib/Makefile.am b/examples/C/glib/Makefile.am index d8e5d285..4b03d87f 100644 --- a/examples/C/glib/Makefile.am +++ b/examples/C/glib/Makefile.am @@ -1,5 +1,6 @@ AM_CPPFLAGS = \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm \ diff --git a/examples/C/glib/Makefile.in b/examples/C/glib/Makefile.in index 9c18e61f..f4caa8a9 100644 --- a/examples/C/glib/Makefile.in +++ b/examples/C/glib/Makefile.in @@ -352,6 +352,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -494,6 +495,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm \ diff --git a/examples/C/qt/Makefile.in b/examples/C/qt/Makefile.in index 7758476d..997aca76 100644 --- a/examples/C/qt/Makefile.in +++ b/examples/C/qt/Makefile.in @@ -324,6 +324,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/Makefile.in b/examples/Makefile.in index 9e3a806b..cc227072 100644 --- a/examples/Makefile.in +++ b/examples/Makefile.in @@ -313,6 +313,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/dispatcher/Makefile.in b/examples/dispatcher/Makefile.in index fba9c820..b04b3e50 100644 --- a/examples/dispatcher/Makefile.in +++ b/examples/dispatcher/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/python/Makefile.in b/examples/python/Makefile.in index d94a2675..c047d1a1 100644 --- a/examples/python/Makefile.in +++ b/examples/python/Makefile.in @@ -313,6 +313,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/python/dbus/Makefile.in b/examples/python/dbus/Makefile.in index 784997e1..023e52d8 100644 --- a/examples/python/dbus/Makefile.in +++ b/examples/python/dbus/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/python/gi/Makefile.in b/examples/python/gi/Makefile.in index 18e395e9..21384364 100644 --- a/examples/python/gi/Makefile.in +++ b/examples/python/gi/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/python/gi/add_connection.py b/examples/python/gi/add_connection.py index bb1163db..492d66d1 100755 --- a/examples/python/gi/add_connection.py +++ b/examples/python/gi/add_connection.py @@ -29,6 +29,8 @@ # https://developer.gnome.org/NetworkManager/1.0/ref-settings.html # +import gi +gi.require_version('NM', '1.0') from gi.repository import GLib, NM import sys, uuid diff --git a/examples/python/gi/device-state-ip4config.py b/examples/python/gi/device-state-ip4config.py index 1a6f7dec..2a4a6221 100755 --- a/examples/python/gi/device-state-ip4config.py +++ b/examples/python/gi/device-state-ip4config.py @@ -21,6 +21,8 @@ # import sys +import gi +gi.require_version('NM', '1.0') from gi.repository import GLib, NM # diff --git a/examples/python/gi/firewall-zone.py b/examples/python/gi/firewall-zone.py index ed9e5910..a56760ae 100755 --- a/examples/python/gi/firewall-zone.py +++ b/examples/python/gi/firewall-zone.py @@ -20,6 +20,8 @@ # import sys +import gi +gi.require_version('NM', '1.0') from gi.repository import GLib, NM # diff --git a/examples/python/gi/get-active-connections.py b/examples/python/gi/get-active-connections.py index 55ba2d81..22c9eb4a 100755 --- a/examples/python/gi/get-active-connections.py +++ b/examples/python/gi/get-active-connections.py @@ -21,6 +21,8 @@ # This example lists currently active connections +import gi +gi.require_version('NM', '1.0') from gi.repository import GLib, NM if __name__ == "__main__": diff --git a/examples/python/gi/get_ips.py b/examples/python/gi/get_ips.py index 690bd6ef..77e1d171 100755 --- a/examples/python/gi/get_ips.py +++ b/examples/python/gi/get_ips.py @@ -21,6 +21,8 @@ # import sys, socket +import gi +gi.require_version('NM', '1.0') from gi.repository import GLib, NM # diff --git a/examples/python/gi/list-connections.py b/examples/python/gi/list-connections.py index 34b559fc..32ea70f5 100755 --- a/examples/python/gi/list-connections.py +++ b/examples/python/gi/list-connections.py @@ -20,6 +20,8 @@ # Copyright 2012 - 2014 Red Hat, Inc. # +import gi +gi.require_version('NM', '1.0') from gi.repository import NM # This example asks settings service for all configured connections. diff --git a/examples/python/gi/show-wifi-networks.py b/examples/python/gi/show-wifi-networks.py index 7f3bd2db..a8bfbbfe 100755 --- a/examples/python/gi/show-wifi-networks.py +++ b/examples/python/gi/show-wifi-networks.py @@ -21,6 +21,8 @@ # import locale +import gi +gi.require_version('NM', '1.0') from gi.repository import NM # diff --git a/examples/python/gi/update-ip4-method.py b/examples/python/gi/update-ip4-method.py index 983578cf..5e058031 100755 --- a/examples/python/gi/update-ip4-method.py +++ b/examples/python/gi/update-ip4-method.py @@ -27,6 +27,8 @@ # https://developer.gnome.org/NetworkManager/1.0/ref-settings.html # +import gi +gi.require_version('NM', '1.0') from gi.repository import GLib, NM import sys, socket diff --git a/examples/ruby/Makefile.in b/examples/ruby/Makefile.in index b3960334..e314d036 100644 --- a/examples/ruby/Makefile.in +++ b/examples/ruby/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/examples/shell/Makefile.in b/examples/shell/Makefile.in index d22c113e..223d68aa 100644 --- a/examples/shell/Makefile.in +++ b/examples/shell/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/include/Makefile.am b/include/Makefile.am index ff7eac8c..d8085056 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -4,6 +4,7 @@ EXTRA_DIST = \ nm-glib-compat.h \ nm-gvaluearray-compat.h \ nm-test-utils.h \ - nm-macros-internal.h + nm-macros-internal.h \ + nm-version-macros.h.in CLEANFILES=nm-version.h diff --git a/include/Makefile.in b/include/Makefile.in index 3dbcc338..6c5fff87 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -107,7 +107,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = +CONFIG_CLEAN_FILES = nm-version-macros.h CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) @@ -129,7 +129,8 @@ am__can_run_installinfo = \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -am__DIST_COMMON = $(srcdir)/Makefile.in +am__DIST_COMMON = $(srcdir)/Makefile.in \ + $(srcdir)/nm-version-macros.h.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ @@ -253,6 +254,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -399,7 +401,8 @@ EXTRA_DIST = \ nm-glib-compat.h \ nm-gvaluearray-compat.h \ nm-test-utils.h \ - nm-macros-internal.h + nm-macros-internal.h \ + nm-version-macros.h.in CLEANFILES = nm-version.h all: all-am @@ -434,6 +437,8 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): +nm-version-macros.h: $(top_builddir)/config.status $(srcdir)/nm-version-macros.h.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ mostlyclean-libtool: -rm -f *.lo diff --git a/include/nm-macros-internal.h b/include/nm-macros-internal.h index 170fb46c..a2f2da5a 100644 --- a/include/nm-macros-internal.h +++ b/include/nm-macros-internal.h @@ -24,6 +24,7 @@ #include <glib.h> +#include <glib-object.h> /********************************************************/ @@ -83,7 +84,7 @@ * It's not that bad however, because gcc and clang often have the * same name for the same warning. */ -#if defined (__GNUC__) +#if defined (__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) #define NM_PRAGMA_WARNING_DISABLE(warning) \ _Pragma("GCC diagnostic push"); \ _Pragma(_NM_PRAGMA_WARNING_DO(warning)) @@ -95,7 +96,7 @@ #define NM_PRAGMA_WARNING_DISABLE(warning) #endif -#if defined (__GNUC__) +#if defined (__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) #define NM_PRAGMA_WARNING_REENABLE \ _Pragma("GCC diagnostic pop") #elif defined (__clang__) @@ -256,6 +257,17 @@ nm_clear_g_source (guint *id) return FALSE; } +static inline gboolean +nm_clear_g_signal_handler (gpointer self, guint *id) +{ + if (id && *id) { + g_signal_handler_disconnect (self, *id); + *id = 0; + return TRUE; + } + return FALSE; +} + /*****************************************************************************/ /* Determine whether @x is a power of two (@x being an integer type). @@ -265,12 +277,12 @@ nm_clear_g_source (guint *id) #define nm_utils_is_power_of_two(x) ({ \ const typeof(x) __x = (x); \ \ - ((__x & (__x - 1)) == 0) && \ - /* Check if the value is negative. In that case, return FALSE. - * The first expression is a compile time constant, depending on whether - * the type is signed. The second expression is a clumsy way for (__x >= 0), - * which causes a compiler warning for unsigned types. */ \ - ( ( ((typeof(__x)) -1) > ((typeof(__x)) 0) ) || (__x > 0) || (__x == 0) ); \ + /* Check if the value is negative. In that case, return FALSE. + * The first expression is a compile time constant, depending on whether + * the type is signed. The second expression is a clumsy way for (__x >= 0), + * which causes a compiler warning for unsigned types. */ \ + ( ( ((typeof(__x)) -1) > ((typeof(__x)) 0) ) || (__x > 0) || (__x == 0) ) \ + && ((__x & (__x - 1)) == 0); \ }) /*****************************************************************************/ @@ -317,4 +329,17 @@ nm_strstrip (char *str) /*****************************************************************************/ +#define nm_sprintf_buf(buf, format, ...) ({ \ + char * _buf = (buf); \ + \ + /* some static assert trying to ensure that the buffer is statically allocated. + * It disallows a buffer size of sizeof(gpointer) to catch that. */ \ + G_STATIC_ASSERT (G_N_ELEMENTS (buf) == sizeof (buf) && sizeof (buf) != sizeof (char *)); \ + g_snprintf (_buf, sizeof (buf), \ + ""format"", __VA_ARGS__); \ + _buf; \ + }) + +/*****************************************************************************/ + #endif /* __NM_MACROS_INTERNAL_H__ */ diff --git a/include/nm-version-macros.h b/include/nm-version-macros.h new file mode 100644 index 00000000..a3c5dc9b --- /dev/null +++ b/include/nm-version-macros.h @@ -0,0 +1,79 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ +/* + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301 USA. + * + * Copyright 2011, 2015 Red Hat, Inc. + */ + +#ifndef __NM_VERSION_MACROS_H__ +#define __NM_VERSION_MACROS_H__ + +/* This header must not include glib or libnm. */ + +/** + * NM_MAJOR_VERSION: + * + * Evaluates to the major version number of NetworkManager which this source + * is compiled against. + */ +#define NM_MAJOR_VERSION (1) + +/** + * NM_MINOR_VERSION: + * + * Evaluates to the minor version number of NetworkManager which this source + * is compiled against. + */ +#define NM_MINOR_VERSION (0) + +/** + * NM_MICRO_VERSION: + * + * Evaluates to the micro version number of NetworkManager which this source + * compiled against. + */ +#define NM_MICRO_VERSION (8) + +/** + * NM_CHECK_VERSION: + * @major: major version (e.g. 1 for version 1.2.5) + * @minor: minor version (e.g. 2 for version 1.2.5) + * @micro: micro version (e.g. 5 for version 1.2.5) + * + * Returns: %TRUE if the version of the NetworkManager header files + * is the same as or newer than the passed-in version. + */ +#define NM_CHECK_VERSION(major,minor,micro) \ + (NM_MAJOR_VERSION > (major) || \ + (NM_MAJOR_VERSION == (major) && NM_MINOR_VERSION > (minor)) || \ + (NM_MAJOR_VERSION == (major) && NM_MINOR_VERSION == (minor) && NM_MICRO_VERSION >= (micro))) + + +#define NM_ENCODE_VERSION(major,minor,micro) ((major) << 16 | (minor) << 8 | (micro)) + +#define NM_VERSION_0_9_8 (NM_ENCODE_VERSION (0, 9, 8)) +#define NM_VERSION_0_9_10 (NM_ENCODE_VERSION (0, 9, 10)) +#define NM_VERSION_1_0 (NM_ENCODE_VERSION (1, 0, 0)) +#define NM_VERSION_1_0_2 (NM_ENCODE_VERSION (1, 0, 2)) +#define NM_VERSION_1_0_4 (NM_ENCODE_VERSION (1, 0, 4)) +#define NM_VERSION_1_0_6 (NM_ENCODE_VERSION (1, 0, 6)) +#define NM_VERSION_1_0_8 (NM_ENCODE_VERSION (1, 0, 8)) +#define NM_VERSION_1_0_10 (NM_ENCODE_VERSION (1, 0, 10)) + +#define NM_VERSION_CUR_STABLE NM_VERSION_1_0_8 +#define NM_VERSION_NEXT_STABLE NM_VERSION_1_0_10 + +#endif /* __NM_VERSION_MACROS_H__ */ diff --git a/libnm-util/nm-version.h.in b/include/nm-version-macros.h.in index e00f4055..92df50ba 100644 --- a/libnm-util/nm-version.h.in +++ b/include/nm-version-macros.h.in @@ -15,13 +15,13 @@ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA. * - * Copyright 2011 Red Hat, Inc. + * Copyright 2011, 2015 Red Hat, Inc. */ -#ifndef NM_VERSION_H -#define NM_VERSION_H +#ifndef __NM_VERSION_MACROS_H__ +#define __NM_VERSION_MACROS_H__ -#include <glib.h> +/* This header must not include glib or libnm. */ /** * NM_MAJOR_VERSION: @@ -62,8 +62,6 @@ (NM_MAJOR_VERSION == (major) && NM_MINOR_VERSION == (minor) && NM_MICRO_VERSION >= (micro))) -/* Deprecation / Availability macros */ - #define NM_ENCODE_VERSION(major,minor,micro) ((major) << 16 | (minor) << 8 | (micro)) #define NM_VERSION_0_9_8 (NM_ENCODE_VERSION (0, 9, 8)) @@ -73,69 +71,9 @@ #define NM_VERSION_1_0_4 (NM_ENCODE_VERSION (1, 0, 4)) #define NM_VERSION_1_0_6 (NM_ENCODE_VERSION (1, 0, 6)) #define NM_VERSION_1_0_8 (NM_ENCODE_VERSION (1, 0, 8)) +#define NM_VERSION_1_0_10 (NM_ENCODE_VERSION (1, 0, 10)) -#define NM_VERSION_CUR_STABLE NM_VERSION_1_0_6 -#define NM_VERSION_NEXT_STABLE NM_VERSION_1_0_8 - -#if !defined (NM_VERSION_MIN_REQUIRED) || (NM_VERSION_MIN_REQUIRED == 0) -# undef NM_VERSION_MIN_REQUIRED -# define NM_VERSION_MIN_REQUIRED (NM_VERSION_CUR_STABLE) -#endif - -#if !defined (NM_VERSION_MAX_ALLOWED) || (NM_VERSION_MAX_ALLOWED == 0) -# undef NM_VERSION_MAX_ALLOWED -# define NM_VERSION_MAX_ALLOWED (NM_VERSION_CUR_STABLE) -#endif - -/* sanity checks */ -#if NM_VERSION_MIN_REQUIRED > NM_VERSION_NEXT_STABLE -#error "NM_VERSION_MIN_REQUIRED must be <= NM_VERSION_NEXT_STABLE" -#endif -#if NM_VERSION_MAX_ALLOWED < NM_VERSION_MIN_REQUIRED -#error "NM_VERSION_MAX_ALLOWED must be >= NM_VERSION_MIN_REQUIRED" -#endif -#if NM_VERSION_MIN_REQUIRED < NM_VERSION_0_9_8 -#error "NM_VERSION_MIN_REQUIRED must be >= NM_VERSION_0_9_8" -#endif - -#if NM_VERSION_MIN_REQUIRED >= NM_VERSION_0_9_10 -# define NM_DEPRECATED_IN_0_9_10 G_DEPRECATED -# define NM_DEPRECATED_IN_0_9_10_FOR(f) G_DEPRECATED_FOR(f) -#else -# define NM_DEPRECATED_IN_0_9_10 -# define NM_DEPRECATED_IN_0_9_10_FOR(f) -#endif - -#if NM_VERSION_MAX_ALLOWED < NM_VERSION_0_9_10 -# define NM_AVAILABLE_IN_0_9_10 G_UNAVAILABLE(0.9,10) -#else -# define NM_AVAILABLE_IN_0_9_10 -#endif - -#if NM_VERSION_MIN_REQUIRED >= NM_VERSION_1_0 -# define NM_DEPRECATED_IN_1_0 G_DEPRECATED -# define NM_DEPRECATED_IN_1_0_FOR(f) G_DEPRECATED_FOR(f) -#else -# define NM_DEPRECATED_IN_1_0 -# define NM_DEPRECATED_IN_1_0_FOR(f) -#endif - -#if NM_VERSION_MAX_ALLOWED < NM_VERSION_1_0 -# define NM_AVAILABLE_IN_1_0 G_UNAVAILABLE(1,0) -#else -# define NM_AVAILABLE_IN_1_0 -#endif - -#if NM_VERSION_MAX_ALLOWED < NM_VERSION_1_0_4 -# define NM_AVAILABLE_IN_1_0_4 G_UNAVAILABLE(1,0.4) -#else -# define NM_AVAILABLE_IN_1_0_4 -#endif - -#if NM_VERSION_MAX_ALLOWED < NM_VERSION_1_0_6 -# define NM_AVAILABLE_IN_1_0_6 G_UNAVAILABLE(1,0.6) -#else -# define NM_AVAILABLE_IN_1_0_6 -#endif +#define NM_VERSION_CUR_STABLE NM_VERSION_1_0_8 +#define NM_VERSION_NEXT_STABLE NM_VERSION_1_0_10 -#endif /* NM_VERSION_H */ +#endif /* __NM_VERSION_MACROS_H__ */ diff --git a/introspection/Makefile.in b/introspection/Makefile.in index d9f37a99..53c6447c 100644 --- a/introspection/Makefile.in +++ b/introspection/Makefile.in @@ -316,6 +316,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/introspection/nm-manager.xml b/introspection/nm-manager.xml index f0d04438..db68214d 100644 --- a/introspection/nm-manager.xml +++ b/introspection/nm-manager.xml @@ -211,7 +211,7 @@ WIFI, BT, MB, DHCP4, DHCP6, PPP, WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT, AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX, INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE, DBUS_PROPS, - TEAM, CONCHECK, DCB, DISPATCH]. + TEAM, CONCHECK, DCB, DISPATCH, AUDIT]. In addition to these domains, the following special domains can be used: [NONE, ALL, DEFAULT, DHCP, IP]. You can also specify that some domains should log at a different level from the default by appending a colon (':') diff --git a/libnm-core/Makefile.am b/libnm-core/Makefile.am index 8fab84bc..d76a48da 100644 --- a/libnm-core/Makefile.am +++ b/libnm-core/Makefile.am @@ -4,6 +4,7 @@ SUBDIRS = . tests AM_CPPFLAGS = \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -DG_LOG_DOMAIN=\""libnm"\" \ -DLOCALEDIR=\"$(datadir)/locale\" \ -DNETWORKMANAGER_COMPILATION \ @@ -24,7 +25,7 @@ libnm_core_la_SOURCES = \ $(libnm_core_private_headers) GLIB_GENERATED = nm-core-enum-types.h nm-core-enum-types.c -nm_core_enum_types_sources = $(notdir $(libnminclude_HEADERS)) +nm_core_enum_types_sources = $(filter-out %nm-core-enum-types.h,$(libnminclude_HEADERS)) GLIB_MKENUMS_H_FLAGS = --identifier-prefix NM GLIB_MKENUMS_C_FLAGS = --identifier-prefix NM diff --git a/libnm-core/Makefile.in b/libnm-core/Makefile.in index 6f502e38..f4b6bcd0 100644 --- a/libnm-core/Makefile.in +++ b/libnm-core/Makefile.in @@ -120,7 +120,7 @@ DIST_COMMON = $(srcdir)/Makefile.am $(libnminclude_HEADERS) \ $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = nm-version.h +CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = LTLIBRARIES = $(noinst_LTLIBRARIES) am__DEPENDENCIES_1 = @@ -288,7 +288,7 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.libnm-core \ - $(srcdir)/nm-version.h.in $(top_srcdir)/build-aux/depcomp + $(top_srcdir)/build-aux/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ @@ -437,6 +437,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -578,16 +579,17 @@ with_netconfig = @with_netconfig@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ SUBDIRS = . tests -AM_CPPFLAGS = -I${top_srcdir}/include -DG_LOG_DOMAIN=\""libnm"\" \ - -DLOCALEDIR=\"$(datadir)/locale\" -DNETWORKMANAGER_COMPILATION \ +AM_CPPFLAGS = -I${top_srcdir}/include -I${top_builddir}/include \ + -DG_LOG_DOMAIN=\""libnm"\" -DLOCALEDIR=\"$(datadir)/locale\" \ + -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE $(GLIB_CFLAGS) \ $(am__append_1) $(am__append_4) noinst_LTLIBRARIES = libnm-core.la core = $(top_srcdir)/libnm-core core_build = $(top_builddir)/libnm-core libnm_core_headers = \ + $(top_builddir)/include/nm-version-macros.h \ $(core_build)/nm-core-enum-types.h \ - $(core_build)/nm-version.h \ $(core)/nm-connection.h \ $(core)/nm-core-types.h \ $(core)/nm-dbus-interface.h \ @@ -622,6 +624,7 @@ libnm_core_headers = \ $(core)/nm-setting.h \ $(core)/nm-simple-connection.h \ $(core)/nm-utils.h \ + $(core)/nm-version.h \ $(core)/nm-vpn-dbus-interface.h libnm_core_private_headers = \ @@ -682,7 +685,7 @@ libnminclude_HEADERS = $(libnm_core_headers) libnm_core_la_SOURCES = $(libnm_core_sources) \ $(libnm_core_private_headers) $(am__append_2) $(am__append_5) GLIB_GENERATED = nm-core-enum-types.h nm-core-enum-types.c -nm_core_enum_types_sources = $(notdir $(libnminclude_HEADERS)) +nm_core_enum_types_sources = $(filter-out %nm-core-enum-types.h,$(libnminclude_HEADERS)) GLIB_MKENUMS_H_FLAGS = --identifier-prefix NM GLIB_MKENUMS_C_FLAGS = --identifier-prefix NM libnm_core_la_LIBADD = $(GLIB_LIBS) $(UUID_LIBS) $(am__append_3) \ @@ -724,8 +727,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): -nm-version.h: $(top_builddir)/config.status $(srcdir)/nm-version.h.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstLTLIBRARIES: -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) diff --git a/libnm-core/Makefile.libnm-core b/libnm-core/Makefile.libnm-core index 09a80c71..0b606f32 100644 --- a/libnm-core/Makefile.libnm-core +++ b/libnm-core/Makefile.libnm-core @@ -6,8 +6,8 @@ core = $(top_srcdir)/libnm-core core_build = $(top_builddir)/libnm-core libnm_core_headers = \ + $(top_builddir)/include/nm-version-macros.h \ $(core_build)/nm-core-enum-types.h \ - $(core_build)/nm-version.h \ $(core)/nm-connection.h \ $(core)/nm-core-types.h \ $(core)/nm-dbus-interface.h \ @@ -42,6 +42,7 @@ libnm_core_headers = \ $(core)/nm-setting.h \ $(core)/nm-simple-connection.h \ $(core)/nm-utils.h \ + $(core)/nm-version.h \ $(core)/nm-vpn-dbus-interface.h libnm_core_private_headers = \ diff --git a/libnm-core/nm-core-enum-types.c b/libnm-core/nm-core-enum-types.c index a9e4266a..d2281653 100644 --- a/libnm-core/nm-core-enum-types.c +++ b/libnm-core/nm-core-enum-types.c @@ -5,7 +5,7 @@ #include "nm-core-enum-types.h" -#include "nm-version.h" +#include "nm-version-macros.h" #include "nm-connection.h" #include "nm-core-types.h" #include "nm-dbus-interface.h" @@ -40,6 +40,7 @@ #include "nm-setting.h" #include "nm-simple-connection.h" #include "nm-utils.h" +#include "nm-version.h" #include "nm-vpn-dbus-interface.h" GType @@ -868,13 +869,14 @@ nm_setting_wired_wake_on_lan_get_type (void) if (g_once_init_enter (&g_define_type_id__volatile)) { static const GFlagsValue values[] = { - { NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT, "NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT", "default" }, { NM_SETTING_WIRED_WAKE_ON_LAN_PHY, "NM_SETTING_WIRED_WAKE_ON_LAN_PHY", "phy" }, { NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST, "NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST", "unicast" }, { NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST, "NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST", "multicast" }, { NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST, "NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST", "broadcast" }, { NM_SETTING_WIRED_WAKE_ON_LAN_ARP, "NM_SETTING_WIRED_WAKE_ON_LAN_ARP", "arp" }, { NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC, "NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC", "magic" }, + { NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT, "NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT", "default" }, + { NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE, "NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE", "ignore" }, { 0, NULL, NULL } }; GType g_define_type_id = diff --git a/libnm-core/nm-core-internal.h b/libnm-core/nm-core-internal.h index 73a379c3..56cb7806 100644 --- a/libnm-core/nm-core-internal.h +++ b/libnm-core/nm-core-internal.h @@ -35,7 +35,6 @@ #include "nm-connection.h" #include "nm-core-enum-types.h" -#include "nm-dbus-interface.h" #include "nm-setting-8021x.h" #include "nm-setting-adsl.h" #include "nm-setting-bluetooth.h" diff --git a/libnm-core/nm-core-types.h b/libnm-core/nm-core-types.h index 524d6396..19388c5b 100644 --- a/libnm-core/nm-core-types.h +++ b/libnm-core/nm-core-types.h @@ -23,6 +23,7 @@ #include <glib-object.h> +#include <nm-version.h> #include <nm-dbus-interface.h> #include <nm-core-enum-types.h> diff --git a/libnm-core/nm-dbus-interface.h b/libnm-core/nm-dbus-interface.h index 8c5cd3c4..ac20fa2e 100644 --- a/libnm-core/nm-dbus-interface.h +++ b/libnm-core/nm-dbus-interface.h @@ -26,7 +26,11 @@ #ifndef __NM_DBUS_INTERFACE_H__ #define __NM_DBUS_INTERFACE_H__ -#include "nm-version.h" +/* This header must not include glib or libnm. */ + +#ifndef NM_VERSION_H +#define NM_AVAILABLE_IN_1_0_6 +#endif /* * dbus services details @@ -639,4 +643,8 @@ typedef enum /*< flags >*/ { NM_SECRET_AGENT_CAPABILITY_LAST = NM_SECRET_AGENT_CAPABILITY_VPN_HINTS } NMSecretAgentCapabilities; +#ifndef NM_VERSION_H +#undef NM_AVAILABLE_IN_1_0_6 +#endif + #endif /* __NM_DBUS_INTERFACE_H__ */ diff --git a/libnm-core/nm-errors.c b/libnm-core/nm-errors.c index 3b1b1bc9..222f2de6 100644 --- a/libnm-core/nm-errors.c +++ b/libnm-core/nm-errors.c @@ -25,7 +25,6 @@ #include "nm-errors.h" #include "nm-glib-compat.h" -#include "nm-dbus-interface.h" #include "nm-vpn-dbus-interface.h" #include "nm-core-internal.h" diff --git a/libnm-core/nm-keyfile-reader.c b/libnm-core/nm-keyfile-reader.c index 353804f9..9d8c8734 100644 --- a/libnm-core/nm-keyfile-reader.c +++ b/libnm-core/nm-keyfile-reader.c @@ -1253,6 +1253,15 @@ static KeyParser key_parsers[] = { }; static void +set_default_for_missing_key (NMSetting *setting, const char *property) +{ + /* Set a value different from the default value of the property's spec */ + + if (NM_IS_SETTING_VLAN (setting) && !strcmp (property, NM_SETTING_VLAN_FLAGS)) + g_object_set (setting, property, 0, NULL); +} + +static void read_one_setting_value (NMSetting *setting, const char *key, const GValue *value, @@ -1316,6 +1325,9 @@ read_one_setting_value (NMSetting *setting, err->message)) goto out_error; } + + /* Allow default values different than in property spec */ + set_default_for_missing_key (setting, key); return; } @@ -1651,6 +1663,18 @@ nm_keyfile_read (GKeyFile *keyfile, } } + /* Make sure that if [vlan] group was missing we set vlan.flags to 0 + * for backwards compatibility */ + if (nm_connection_is_type (connection, NM_SETTING_VLAN_SETTING_NAME)) { + if (!nm_connection_get_setting_vlan (connection)) { + NMSettingVlan *s_vlan; + + s_vlan = NM_SETTING_VLAN (nm_setting_vlan_new ()); + g_object_set (s_vlan, NM_SETTING_VLAN_FLAGS, 0, NULL); + nm_connection_add_setting (connection, NM_SETTING (s_vlan)); + } + } + return connection; out_error: g_propagate_error (error, info.error); diff --git a/libnm-core/nm-keyfile-writer.c b/libnm-core/nm-keyfile-writer.c index ff433b26..1dac5c32 100644 --- a/libnm-core/nm-keyfile-writer.c +++ b/libnm-core/nm-keyfile-writer.c @@ -30,18 +30,7 @@ #include <string.h> #include <glib/gi18n-lib.h> -#include "nm-setting.h" -#include "nm-setting-connection.h" -#include "nm-setting-ip4-config.h" -#include "nm-setting-ip6-config.h" -#include "nm-setting-vpn.h" -#include "nm-setting-wired.h" -#include "nm-setting-wireless.h" -#include "nm-setting-ip4-config.h" -#include "nm-setting-bluetooth.h" -#include "nm-setting-8021x.h" -#include "nm-utils.h" - +#include "nm-core-internal.h" #include "gsystem-local-alloc.h" #include "nm-glib-compat.h" #include "nm-keyfile-internal.h" @@ -598,6 +587,15 @@ static KeyWriter key_writers[] = { { NULL, NULL, NULL } }; +static gboolean +can_omit_default_value (NMSetting *setting, const char *property) +{ + if (NM_IS_SETTING_VLAN (setting) && !strcmp (property, NM_SETTING_VLAN_FLAGS)) + return FALSE; + + return TRUE; +} + static void write_setting_value (NMSetting *setting, const char *key, @@ -628,7 +626,8 @@ write_setting_value (NMSetting *setting, /* If the value is the default value, remove the item from the keyfile */ pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (setting), key); if (pspec) { - if (g_param_value_defaults (pspec, (GValue *) value)) { + if ( can_omit_default_value (setting, key) + && g_param_value_defaults (pspec, (GValue *) value)) { g_key_file_remove_key (info->keyfile, setting_name, key, NULL); return; } diff --git a/libnm-core/nm-setting-adsl.c b/libnm-core/nm-setting-adsl.c index 2e71f8e7..7d78f060 100644 --- a/libnm-core/nm-setting-adsl.c +++ b/libnm-core/nm-setting-adsl.c @@ -267,6 +267,7 @@ set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { NMSettingAdslPrivate *priv = NM_SETTING_ADSL_GET_PRIVATE (object); + const char *str; switch (prop_id) { case PROP_USERNAME: @@ -282,11 +283,13 @@ set_property (GObject *object, guint prop_id, break; case PROP_PROTOCOL: g_free (priv->protocol); - priv->protocol = g_ascii_strdown (g_value_get_string (value), -1); + str = g_value_get_string (value); + priv->protocol = str ? g_ascii_strdown (str, -1) : NULL; break; case PROP_ENCAPSULATION: g_free (priv->encapsulation); - priv->encapsulation = g_ascii_strdown (g_value_get_string (value), -1); + str = g_value_get_string (value); + priv->encapsulation = str ? g_ascii_strdown (str, -1) : NULL; break; case PROP_VPI: priv->vpi = g_value_get_uint (value); diff --git a/libnm-core/nm-setting-cdma.c b/libnm-core/nm-setting-cdma.c index ecc387c8..6fd2ad8b 100644 --- a/libnm-core/nm-setting-cdma.c +++ b/libnm-core/nm-setting-cdma.c @@ -146,7 +146,7 @@ verify (NMSetting *setting, NMConnection *connection, GError **error) g_set_error_literal (error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_INVALID_PROPERTY, - _("property is empty'")); + _("property is empty")); g_prefix_error (error, "%s.%s: ", NM_SETTING_CDMA_SETTING_NAME, NM_SETTING_CDMA_NUMBER); return FALSE; } diff --git a/libnm-core/nm-setting-ip-config.c b/libnm-core/nm-setting-ip-config.c index 4b73d5fd..3a67ca32 100644 --- a/libnm-core/nm-setting-ip-config.c +++ b/libnm-core/nm-setting-ip-config.c @@ -74,7 +74,7 @@ valid_ip (int family, const char *ip, GError **error) { if (!ip) { g_set_error (error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_FAILED, - family == AF_INET ? _("Missing IPv4 address") : _("Missing IPv6 address'")); + family == AF_INET ? _("Missing IPv4 address") : _("Missing IPv6 address")); return FALSE; } if (!nm_utils_ipaddr_valid (family, ip)) { @@ -1415,7 +1415,7 @@ nm_setting_ip_config_get_num_addresses (NMSettingIPConfig *setting) * @setting: the #NMSettingIPConfig * @i: index number of the address to return * - * Returns: the address at index @i + * Returns: (transfer none): the address at index @i **/ NMIPAddress * nm_setting_ip_config_get_address (NMSettingIPConfig *setting, int i) @@ -1567,7 +1567,7 @@ nm_setting_ip_config_get_num_routes (NMSettingIPConfig *setting) * @setting: the #NMSettingIPConfig * @i: index number of the route to return * - * Returns: the route at index @i + * Returns: (transfer none): the route at index @i **/ NMIPRoute * nm_setting_ip_config_get_route (NMSettingIPConfig *setting, int i) diff --git a/libnm-core/nm-setting-ip6-config.c b/libnm-core/nm-setting-ip6-config.c index 7e3ae4d4..619e002c 100644 --- a/libnm-core/nm-setting-ip6-config.c +++ b/libnm-core/nm-setting-ip6-config.c @@ -130,7 +130,6 @@ verify (NMSetting *setting, NMConnection *connection, GError **error) g_set_error (error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_INVALID_PROPERTY, - _("'%s' not allowed for %s=%s"), _("this property is not allowed for '%s=%s'"), NM_SETTING_IP_CONFIG_METHOD, method); g_prefix_error (error, "%s.%s: ", NM_SETTING_IP6_CONFIG_SETTING_NAME, NM_SETTING_IP_CONFIG_DNS); diff --git a/libnm-core/nm-setting-olpc-mesh.c b/libnm-core/nm-setting-olpc-mesh.c index c1d54bee..a3a5d881 100644 --- a/libnm-core/nm-setting-olpc-mesh.c +++ b/libnm-core/nm-setting-olpc-mesh.c @@ -26,7 +26,6 @@ #include <glib/gi18n-lib.h> #include "nm-setting-olpc-mesh.h" -#include "nm-dbus-interface.h" #include "nm-utils.h" #include "nm-utils-private.h" #include "nm-setting-private.h" diff --git a/libnm-core/nm-setting-vlan.c b/libnm-core/nm-setting-vlan.c index d904ad52..0547141c 100644 --- a/libnm-core/nm-setting-vlan.c +++ b/libnm-core/nm-setting-vlan.c @@ -565,7 +565,7 @@ priority_strv_to_maplist (NMVlanPriorityMap map, char **strv) GSList *list = NULL; int i; - for (i = 0; strv[i]; i++) { + for (i = 0; strv && strv[i]; i++) { PriorityMap *item; item = priority_map_new_from_str (map, strv[i]); @@ -749,7 +749,7 @@ nm_setting_vlan_class_init (NMSettingVlanClass *setting_class) (object_class, PROP_FLAGS, g_param_spec_flags (NM_SETTING_VLAN_FLAGS, "", "", NM_TYPE_VLAN_FLAGS, - 0, + NM_VLAN_FLAG_REORDER_HEADERS, G_PARAM_READWRITE | G_PARAM_CONSTRUCT | NM_SETTING_PARAM_INFERRABLE | @@ -763,7 +763,7 @@ nm_setting_vlan_class_init (NMSettingVlanClass *setting_class) * "from" and "to" are unsigned integers, ie "7:3". **/ /* ---ifcfg-rh--- - * property: ingress-property-map + * property: ingress-priority-map * variable: VLAN_INGRESS_PRIORITY_MAP * description: Ingress priority mapping. * example: VLAN_INGRESS_PRIORITY_MAP=4:2,3:5 @@ -785,7 +785,7 @@ nm_setting_vlan_class_init (NMSettingVlanClass *setting_class) * both "from" and "to" are unsigned integers, ie "7:3". **/ /* ---ifcfg-rh--- - * property: egress-property-map + * property: egress-priority-map * variable: VLAN_EGRESS_PRIORITY_MAP * description: Egress priority mapping. * example: VLAN_EGRESS_PRIORITY_MAP=5:4,4:1,3:7 diff --git a/libnm-core/nm-setting-wired.c b/libnm-core/nm-setting-wired.c index 3d0c5b64..c38b1874 100644 --- a/libnm-core/nm-setting-wired.c +++ b/libnm-core/nm-setting-wired.c @@ -696,12 +696,12 @@ verify (NMSetting *setting, NMConnection *connection, GError **error) return FALSE; } - if ( NM_FLAGS_HAS (priv->wol, NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT) - && NM_FLAGS_ANY (priv->wol, NM_SETTING_WIRED_WAKE_ON_LAN_ALL)) { + if ( NM_FLAGS_ANY (priv->wol, NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS) + && !nm_utils_is_power_of_two (priv->wol)) { g_set_error_literal (error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_INVALID_PROPERTY, - _("Wake-on-LAN mode 'default' is incompatible with other flags")); + _("Wake-on-LAN mode 'default' and 'ignore' are exclusive flags")); g_prefix_error (error, "%s.%s: ", NM_SETTING_WIRED_SETTING_NAME, NM_SETTING_WIRED_WAKE_ON_LAN); return FALSE; } @@ -1190,7 +1190,10 @@ nm_setting_wired_class_init (NMSettingWiredClass *setting_class) * May be any combination of %NM_SETTING_WIRED_WAKE_ON_LAN_PHY, * %NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST, %NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST, * %NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST, %NM_SETTING_WIRED_WAKE_ON_LAN_ARP, - * %NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC. + * %NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC or the special values + * %NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (to use global settings) and + * %NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (to disable management of Wake-on-LAN in + * NetworkManager). * * Since: 1.0.6 **/ diff --git a/libnm-core/nm-setting-wired.h b/libnm-core/nm-setting-wired.h index 44b7c4d0..e1fd6f67 100644 --- a/libnm-core/nm-setting-wired.h +++ b/libnm-core/nm-setting-wired.h @@ -43,14 +43,19 @@ G_BEGIN_DECLS /** * NMSettingWiredWakeOnLan: * @NM_SETTING_WIRED_WAKE_ON_LAN_NONE: Wake-on-LAN disabled - * @NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT: Use the default value * @NM_SETTING_WIRED_WAKE_ON_LAN_PHY: Wake on PHY activity * @NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST: Wake on unicast messages * @NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST: Wake on multicast messages * @NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST: Wake on broadcast messages * @NM_SETTING_WIRED_WAKE_ON_LAN_ARP: Wake on ARP * @NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC: Wake on magic packet - * @NM_SETTING_WIRED_WAKE_ON_LAN_ALL: Wake on all events + * @NM_SETTING_WIRED_WAKE_ON_LAN_ALL: Wake on all events. This does not + * include the exclusive flags @NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT or + * @NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE. + * @NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT: Use the default value + * @NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE: Don't change configured settings + * @NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS: Mask of flags that are + * incompatible with other flags * * Options for #NMSettingWired:wake-on-lan. Note that not all options * are supported by all devices. @@ -59,15 +64,19 @@ G_BEGIN_DECLS */ typedef enum { /*< flags >*/ NM_SETTING_WIRED_WAKE_ON_LAN_NONE = 0, /*< skip >*/ - NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT = (1 << 0), NM_SETTING_WIRED_WAKE_ON_LAN_PHY = (1 << 1), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST = (1 << 2), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST = (1 << 3), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST = (1 << 4), NM_SETTING_WIRED_WAKE_ON_LAN_ARP = (1 << 5), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC = (1 << 6), - _NM_SETTING_WIRED_WAKE_ON_LAN_LAST, /*< skip >*/ - NM_SETTING_WIRED_WAKE_ON_LAN_ALL = (((_NM_SETTING_WIRED_WAKE_ON_LAN_LAST - 1) << 1) - 1 - NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT) /*< skip >*/ + + _NM_SETTING_WIRED_WAKE_ON_LAN_LAST_OPT, /*< skip >*/ + NM_SETTING_WIRED_WAKE_ON_LAN_ALL = (((_NM_SETTING_WIRED_WAKE_ON_LAN_LAST_OPT - 1) << 1) - 1) - (1 << 0 /*DEFAULT*/), /*< skip >*/ + + NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT = (1 << 0), + NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE = (1 << 15), + NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS = NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT | NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE, /*< skip >*/ } NMSettingWiredWakeOnLan; #define NM_SETTING_WIRED_PORT "port" diff --git a/libnm-core/nm-setting-wireless.c b/libnm-core/nm-setting-wireless.c index ce3cf9a7..34c97fe8 100644 --- a/libnm-core/nm-setting-wireless.c +++ b/libnm-core/nm-setting-wireless.c @@ -27,7 +27,6 @@ #include <glib/gi18n-lib.h> #include "nm-setting-wireless.h" -#include "nm-dbus-interface.h" #include "nm-utils.h" #include "nm-utils-private.h" #include "nm-setting-private.h" diff --git a/libnm-core/nm-setting-wireless.h b/libnm-core/nm-setting-wireless.h index 98fa98dc..ef27ded2 100644 --- a/libnm-core/nm-setting-wireless.h +++ b/libnm-core/nm-setting-wireless.h @@ -29,7 +29,6 @@ #include <nm-setting.h> #include <nm-setting-wireless-security.h> -#include <nm-dbus-interface.h> G_BEGIN_DECLS diff --git a/libnm-core/nm-utils.c b/libnm-core/nm-utils.c index 66dd1c87..987cf731 100644 --- a/libnm-core/nm-utils.c +++ b/libnm-core/nm-utils.c @@ -3676,7 +3676,7 @@ char *nm_utils_enum_to_str (GType type, int value) break; if (!first) - g_string_append_c (str, ','); + g_string_append (str, ", "); g_string_append (str, flags_value->value_nick); value &= ~flags_value->value; @@ -3733,7 +3733,7 @@ gboolean nm_utils_enum_from_str (GType type, const char *str, gs_strfreev char **strv = NULL; int i; - strv = g_strsplit (stripped, ",", 0); + strv = g_strsplit_set (stripped, " \t,", 0); for (i = 0; strv[i]; i++) { if (!strv[i][0]) continue; diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h index d1f4bcf4..e97b823e 100644 --- a/libnm-core/nm-utils.h +++ b/libnm-core/nm-utils.h @@ -33,7 +33,6 @@ #include <linux/if_ether.h> #include <linux/if_infiniband.h> -#include "nm-dbus-interface.h" #include "nm-core-enum-types.h" #include "nm-setting-wireless-security.h" diff --git a/libnm-core/nm-version.h b/libnm-core/nm-version.h index e26feca6..5f3a8c94 100644 --- a/libnm-core/nm-version.h +++ b/libnm-core/nm-version.h @@ -15,7 +15,7 @@ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA. * - * Copyright 2011 Red Hat, Inc. + * Copyright 2011, 2015 Red Hat, Inc. */ #ifndef NM_VERSION_H @@ -23,60 +23,10 @@ #include <glib.h> -/** - * NM_MAJOR_VERSION: - * - * Evaluates to the major version number of NetworkManager which this source - * is compiled against. - */ -#define NM_MAJOR_VERSION (1) - -/** - * NM_MINOR_VERSION: - * - * Evaluates to the minor version number of NetworkManager which this source - * is compiled against. - */ -#define NM_MINOR_VERSION (0) - -/** - * NM_MICRO_VERSION: - * - * Evaluates to the micro version number of NetworkManager which this source - * compiled against. - */ -#define NM_MICRO_VERSION (6) - -/** - * NM_CHECK_VERSION: - * @major: major version (e.g. 1 for version 1.2.5) - * @minor: minor version (e.g. 2 for version 1.2.5) - * @micro: micro version (e.g. 5 for version 1.2.5) - * - * Returns: %TRUE if the version of the NetworkManager header files - * is the same as or newer than the passed-in version. - */ -#define NM_CHECK_VERSION(major,minor,micro) \ - (NM_MAJOR_VERSION > (major) || \ - (NM_MAJOR_VERSION == (major) && NM_MINOR_VERSION > (minor)) || \ - (NM_MAJOR_VERSION == (major) && NM_MINOR_VERSION == (minor) && NM_MICRO_VERSION >= (micro))) - +#include <nm-version-macros.h> /* Deprecation / Availability macros */ -#define NM_ENCODE_VERSION(major,minor,micro) ((major) << 16 | (minor) << 8 | (micro)) - -#define NM_VERSION_0_9_8 (NM_ENCODE_VERSION (0, 9, 8)) -#define NM_VERSION_0_9_10 (NM_ENCODE_VERSION (0, 9, 10)) -#define NM_VERSION_1_0 (NM_ENCODE_VERSION (1, 0, 0)) -#define NM_VERSION_1_0_2 (NM_ENCODE_VERSION (1, 0, 2)) -#define NM_VERSION_1_0_4 (NM_ENCODE_VERSION (1, 0, 4)) -#define NM_VERSION_1_0_6 (NM_ENCODE_VERSION (1, 0, 6)) -#define NM_VERSION_1_0_8 (NM_ENCODE_VERSION (1, 0, 8)) - -#define NM_VERSION_CUR_STABLE NM_VERSION_1_0_6 -#define NM_VERSION_NEXT_STABLE NM_VERSION_1_0_8 - #if !defined (NM_VERSION_MIN_REQUIRED) || (NM_VERSION_MIN_REQUIRED == 0) # undef NM_VERSION_MIN_REQUIRED # define NM_VERSION_MIN_REQUIRED (NM_VERSION_CUR_STABLE) @@ -138,4 +88,10 @@ # define NM_AVAILABLE_IN_1_0_6 #endif +#if NM_VERSION_MAX_ALLOWED < NM_VERSION_1_0_8 +# define NM_AVAILABLE_IN_1_0_8 G_UNAVAILABLE(1,0.8) +#else +# define NM_AVAILABLE_IN_1_0_8 +#endif + #endif /* NM_VERSION_H */ diff --git a/libnm-core/tests/Makefile.am b/libnm-core/tests/Makefile.am index dd38b3d6..bcccfda9 100644 --- a/libnm-core/tests/Makefile.am +++ b/libnm-core/tests/Makefile.am @@ -13,6 +13,7 @@ certsdir = $(srcdir)/certs AM_CPPFLAGS = \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DNETWORKMANAGER_COMPILATION \ diff --git a/libnm-core/tests/Makefile.in b/libnm-core/tests/Makefile.in index a37acbe2..e46146a4 100644 --- a/libnm-core/tests/Makefile.in +++ b/libnm-core/tests/Makefile.in @@ -567,6 +567,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -715,6 +716,7 @@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@certsdir = $(srcdir)/certs @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I${top_srcdir}/include \ +@ENABLE_TESTS_TRUE@ -I${top_builddir}/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-core \ @ENABLE_TESTS_TRUE@ -DNETWORKMANAGER_COMPILATION \ diff --git a/libnm-core/tests/test-general.c b/libnm-core/tests/test-general.c index e9483652..53d8195c 100644 --- a/libnm-core/tests/test-general.c +++ b/libnm-core/tests/test-general.c @@ -4284,7 +4284,7 @@ again: * by randomly setting bits. */ numbits = g_rand_int_range (rand, 1, 65); while (xno != ~((guint64) 0) && numbits > 0) { - guint64 v = (1LL << g_rand_int_range (rand, 0, 65)); + guint64 v = (1LL << g_rand_int_range (rand, 0, 64)); if ((xno | v) != xno) { xno |= v; @@ -4582,12 +4582,12 @@ static void test_nm_utils_enum (void) test_nm_utils_enum_to_str_do (meta_flags, NM_TEST_GENERAL_META_FLAGS_BAZ, "baz"); test_nm_utils_enum_to_str_do (meta_flags, NM_TEST_GENERAL_META_FLAGS_FOO | NM_TEST_GENERAL_META_FLAGS_BAR | - NM_TEST_GENERAL_META_FLAGS_BAZ, "foo,bar,baz"); + NM_TEST_GENERAL_META_FLAGS_BAZ, "foo, bar, baz"); test_nm_utils_enum_to_str_do (color_flags, NM_TEST_GENERAL_COLOR_FLAGS_RED, "red"); test_nm_utils_enum_to_str_do (color_flags, NM_TEST_GENERAL_COLOR_FLAGS_WHITE, ""); test_nm_utils_enum_to_str_do (color_flags, NM_TEST_GENERAL_COLOR_FLAGS_RED | - NM_TEST_GENERAL_COLOR_FLAGS_GREEN, "red,green"); + NM_TEST_GENERAL_COLOR_FLAGS_GREEN, "red, green"); test_nm_utils_enum_from_str_do (bool_enum, "", FALSE, 0, NULL); test_nm_utils_enum_from_str_do (bool_enum, " ", FALSE, 0, NULL); @@ -4601,6 +4601,8 @@ static void test_nm_utils_enum (void) test_nm_utils_enum_from_str_do (meta_flags, "foo", TRUE, NM_TEST_GENERAL_META_FLAGS_FOO, NULL); test_nm_utils_enum_from_str_do (meta_flags, "foo,baz", TRUE, NM_TEST_GENERAL_META_FLAGS_FOO | NM_TEST_GENERAL_META_FLAGS_BAZ, NULL); + test_nm_utils_enum_from_str_do (meta_flags, "foo, baz", TRUE, NM_TEST_GENERAL_META_FLAGS_FOO | + NM_TEST_GENERAL_META_FLAGS_BAZ, NULL); test_nm_utils_enum_from_str_do (meta_flags, "foo,,bar", TRUE, NM_TEST_GENERAL_META_FLAGS_FOO | NM_TEST_GENERAL_META_FLAGS_BAR, NULL); test_nm_utils_enum_from_str_do (meta_flags, "foo,baz,quux,bar", FALSE, 0, "quux"); @@ -4637,18 +4639,18 @@ int main (int argc, char **argv) g_test_add_func ("/core/general/test_setting_to_dbus_enum", test_setting_to_dbus_enum); g_test_add_func ("/core/general/test_setting_compare_id", test_setting_compare_id); g_test_add_func ("/core/general/test_setting_compare_timestamp", test_setting_compare_timestamp); -#define ADD_FUNC(func, secret_flags, comp_flags, remove_secret) \ - g_test_add_data_func_full ("/core/general/" G_STRINGIFY (func), \ +#define ADD_FUNC(name, func, secret_flags, comp_flags, remove_secret) \ + g_test_add_data_func_full ("/core/general/" G_STRINGIFY (func) "_" name, \ test_data_compare_secrets_new (secret_flags, comp_flags, remove_secret), \ func, g_free) - ADD_FUNC (test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_AGENT_OWNED, NM_SETTING_COMPARE_FLAG_IGNORE_AGENT_OWNED_SECRETS, TRUE); - ADD_FUNC (test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_NOT_SAVED, NM_SETTING_COMPARE_FLAG_IGNORE_NOT_SAVED_SECRETS, TRUE); - ADD_FUNC (test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_IGNORE_SECRETS, TRUE); - ADD_FUNC (test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_EXACT, FALSE); - ADD_FUNC (test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_AGENT_OWNED, NM_SETTING_COMPARE_FLAG_IGNORE_AGENT_OWNED_SECRETS, TRUE); - ADD_FUNC (test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_NOT_SAVED, NM_SETTING_COMPARE_FLAG_IGNORE_NOT_SAVED_SECRETS, TRUE); - ADD_FUNC (test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_IGNORE_SECRETS, TRUE); - ADD_FUNC (test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_EXACT, FALSE); + ADD_FUNC ("agent_owned", test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_AGENT_OWNED, NM_SETTING_COMPARE_FLAG_IGNORE_AGENT_OWNED_SECRETS, TRUE); + ADD_FUNC ("not_saved", test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_NOT_SAVED, NM_SETTING_COMPARE_FLAG_IGNORE_NOT_SAVED_SECRETS, TRUE); + ADD_FUNC ("secrets", test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_IGNORE_SECRETS, TRUE); + ADD_FUNC ("exact", test_setting_compare_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_EXACT, FALSE); + ADD_FUNC ("agent_owned", test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_AGENT_OWNED, NM_SETTING_COMPARE_FLAG_IGNORE_AGENT_OWNED_SECRETS, TRUE); + ADD_FUNC ("not_saved", test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_NOT_SAVED, NM_SETTING_COMPARE_FLAG_IGNORE_NOT_SAVED_SECRETS, TRUE); + ADD_FUNC ("secrets", test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_IGNORE_SECRETS, TRUE); + ADD_FUNC ("exact", test_setting_compare_vpn_secrets, NM_SETTING_SECRET_FLAG_NONE, NM_SETTING_COMPARE_FLAG_EXACT, FALSE); g_test_add_func ("/core/general/test_setting_old_uuid", test_setting_old_uuid); g_test_add_func ("/core/general/test_connection_to_dbus_setting_name", test_connection_to_dbus_setting_name); diff --git a/libnm-glib/Makefile.am b/libnm-glib/Makefile.am index 20a24811..f131c467 100644 --- a/libnm-glib/Makefile.am +++ b/libnm-glib/Makefile.am @@ -4,6 +4,7 @@ SUBDIRS = . tests AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-util \ -I$(top_builddir)/libnm-util \ -DG_LOG_DOMAIN=\""libnm-glib"\" \ diff --git a/libnm-glib/Makefile.in b/libnm-glib/Makefile.in index 5f7a3800..26e9f4ee 100644 --- a/libnm-glib/Makefile.in +++ b/libnm-glib/Makefile.in @@ -452,6 +452,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -595,6 +596,7 @@ with_valgrind = @with_valgrind@ SUBDIRS = . tests AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-util \ -I$(top_builddir)/libnm-util \ -DG_LOG_DOMAIN=\""libnm-glib"\" \ diff --git a/libnm-glib/nm-vpn-plugin.c b/libnm-glib/nm-vpn-plugin.c index f40ea800..4350e600 100644 --- a/libnm-glib/nm-vpn-plugin.c +++ b/libnm-glib/nm-vpn-plugin.c @@ -69,7 +69,7 @@ static gboolean impl_vpn_plugin_set_failure (NMVPNPlugin *plugin, #include "nm-vpn-plugin-glue.h" -#define NM_VPN_PLUGIN_QUIT_TIMER 20 +#define NM_VPN_PLUGIN_QUIT_TIMER 180 G_DEFINE_ABSTRACT_TYPE (NMVPNPlugin, nm_vpn_plugin, G_TYPE_OBJECT) @@ -426,6 +426,7 @@ connect_timer_start (NMVPNPlugin *plugin) { NMVPNPluginPrivate *priv = NM_VPN_PLUGIN_GET_PRIVATE (plugin); + nm_clear_g_source (&priv->connect_timer); priv->connect_timer = g_timeout_add_seconds (60, connect_timer_expired, plugin); } diff --git a/libnm-glib/tests/Makefile.am b/libnm-glib/tests/Makefile.am index 7168d3dd..aeaaa6b6 100644 --- a/libnm-glib/tests/Makefile.am +++ b/libnm-glib/tests/Makefile.am @@ -2,6 +2,7 @@ if ENABLE_TESTS AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-util \ -I$(top_builddir)/libnm-util \ -I$(top_srcdir)/libnm-glib \ diff --git a/libnm-glib/tests/Makefile.in b/libnm-glib/tests/Makefile.in index 029927af..ab088a30 100644 --- a/libnm-glib/tests/Makefile.in +++ b/libnm-glib/tests/Makefile.in @@ -531,6 +531,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -673,6 +674,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-util \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-util \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-glib \ diff --git a/libnm-util/Makefile.am b/libnm-util/Makefile.am index fbf8c0b3..f83780dc 100644 --- a/libnm-util/Makefile.am +++ b/libnm-util/Makefile.am @@ -5,6 +5,7 @@ SUBDIRS = . tests AM_CPPFLAGS = \ -I${top_srcdir} \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -DG_LOG_DOMAIN=\""libnm-util"\" \ -DLOCALEDIR=\"$(datadir)/locale\" \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ @@ -23,6 +24,7 @@ endif lib_LTLIBRARIES=libnm-util.la libnm_util_include_HEADERS = \ + $(top_builddir)/include/nm-version-macros.h \ NetworkManager.h \ NetworkManagerVPN.h \ nm-connection.h \ @@ -53,11 +55,11 @@ libnm_util_include_HEADERS = \ nm-setting-wireless.h \ nm-setting-wireless-security.h \ nm-setting-vpn.h \ - nm-utils.h + nm-utils.h \ + nm-version.h nodist_libnm_util_include_HEADERS = \ - nm-utils-enum-types.h \ - nm-version.h + nm-utils-enum-types.h libnm_util_la_private_headers = \ crypto.h \ @@ -156,7 +158,7 @@ pkgconfig_DATA = libnm-util.pc DISTCLEANFILES = libnm-util.pc -EXTRA_DIST = libnm-util.pc.in libnm-util.ver nm-version.h.in +EXTRA_DIST = libnm-util.pc.in libnm-util.ver -include $(INTROSPECTION_MAKEFILE) INTROSPECTION_GIRS = diff --git a/libnm-util/Makefile.in b/libnm-util/Makefile.in index 327b3234..03f0eb24 100644 --- a/libnm-util/Makefile.in +++ b/libnm-util/Makefile.in @@ -122,7 +122,7 @@ DIST_COMMON = $(srcdir)/Makefile.am $(libnm_util_include_HEADERS) \ $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = libnm-util.pc nm-version.h +CONFIG_CLEAN_FILES = libnm-util.pc CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ @@ -293,8 +293,7 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/libnm-util.pc.in \ - $(srcdir)/nm-version.h.in $(top_srcdir)/build-aux/depcomp \ - COPYING + $(top_srcdir)/build-aux/depcomp COPYING DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ @@ -443,6 +442,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -585,12 +585,13 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ SUBDIRS = . tests AM_CPPFLAGS = -I${top_srcdir} -I${top_srcdir}/include \ - -DG_LOG_DOMAIN=\""libnm-util"\" \ + -I$(top_builddir)/include -DG_LOG_DOMAIN=\""libnm-util"\" \ -DLOCALEDIR=\"$(datadir)/locale\" \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE $(GLIB_CFLAGS) \ $(DBUS_CFLAGS) $(UUID_CFLAGS) $(am__append_1) $(am__append_2) lib_LTLIBRARIES = libnm-util.la libnm_util_include_HEADERS = \ + $(top_builddir)/include/nm-version-macros.h \ NetworkManager.h \ NetworkManagerVPN.h \ nm-connection.h \ @@ -621,11 +622,11 @@ libnm_util_include_HEADERS = \ nm-setting-wireless.h \ nm-setting-wireless-security.h \ nm-setting-vpn.h \ - nm-utils.h + nm-utils.h \ + nm-version.h nodist_libnm_util_include_HEADERS = \ - nm-utils-enum-types.h \ - nm-version.h + nm-utils-enum-types.h libnm_util_la_private_headers = \ crypto.h \ @@ -694,7 +695,7 @@ libtest_crypto_la_LIBADD = $(GLIB_LIBS) $(am__append_8) \ pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libnm-util.pc DISTCLEANFILES = libnm-util.pc -EXTRA_DIST = libnm-util.pc.in libnm-util.ver nm-version.h.in +EXTRA_DIST = libnm-util.pc.in libnm-util.ver INTROSPECTION_GIRS = $(am__append_11) INTROSPECTION_SCANNER_ARGS = --add-include-path=$(srcdir) INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir) @@ -747,8 +748,6 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__aclocal_m4_deps): libnm-util.pc: $(top_builddir)/config.status $(srcdir)/libnm-util.pc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -nm-version.h: $(top_builddir)/config.status $(srcdir)/nm-version.h.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-libLTLIBRARIES: $(lib_LTLIBRARIES) @$(NORMAL_INSTALL) diff --git a/libnm-util/NetworkManager.h b/libnm-util/NetworkManager.h index e8dec062..d83e4ab5 100644 --- a/libnm-util/NetworkManager.h +++ b/libnm-util/NetworkManager.h @@ -26,7 +26,9 @@ #ifndef NETWORK_MANAGER_H #define NETWORK_MANAGER_H -#include "nm-version.h" +/* This header must not include glib or libnm. */ + +#include <nm-version-macros.h> /* * dbus services details diff --git a/libnm-util/nm-setting-adsl.c b/libnm-util/nm-setting-adsl.c index 5355011c..51560a78 100644 --- a/libnm-util/nm-setting-adsl.c +++ b/libnm-util/nm-setting-adsl.c @@ -287,6 +287,7 @@ set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { NMSettingAdslPrivate *priv = NM_SETTING_ADSL_GET_PRIVATE (object); + const char *str; switch (prop_id) { case PROP_USERNAME: @@ -302,11 +303,13 @@ set_property (GObject *object, guint prop_id, break; case PROP_PROTOCOL: g_free (priv->protocol); - priv->protocol = g_ascii_strdown (g_value_get_string (value), -1); + str = g_value_get_string (value); + priv->protocol = str ? g_ascii_strdown (str, -1) : NULL; break; case PROP_ENCAPSULATION: g_free (priv->encapsulation); - priv->encapsulation = g_ascii_strdown (g_value_get_string (value), -1); + str = g_value_get_string (value); + priv->encapsulation = str ? g_ascii_strdown (str, -1) : NULL; break; case PROP_VPI: priv->vpi = g_value_get_uint (value); diff --git a/libnm-util/nm-setting-cdma.c b/libnm-util/nm-setting-cdma.c index 53f886ec..94b10b1f 100644 --- a/libnm-util/nm-setting-cdma.c +++ b/libnm-util/nm-setting-cdma.c @@ -167,7 +167,7 @@ verify (NMSetting *setting, GSList *all_settings, GError **error) g_set_error_literal (error, NM_SETTING_CDMA_ERROR, NM_SETTING_CDMA_ERROR_INVALID_PROPERTY, - _("property is empty'")); + _("property is empty")); g_prefix_error (error, "%s.%s: ", NM_SETTING_CDMA_SETTING_NAME, NM_SETTING_CDMA_NUMBER); return FALSE; } diff --git a/libnm-util/nm-setting-ip6-config.c b/libnm-util/nm-setting-ip6-config.c index 4e69a072..b929ebac 100644 --- a/libnm-util/nm-setting-ip6-config.c +++ b/libnm-util/nm-setting-ip6-config.c @@ -854,7 +854,6 @@ verify (NMSetting *setting, GSList *all_settings, GError **error) g_set_error (error, NM_SETTING_IP6_CONFIG_ERROR, NM_SETTING_IP6_CONFIG_ERROR_NOT_ALLOWED_FOR_METHOD, - _("'%s' not allowed for %s=%s"), _("this property is not allowed for '%s=%s'"), NM_SETTING_IP6_CONFIG_METHOD, priv->method); g_prefix_error (error, "%s.%s: ", NM_SETTING_IP6_CONFIG_SETTING_NAME, NM_SETTING_IP6_CONFIG_DNS); diff --git a/libnm-util/nm-setting-vlan.c b/libnm-util/nm-setting-vlan.c index 43b6a91c..d3bc0a37 100644 --- a/libnm-util/nm-setting-vlan.c +++ b/libnm-util/nm-setting-vlan.c @@ -806,7 +806,7 @@ nm_setting_vlan_class_init (NMSettingVlanClass *setting_class) g_object_class_install_property (object_class, PROP_FLAGS, g_param_spec_uint (NM_SETTING_VLAN_FLAGS, "", "", - 0, G_MAXUINT32, 0, + 0, G_MAXUINT32, NM_VLAN_FLAG_REORDER_HEADERS, G_PARAM_READWRITE | G_PARAM_CONSTRUCT | NM_SETTING_PARAM_INFERRABLE | diff --git a/libnm-util/nm-utils-enum-types.c b/libnm-util/nm-utils-enum-types.c index 6ef157da..e5dde28e 100644 --- a/libnm-util/nm-utils-enum-types.c +++ b/libnm-util/nm-utils-enum-types.c @@ -5,6 +5,7 @@ #include "nm-utils-enum-types.h" +#include "nm-version-macros.h" #include "nm-connection.h" #include "nm-setting.h" #include "nm-setting-8021x.h" @@ -33,7 +34,8 @@ #include "nm-setting-wireless.h" #include "nm-setting-wireless-security.h" #include "nm-setting-vpn.h" -#include "nm-utils.h" +#include "nm-utils.h" +#include "nm-version.h" GType nm_connection_error_get_type (void) diff --git a/libnm-core/nm-version.h.in b/libnm-util/nm-version.h index e00f4055..68955099 100644 --- a/libnm-core/nm-version.h.in +++ b/libnm-util/nm-version.h @@ -23,60 +23,10 @@ #include <glib.h> -/** - * NM_MAJOR_VERSION: - * - * Evaluates to the major version number of NetworkManager which this source - * is compiled against. - */ -#define NM_MAJOR_VERSION (@NM_MAJOR_VERSION@) - -/** - * NM_MINOR_VERSION: - * - * Evaluates to the minor version number of NetworkManager which this source - * is compiled against. - */ -#define NM_MINOR_VERSION (@NM_MINOR_VERSION@) - -/** - * NM_MICRO_VERSION: - * - * Evaluates to the micro version number of NetworkManager which this source - * compiled against. - */ -#define NM_MICRO_VERSION (@NM_MICRO_VERSION@) - -/** - * NM_CHECK_VERSION: - * @major: major version (e.g. 1 for version 1.2.5) - * @minor: minor version (e.g. 2 for version 1.2.5) - * @micro: micro version (e.g. 5 for version 1.2.5) - * - * Returns: %TRUE if the version of the NetworkManager header files - * is the same as or newer than the passed-in version. - */ -#define NM_CHECK_VERSION(major,minor,micro) \ - (NM_MAJOR_VERSION > (major) || \ - (NM_MAJOR_VERSION == (major) && NM_MINOR_VERSION > (minor)) || \ - (NM_MAJOR_VERSION == (major) && NM_MINOR_VERSION == (minor) && NM_MICRO_VERSION >= (micro))) - +#include <nm-version-macros.h> /* Deprecation / Availability macros */ -#define NM_ENCODE_VERSION(major,minor,micro) ((major) << 16 | (minor) << 8 | (micro)) - -#define NM_VERSION_0_9_8 (NM_ENCODE_VERSION (0, 9, 8)) -#define NM_VERSION_0_9_10 (NM_ENCODE_VERSION (0, 9, 10)) -#define NM_VERSION_1_0 (NM_ENCODE_VERSION (1, 0, 0)) -#define NM_VERSION_1_0_2 (NM_ENCODE_VERSION (1, 0, 2)) -#define NM_VERSION_1_0_4 (NM_ENCODE_VERSION (1, 0, 4)) -#define NM_VERSION_1_0_6 (NM_ENCODE_VERSION (1, 0, 6)) -#define NM_VERSION_1_0_8 (NM_ENCODE_VERSION (1, 0, 8)) - -#define NM_VERSION_CUR_STABLE NM_VERSION_1_0_6 -#define NM_VERSION_NEXT_STABLE NM_VERSION_1_0_8 - #if !defined (NM_VERSION_MIN_REQUIRED) || (NM_VERSION_MIN_REQUIRED == 0) # undef NM_VERSION_MIN_REQUIRED # define NM_VERSION_MIN_REQUIRED (NM_VERSION_CUR_STABLE) @@ -138,4 +88,10 @@ # define NM_AVAILABLE_IN_1_0_6 #endif +#if NM_VERSION_MAX_ALLOWED < NM_VERSION_1_0_8 +# define NM_AVAILABLE_IN_1_0_8 G_UNAVAILABLE(1,0.8) +#else +# define NM_AVAILABLE_IN_1_0_8 +#endif + #endif /* NM_VERSION_H */ diff --git a/libnm-util/tests/Makefile.am b/libnm-util/tests/Makefile.am index 16a7f8f3..e580a134 100644 --- a/libnm-util/tests/Makefile.am +++ b/libnm-util/tests/Makefile.am @@ -2,6 +2,7 @@ if ENABLE_TESTS AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-util \ -I$(top_builddir)/libnm-util \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ diff --git a/libnm-util/tests/Makefile.in b/libnm-util/tests/Makefile.in index 0767e19a..df7ab974 100644 --- a/libnm-util/tests/Makefile.in +++ b/libnm-util/tests/Makefile.in @@ -570,6 +570,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -712,6 +713,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-util \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-util \ @ENABLE_TESTS_TRUE@ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ diff --git a/libnm/Makefile.am b/libnm/Makefile.am index e8915b42..fec008a0 100644 --- a/libnm/Makefile.am +++ b/libnm/Makefile.am @@ -4,6 +4,7 @@ SUBDIRS = . tests AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_builddir)/introspection \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ @@ -25,6 +26,7 @@ lib_LTLIBRARIES = libnm.la libnmincludedir = $(includedir)/libnm libnminclude_hfiles = \ + $(top_builddir)/include/nm-version-macros.h \ NetworkManager.h \ nm-access-point.h \ nm-active-connection.h \ diff --git a/libnm/Makefile.in b/libnm/Makefile.in index 73b56966..fe710af7 100644 --- a/libnm/Makefile.in +++ b/libnm/Makefile.in @@ -410,6 +410,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -553,6 +554,7 @@ with_valgrind = @with_valgrind@ SUBDIRS = . tests AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_builddir)/introspection \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ @@ -568,8 +570,8 @@ AM_CPPFLAGS = \ core = $(top_srcdir)/libnm-core core_build = $(top_builddir)/libnm-core libnm_core_headers = \ + $(top_builddir)/include/nm-version-macros.h \ $(core_build)/nm-core-enum-types.h \ - $(core_build)/nm-version.h \ $(core)/nm-connection.h \ $(core)/nm-core-types.h \ $(core)/nm-dbus-interface.h \ @@ -604,6 +606,7 @@ libnm_core_headers = \ $(core)/nm-setting.h \ $(core)/nm-simple-connection.h \ $(core)/nm-utils.h \ + $(core)/nm-version.h \ $(core)/nm-vpn-dbus-interface.h libnm_core_private_headers = \ @@ -661,6 +664,7 @@ libnm_core_sources = \ lib_LTLIBRARIES = libnm.la libnmincludedir = $(includedir)/libnm libnminclude_hfiles = \ + $(top_builddir)/include/nm-version-macros.h \ NetworkManager.h \ nm-access-point.h \ nm-active-connection.h \ diff --git a/libnm/generate-setting-docs.py b/libnm/generate-setting-docs.py index e1e35a86..8265bccd 100755 --- a/libnm/generate-setting-docs.py +++ b/libnm/generate-setting-docs.py @@ -18,6 +18,8 @@ from __future__ import print_function +import gi +gi.require_version('NM', '1.0') from gi.repository import NM, GObject import argparse, datetime, re, sys import xml.etree.ElementTree as ET diff --git a/libnm/nm-enum-types.c b/libnm/nm-enum-types.c index 1e5dcb0d..2f190917 100644 --- a/libnm/nm-enum-types.c +++ b/libnm/nm-enum-types.c @@ -5,6 +5,7 @@ #include "nm-enum-types.h" +#include "nm-version-macros.h" #include "NetworkManager.h" #include "nm-access-point.h" #include "nm-active-connection.h" diff --git a/libnm/nm-ifcfg-rh-docs.xml b/libnm/nm-ifcfg-rh-docs.xml index 1ea38141..2cea2cb2 100644 --- a/libnm/nm-ifcfg-rh-docs.xml +++ b/libnm/nm-ifcfg-rh-docs.xml @@ -194,8 +194,8 @@ IPV6_PRIVACY_PREFER_PUBLIC_IP: yes, no" default="no" example="IPV6_PRIVACY=rfc30 <property name="parent" variable="DEVICE or PHYSDEV" format="" values="" default="" example="" description="Parent interface of the VLAN."/> <property name="id" variable="VLAN_ID or DEVICE" format="" values="" default="" example="" description="VLAN identifier."/> <property name="flags" variable="VLAN_FLAGS, REORDER_HDR" format="" values=""GVRP", "LOOSE_BINDING" for VLAN_FLAGS; 0 or 1 for REORDER_HDR" default="" example="" description="VLAN flags."/> -<property name="ingress-property-map" variable="VLAN_INGRESS_PRIORITY_MAP" format="" values="" default="" example="VLAN_INGRESS_PRIORITY_MAP=4:2,3:5" description="Ingress priority mapping."/> -<property name="egress-property-map" variable="VLAN_EGRESS_PRIORITY_MAP" format="" values="" default="" example="VLAN_EGRESS_PRIORITY_MAP=5:4,4:1,3:7" description="Egress priority mapping."/> +<property name="ingress-priority-map" variable="VLAN_INGRESS_PRIORITY_MAP" format="" values="" default="" example="VLAN_INGRESS_PRIORITY_MAP=4:2,3:5" description="Ingress priority mapping."/> +<property name="egress-priority-map" variable="VLAN_EGRESS_PRIORITY_MAP" format="" values="" default="" example="VLAN_EGRESS_PRIORITY_MAP=5:4,4:1,3:7" description="Egress priority mapping."/> <property name="interface-name" variable="PHYSDEV and VLAN_ID, or DEVICE" format="" values="" default="" example="PHYSDEV=eth0, VLAN_ID=12; or DEVICE=eth0.12" description="VLAN interface name. If all variables are set, parent device from PHYSDEV takes precedence over DEVICE, but VLAN id from DEVICE takes precedence over VLAN_ID."/> diff --git a/libnm/nm-property-docs.xml b/libnm/nm-property-docs.xml index e9a58128..abee2d73 100644 --- a/libnm/nm-property-docs.xml +++ b/libnm/nm-property-docs.xml @@ -258,7 +258,7 @@ <property name="s390-options" type="dict of string to string" default="{}" description="Dictionary of key/value pairs of s390-specific device options. Both keys and values must be strings. Allowed keys include "portno", "layer2", "portname", "protocol", among others. Key names must contain only alphanumeric characters (ie, [a-zA-Z0-9])." /> <property name="s390-subchannels" type="array of string" default="[]" description="Identifies specific subchannels that this network device uses for communication with z/VM or s390 host. Like the "mac-address" property for non-z/VM devices, this property can be used to ensure this connection only applies to the network device that uses these subchannels. The list should contain exactly 3 strings, and each string may only be composed of hexadecimal characters and the period (.) character." /> <property name="speed" type="uint32" default="0" description="If non-zero, request that the device use only the specified speed. In Mbit/s, ie 100 == 100Mbit/s." /> - <property name="wake-on-lan" type="uint32" default="1" description="The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40)." /> + <property name="wake-on-lan" type="uint32" default="1" description="The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40) or the special values NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (0x1) (to use global settings) and NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (0x8000) (to disable management of Wake-on-LAN in NetworkManager)." /> <property name="wake-on-lan-password" type="string" description="If specified, the password used with magic-packet-based Wake-on-LAN, represented as an Ethernet MAC address. If NULL, no password will be required." /> </setting> <setting name="802-11-wireless"> diff --git a/libnm/nm-setting-docs.xml b/libnm/nm-setting-docs.xml index 8338fbca..7e865c58 100644 --- a/libnm/nm-setting-docs.xml +++ b/libnm/nm-setting-docs.xml @@ -266,7 +266,7 @@ <property name="s390-options" type="dict of string to string" default="{}" description="Dictionary of key/value pairs of s390-specific device options. Both keys and values must be strings. Allowed keys include "portno", "layer2", "portname", "protocol", among others. Key names must contain only alphanumeric characters (ie, [a-zA-Z0-9])." /> <property name="s390-subchannels" type="array of string" default="[]" description="Identifies specific subchannels that this network device uses for communication with z/VM or s390 host. Like the "mac-address" property for non-z/VM devices, this property can be used to ensure this connection only applies to the network device that uses these subchannels. The list should contain exactly 3 strings, and each string may only be composed of hexadecimal characters and the period (.) character." /> <property name="speed" type="uint32" default="0" description="If non-zero, request that the device use only the specified speed. In Mbit/s, ie 100 == 100Mbit/s." /> - <property name="wake-on-lan" type="uint32" default="1" description="The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40)." /> + <property name="wake-on-lan" type="uint32" default="1" description="The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40) or the special values NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (0x1) (to use global settings) and NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (0x8000) (to disable management of Wake-on-LAN in NetworkManager)." /> <property name="wake-on-lan-password" type="string" description="If specified, the password used with magic-packet-based Wake-on-LAN, represented as an Ethernet MAC address. If NULL, no password will be required." /> </setting> <setting name="802-11-wireless"> diff --git a/libnm/nm-vpn-plugin-old.c b/libnm/nm-vpn-plugin-old.c index 24d8e401..deaa07dd 100644 --- a/libnm/nm-vpn-plugin-old.c +++ b/libnm/nm-vpn-plugin-old.c @@ -44,7 +44,7 @@ #include "nmdbus-vpn-plugin.h" -#define NM_VPN_PLUGIN_OLD_QUIT_TIMER 20 +#define NM_VPN_PLUGIN_OLD_QUIT_TIMER 180 static void nm_vpn_plugin_old_initable_iface_init (GInitableIface *iface); diff --git a/libnm/tests/Makefile.am b/libnm/tests/Makefile.am index a2dafec7..0acbae8f 100644 --- a/libnm/tests/Makefile.am +++ b/libnm/tests/Makefile.am @@ -2,6 +2,7 @@ if ENABLE_TESTS AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm \ -I$(top_builddir)/libnm \ -I$(top_srcdir)/libnm-core \ diff --git a/libnm/tests/Makefile.in b/libnm/tests/Makefile.in index 2ffb9641..0ced3864 100644 --- a/libnm/tests/Makefile.in +++ b/libnm/tests/Makefile.in @@ -544,6 +544,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -686,6 +687,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ diff --git a/m4/compiler_warnings.m4 b/m4/compiler_warnings.m4 index a1c4e128..a7d6669d 100644 --- a/m4/compiler_warnings.m4 +++ b/m4/compiler_warnings.m4 @@ -56,7 +56,7 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then -Wpointer-arith -Winit-self \ -Wmissing-include-dirs -Wno-pragmas; do dnl GCC 4.4 does not warn when checking for -Wno-* flags (https://gcc.gnu.org/wiki/FAQ#wnowarning) - CFLAGS="$CFLAGS_MORE_WARNINGS $(printf '%s' "$option" | sed 's/^-Wno-/-W/') $CFLAGS_SAVED" + CFLAGS="-Werror $CFLAGS_MORE_WARNINGS $(printf '%s' "$option" | sed 's/^-Wno-/-W/') $CFLAGS_SAVED" AC_MSG_CHECKING([whether compiler understands $option]) AC_TRY_COMPILE([], [], has_option=yes, diff --git a/m4/introspection.m4 b/m4/introspection.m4 index 589721c5..efe0e9ac 100644 --- a/m4/introspection.m4 +++ b/m4/introspection.m4 @@ -63,7 +63,7 @@ m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection fi - AC_SUBST(INTROSPECTION_SCANNER) + AC_SUBST(INTROSPECTION_SCANNER, 'CFLAGS="${CFLAGS} -Wno-error" '"$INTROSPECTION_SCANNER") AC_SUBST(INTROSPECTION_COMPILER) AC_SUBST(INTROSPECTION_GENERATE) AC_SUBST(INTROSPECTION_GIRDIR) diff --git a/m4/libtool.m4 b/m4/libtool.m4 index f12cfdf0..a644432f 100644 --- a/m4/libtool.m4 +++ b/m4/libtool.m4 @@ -1,8 +1,6 @@ # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. +# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives @@ -10,36 +8,30 @@ # modifications, as long as this notice is preserved. m4_define([_LT_COPYING], [dnl -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. +# Copyright (C) 2014 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. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. # -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. # -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program. If not, see <http://www.gnu.org/licenses/>. ]) -# serial 57 LT_INIT +# serial 58 LT_INIT # LT_PREREQ(VERSION) @@ -67,7 +59,7 @@ esac # LT_INIT([OPTIONS]) # ------------------ AC_DEFUN([LT_INIT], -[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT +[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl AC_BEFORE([$0], [LT_LANG])dnl AC_BEFORE([$0], [LT_OUTPUT])dnl @@ -91,7 +83,7 @@ dnl Parse OPTIONS _LT_SET_OPTIONS([$0], [$1]) # This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ltmain" +LIBTOOL_DEPS=$ltmain # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' @@ -111,26 +103,43 @@ dnl AC_DEFUN([AC_PROG_LIBTOOL], []) dnl AC_DEFUN([AM_PROG_LIBTOOL], []) +# _LT_PREPARE_CC_BASENAME +# ----------------------- +m4_defun([_LT_PREPARE_CC_BASENAME], [ +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in @S|@*""; do + case $cc_temp in + compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; + distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} +])# _LT_PREPARE_CC_BASENAME + + # _LT_CC_BASENAME(CC) # ------------------- -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, +# but that macro is also expanded into generated libtool script, which +# arranges for $SED and $ECHO to be set by different means. m4_defun([_LT_CC_BASENAME], -[for cc_temp in $1""; do - case $cc_temp in - compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; - distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +[m4_require([_LT_PREPARE_CC_BASENAME])dnl +AC_REQUIRE([_LT_DECL_SED])dnl +AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl +func_cc_basename $1 +cc_basename=$func_cc_basename_result ]) # _LT_FILEUTILS_DEFAULTS # ---------------------- # It is okay to use these file commands and assume they have been set -# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. +# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'. m4_defun([_LT_FILEUTILS_DEFAULTS], [: ${CP="cp -f"} : ${MV="mv -f"} @@ -177,15 +186,16 @@ m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_WITH_SYSROOT])dnl +m4_require([_LT_CMD_TRUNCATE])dnl _LT_CONFIG_LIBTOOL_INIT([ -# See if we are running on zsh, and set the options which allow our +# See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}" ; then +if test -n "\${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi ]) -if test -n "${ZSH_VERSION+set}" ; then +if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi @@ -198,7 +208,7 @@ aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then + if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -209,14 +219,14 @@ esac ofile=libtool can_build_shared=yes -# All known linkers require a `.a' archive for static linking (except MSVC, +# All known linkers require a '.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a -with_gnu_ld="$lt_cv_prog_gnu_ld" +with_gnu_ld=$lt_cv_prog_gnu_ld -old_CC="$CC" -old_CFLAGS="$CFLAGS" +old_CC=$CC +old_CFLAGS=$CFLAGS # Set sane defaults for various variables test -z "$CC" && CC=cc @@ -269,14 +279,14 @@ no_glob_subst='s/\*/\\\*/g' # _LT_PROG_LTMAIN # --------------- -# Note that this code is called both from `configure', and `config.status' +# Note that this code is called both from 'configure', and 'config.status' # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, -# `config.status' has no value for ac_aux_dir unless we are using Automake, +# 'config.status' has no value for ac_aux_dir unless we are using Automake, # so we pass a copy along to make sure it has a sensible value anyway. m4_defun([_LT_PROG_LTMAIN], [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) -ltmain="$ac_aux_dir/ltmain.sh" +ltmain=$ac_aux_dir/ltmain.sh ])# _LT_PROG_LTMAIN @@ -286,7 +296,7 @@ ltmain="$ac_aux_dir/ltmain.sh" # So that we can recreate a full libtool script including additional # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS -# in macros and then make a single call at the end using the `libtool' +# in macros and then make a single call at the end using the 'libtool' # label. @@ -421,8 +431,8 @@ m4_define([_lt_decl_all_varnames], # _LT_CONFIG_STATUS_DECLARE([VARNAME]) # ------------------------------------ -# Quote a variable value, and forward it to `config.status' so that its -# declaration there will have the same value as in `configure'. VARNAME +# Quote a variable value, and forward it to 'config.status' so that its +# declaration there will have the same value as in 'configure'. VARNAME # must have a single quote delimited value for this to work. m4_define([_LT_CONFIG_STATUS_DECLARE], [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) @@ -446,7 +456,7 @@ m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], # Output comment and list of tags supported by the script m4_defun([_LT_LIBTOOL_TAGS], [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl -available_tags="_LT_TAGS"dnl +available_tags='_LT_TAGS'dnl ]) @@ -474,7 +484,7 @@ m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl # _LT_LIBTOOL_CONFIG_VARS # ----------------------- # Produce commented declarations of non-tagged libtool config variables -# suitable for insertion in the LIBTOOL CONFIG section of the `libtool' +# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool' # script. Tagged libtool config variables (even for the LIBTOOL CONFIG # section) are produced by _LT_LIBTOOL_TAG_VARS. m4_defun([_LT_LIBTOOL_CONFIG_VARS], @@ -500,8 +510,8 @@ m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of # variables for single and double quote escaping we saved from calls # to _LT_DECL, we can put quote escaped variables declarations -# into `config.status', and then the shell code to quote escape them in -# for loops in `config.status'. Finally, any additional code accumulated +# into 'config.status', and then the shell code to quote escape them in +# for loops in 'config.status'. Finally, any additional code accumulated # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. m4_defun([_LT_CONFIG_COMMANDS], [AC_PROVIDE_IFELSE([LT_OUTPUT], @@ -547,7 +557,7 @@ for var in lt_decl_all_varnames([[ \ ]], lt_decl_quote_varnames); do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -560,7 +570,7 @@ for var in lt_decl_all_varnames([[ \ ]], lt_decl_dquote_varnames); do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -576,7 +586,7 @@ _LT_OUTPUT_LIBTOOL_INIT # Generate a child script FILE with all initialization necessary to # reuse the environment learned by the parent script, and make the # file executable. If COMMENT is supplied, it is inserted after the -# `#!' sequence but before initialization text begins. After this +# '#!' sequence but before initialization text begins. After this # macro, additional text can be appended to FILE to form the body of # the child script. The macro ends with non-zero status if the # file could not be fully written (such as if the disk is full). @@ -598,7 +608,7 @@ AS_SHELL_SANITIZE _AS_PREPARE exec AS_MESSAGE_FD>&1 _ASEOF -test $lt_write_fail = 0 && chmod +x $1[]dnl +test 0 = "$lt_write_fail" && chmod +x $1[]dnl m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT # LT_OUTPUT @@ -621,7 +631,7 @@ exec AS_MESSAGE_LOG_FD>>config.log } >&AS_MESSAGE_LOG_FD lt_cl_help="\ -\`$as_me' creates a local libtool stub from the current configuration, +'$as_me' creates a local libtool stub from the current configuration, for use in further configure time tests before the real libtool is generated. @@ -643,7 +653,7 @@ Copyright (C) 2011 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation gives unlimited permision to copy, distribute and modify it." -while test $[#] != 0 +while test 0 != $[#] do case $[1] in --version | --v* | -V ) @@ -656,10 +666,10 @@ do lt_cl_silent=: ;; -*) AC_MSG_ERROR([unrecognized option: $[1] -Try \`$[0] --help' for more information.]) ;; +Try '$[0] --help' for more information.]) ;; *) AC_MSG_ERROR([unrecognized argument: $[1] -Try \`$[0] --help' for more information.]) ;; +Try '$[0] --help' for more information.]) ;; esac shift done @@ -685,7 +695,7 @@ chmod +x "$CONFIG_LT" # open by configure. Here we exec the FD to /dev/null, effectively closing # config.log, so it can be properly (re)opened and appended to by config.lt. lt_cl_success=: -test "$silent" = yes && +test yes = "$silent" && lt_config_lt_args="$lt_config_lt_args --quiet" exec AS_MESSAGE_LOG_FD>/dev/null $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false @@ -705,27 +715,31 @@ m4_defun([_LT_CONFIG], _LT_CONFIG_SAVE_COMMANDS([ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl m4_if(_LT_TAG, [C], [ - # See if we are running on zsh, and set the options which allow our + # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then + if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi - cfgfile="${ofile}T" + cfgfile=${ofile}T trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# 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. +# Written by Gordon Matzigkeit, 1996 + _LT_COPYING _LT_LIBTOOL_TAGS +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} + # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS @@ -733,13 +747,24 @@ _LT_LIBTOOL_TAG_VARS _LT_EOF + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +_LT_PREPARE_MUNGE_PATH_LIST +_LT_PREPARE_CC_BASENAME + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then +if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -756,8 +781,6 @@ _LT_EOF sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) - _LT_PROG_REPLACE_SHELLFNS - mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" @@ -775,7 +798,6 @@ _LT_EOF [m4_if([$1], [], [ PACKAGE='$PACKAGE' VERSION='$VERSION' - TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile'], []) ])dnl /_LT_CONFIG_SAVE_COMMANDS @@ -974,7 +996,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], [lt_cv_apple_cc_single_mod=no - if test -z "${LT_MULTI_MODULE}"; then + if test -z "$LT_MULTI_MODULE"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the @@ -992,7 +1014,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ cat conftest.err >&AS_MESSAGE_LOG_FD # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. - elif test -f libconftest.dylib && test $_lt_result -eq 0; then + elif test -f libconftest.dylib && test 0 = "$_lt_result"; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&AS_MESSAGE_LOG_FD @@ -1010,7 +1032,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [lt_cv_ld_exported_symbols_list=yes], [lt_cv_ld_exported_symbols_list=no]) - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS ]) AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], @@ -1032,7 +1054,7 @@ _LT_EOF _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&AS_MESSAGE_LOG_FD - elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then + elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then lt_cv_ld_force_load=yes else cat conftest.err >&AS_MESSAGE_LOG_FD @@ -1042,32 +1064,32 @@ _LT_EOF ]) case $host_os in rhapsody* | darwin1.[[012]]) - _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - 10.[[012]]*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[[012]][[,.]]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 10.*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac - if test "$lt_cv_apple_cc_single_mod" = "yes"; then + if test yes = "$lt_cv_apple_cc_single_mod"; then _lt_dar_single_mod='$single_module' fi - if test "$lt_cv_ld_exported_symbols_list" = "yes"; then - _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' + if test yes = "$lt_cv_ld_exported_symbols_list"; then + _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' else - _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' fi - if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then + if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= @@ -1087,29 +1109,29 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES], _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - if test "$lt_cv_ld_force_load" = "yes"; then - _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + if test yes = "$lt_cv_ld_force_load"; then + _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) else _LT_TAGVAR(whole_archive_flag_spec, $1)='' fi _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" + _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined case $cc_basename in - ifort*) _lt_dar_can_shared=yes ;; + ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac - if test "$_lt_dar_can_shared" = "yes"; then + if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all - _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" - _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" - _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" - _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" + _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" m4_if([$1], [CXX], -[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then - _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" - _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" +[ if test yes != "$lt_cv_apple_cc_single_mod"; then + _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" fi ],[]) else @@ -1129,7 +1151,7 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES], # Allow to override them for all tags through lt_cv_aix_libpath. m4_defun([_LT_SYS_MODULE_PATH_AIX], [m4_require([_LT_DECL_SED])dnl -if test "${lt_cv_aix_libpath+set}" = set; then +if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], @@ -1147,7 +1169,7 @@ else _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi],[]) if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then - _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib" + _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib fi ]) aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) @@ -1167,8 +1189,8 @@ m4_define([_LT_SHELL_INIT], # ----------------------- # Find how we can fake an echo command that does not interpret backslash. # In particular, with Autoconf 2.60 or later we add some code to the start -# of the generated configure script which will find a shell with a builtin -# printf (which we can use as an echo command). +# of the generated configure script that will find a shell with a builtin +# printf (that we can use as an echo command). m4_defun([_LT_PROG_ECHO_BACKSLASH], [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO @@ -1196,10 +1218,10 @@ fi # Invoke $ECHO with all args, space-separated. func_echo_all () { - $ECHO "$*" + $ECHO "$*" } -case "$ECHO" in +case $ECHO in printf*) AC_MSG_RESULT([printf]) ;; print*) AC_MSG_RESULT([print -r]) ;; *) AC_MSG_RESULT([cat]) ;; @@ -1225,16 +1247,17 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) AC_DEFUN([_LT_WITH_SYSROOT], [AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], -[ --with-sysroot[=DIR] Search for dependent libraries within DIR - (or the compiler's sysroot if not specified).], +[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], + [Search for dependent libraries within DIR (or the compiler's sysroot + if not specified).])], [], [with_sysroot=no]) dnl lt_sysroot will always be passed unquoted. We quote it here dnl in case the user passed a directory name. lt_sysroot= -case ${with_sysroot} in #( +case $with_sysroot in #( yes) - if test "$GCC" = yes; then + if test yes = "$GCC"; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( @@ -1244,14 +1267,14 @@ case ${with_sysroot} in #( no|'') ;; #( *) - AC_MSG_RESULT([${with_sysroot}]) + AC_MSG_RESULT([$with_sysroot]) AC_MSG_ERROR([The sysroot must be an absolute path.]) ;; esac AC_MSG_RESULT([${lt_sysroot:-no}]) _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl -[dependent libraries, and in which our libraries should be installed.])]) +[dependent libraries, and where our libraries should be installed.])]) # _LT_ENABLE_LOCK # --------------- @@ -1259,31 +1282,33 @@ m4_defun([_LT_ENABLE_LOCK], [AC_ARG_ENABLE([libtool-lock], [AS_HELP_STRING([--disable-libtool-lock], [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes +test no = "$enable_libtool_lock" || enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set mode + # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) - HPUX_IA64_MODE="32" + HPUX_IA64_MODE=32 ;; *ELF-64*) - HPUX_IA64_MODE="64" + HPUX_IA64_MODE=64 ;; esac fi rm -rf conftest* ;; *-*-irix6*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then - if test "$lt_cv_prog_gnu_ld" = yes; then + if test yes = "$lt_cv_prog_gnu_ld"; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" @@ -1312,9 +1337,46 @@ ia64-*-hpux*) rm -rf conftest* ;; +mips64*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + emul=elf + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + emul="${emul}32" + ;; + *64-bit*) + emul="${emul}64" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *MSB*) + emul="${emul}btsmip" + ;; + *LSB*) + emul="${emul}ltsmip" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *N32*) + emul="${emul}n32" + ;; + esac + LD="${LD-ld} -m $emul" + fi + rm -rf conftest* + ;; + x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. Note that the listed cases only cover the + # situations where additional linker options are needed (such as when + # doing 32-bit compilation for a host where ld defaults to 64-bit, or + # vice versa); the common cases where no linker options are needed do + # not appear in the list. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in @@ -1324,7 +1386,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - LD="${LD-ld} -m elf_i386" + case `/usr/bin/file conftest.o` in + *x86-64*) + LD="${LD-ld} -m elf32_x86_64" + ;; + *) + LD="${LD-ld} -m elf_i386" + ;; + esac ;; powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" @@ -1369,19 +1438,20 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" + SAVE_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -belf" AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, [AC_LANG_PUSH(C) AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) AC_LANG_POP]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then + if test yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" + CFLAGS=$SAVE_CFLAGS fi ;; *-*solaris*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in @@ -1389,7 +1459,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) case $lt_cv_prog_gnu_ld in yes*) case $host in - i?86-*-solaris*) + i?86-*-solaris*|x86_64-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) @@ -1398,7 +1468,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then - LD="${LD-ld}_sol2" + LD=${LD-ld}_sol2 fi ;; *) @@ -1414,7 +1484,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) ;; esac -need_locks="$enable_libtool_lock" +need_locks=$enable_libtool_lock ])# _LT_ENABLE_LOCK @@ -1433,11 +1503,11 @@ AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' AC_TRY_EVAL([lt_ar_try]) - if test "$ac_status" -eq 0; then + if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a AC_TRY_EVAL([lt_ar_try]) - if test "$ac_status" -ne 0; then + if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ fi fi @@ -1445,7 +1515,7 @@ AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], ]) ]) -if test "x$lt_cv_ar_at_file" = xno; then +if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file @@ -1476,7 +1546,7 @@ old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in - openbsd*) + bitrig* | openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) @@ -1512,7 +1582,7 @@ AC_CACHE_CHECK([$1], [$2], [$2=no m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$3" + lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins @@ -1539,7 +1609,7 @@ AC_CACHE_CHECK([$1], [$2], $RM conftest* ]) -if test x"[$]$2" = xyes; then +if test yes = "[$]$2"; then m4_if([$5], , :, [$5]) else m4_if([$6], , :, [$6]) @@ -1561,7 +1631,7 @@ AC_DEFUN([_LT_LINKER_OPTION], m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $3" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then @@ -1580,10 +1650,10 @@ AC_CACHE_CHECK([$1], [$2], fi fi $RM -r conftest* - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS ]) -if test x"[$]$2" = xyes; then +if test yes = "[$]$2"; then m4_if([$4], , :, [$4]) else m4_if([$5], , :, [$5]) @@ -1604,7 +1674,7 @@ AC_DEFUN([LT_CMD_MAX_LEN], AC_MSG_CHECKING([the maximum length of command line arguments]) AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl i=0 - teststring="ABCD" + teststring=ABCD case $build_os in msdosdjgpp*) @@ -1644,7 +1714,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl lt_cv_sys_max_cmd_len=8192; ;; - netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@ -1694,22 +1764,23 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len"; then + if test -n "$lt_cv_sys_max_cmd_len" && \ + test undefined != "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. - for i in 1 2 3 4 5 6 7 8 ; do + for i in 1 2 3 4 5 6 7 8; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. - while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ + while { test X`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && - test $i != 17 # 1/2 MB should be enough + test 17 != "$i" # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring @@ -1725,7 +1796,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl ;; esac ]) -if test -n $lt_cv_sys_max_cmd_len ; then +if test -n "$lt_cv_sys_max_cmd_len"; then AC_MSG_RESULT($lt_cv_sys_max_cmd_len) else AC_MSG_RESULT(none) @@ -1753,7 +1824,7 @@ m4_defun([_LT_HEADER_DLFCN], # ---------------------------------------------------------------- m4_defun([_LT_TRY_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl -if test "$cross_compiling" = yes; then : +if test yes = "$cross_compiling"; then : [$4] else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 @@ -1800,9 +1871,9 @@ else # endif #endif -/* When -fvisbility=hidden is used, assume the code has been annotated +/* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ -#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif @@ -1828,7 +1899,7 @@ int main () return status; }] _LT_EOF - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then + if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null lt_status=$? case x$lt_status in @@ -1849,7 +1920,7 @@ rm -fr conftest* # ------------------ AC_DEFUN([LT_SYS_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl -if test "x$enable_dlopen" != xyes; then +if test yes != "$enable_dlopen"; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown @@ -1859,44 +1930,52 @@ else case $host_os in beos*) - lt_cv_dlopen="load_add_on" + lt_cv_dlopen=load_add_on lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) - lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen=LoadLibrary lt_cv_dlopen_libs= ;; cygwin*) - lt_cv_dlopen="dlopen" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs= ;; darwin*) - # if libdl is installed we need to link against it + # if libdl is installed we need to link against it AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ - lt_cv_dlopen="dyld" + [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[ + lt_cv_dlopen=dyld lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ]) ;; + tpf*) + # Don't try to run any link tests for TPF. We know it's impossible + # because TPF is a cross-compiler, and we know how we open DSOs. + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + lt_cv_dlopen_self=no + ;; + *) AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen="shl_load"], + [lt_cv_dlopen=shl_load], [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], + [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld], [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen="dlopen"], + [lt_cv_dlopen=dlopen], [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], + [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl], [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], + [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld], [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) + [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld]) ]) ]) ]) @@ -1905,21 +1984,21 @@ else ;; esac - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else + if test no = "$lt_cv_dlopen"; then enable_dlopen=no + else + enable_dlopen=yes fi case $lt_cv_dlopen in dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + save_CPPFLAGS=$CPPFLAGS + test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - save_LIBS="$LIBS" + save_LIBS=$LIBS LIBS="$lt_cv_dlopen_libs $LIBS" AC_CACHE_CHECK([whether a program can dlopen itself], @@ -1929,7 +2008,7 @@ else lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) ]) - if test "x$lt_cv_dlopen_self" = xyes; then + if test yes = "$lt_cv_dlopen_self"; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" AC_CACHE_CHECK([whether a statically linked program can dlopen itself], lt_cv_dlopen_self_static, [dnl @@ -1939,9 +2018,9 @@ else ]) fi - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" + CPPFLAGS=$save_CPPFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS ;; esac @@ -2033,8 +2112,8 @@ m4_defun([_LT_COMPILER_FILE_LOCKS], m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_COMPILER_C_O([$1]) -hard_links="nottested" -if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then +hard_links=nottested +if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user AC_MSG_CHECKING([if we can lock with hard links]) hard_links=yes @@ -2044,8 +2123,8 @@ if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no AC_MSG_RESULT([$hard_links]) - if test "$hard_links" = no; then - AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) + if test no = "$hard_links"; then + AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe]) need_locks=warn fi else @@ -2072,8 +2151,8 @@ objdir=$lt_cv_objdir _LT_DECL([], [objdir], [0], [The name of the directory that contains temporary libtool files])dnl m4_pattern_allow([LT_OBJDIR])dnl -AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", - [Define to the sub-directory in which libtool stores uninstalled libraries.]) +AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/", + [Define to the sub-directory where libtool stores uninstalled libraries.]) ])# _LT_CHECK_OBJDIR @@ -2085,15 +2164,15 @@ m4_defun([_LT_LINKER_HARDCODE_LIBPATH], _LT_TAGVAR(hardcode_action, $1)= if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || test -n "$_LT_TAGVAR(runpath_var, $1)" || - test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then + test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then # We can hardcode non-existent directories. - if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && + if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one - ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && - test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && + test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then # Linking always hardcodes the temporary library directory. _LT_TAGVAR(hardcode_action, $1)=relink else @@ -2107,12 +2186,12 @@ else fi AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) -if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || - test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then +if test relink = "$_LT_TAGVAR(hardcode_action, $1)" || + test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then # Fast installation is not supported enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then # Fast installation is not necessary enable_fast_install=needless fi @@ -2136,7 +2215,7 @@ else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) - if test -n "$STRIP" ; then + if test -n "$STRIP"; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) @@ -2154,6 +2233,47 @@ _LT_DECL([], [striplib], [1]) ])# _LT_CMD_STRIPLIB +# _LT_PREPARE_MUNGE_PATH_LIST +# --------------------------- +# Make sure func_munge_path_list() is defined correctly. +m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], +[[# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x@S|@2 in + x) + ;; + *:) + eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" + ;; + x:*) + eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" + ;; + *) + eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" + ;; + esac +} +]])# _LT_PREPARE_PATH_LIST + + # _LT_SYS_DYNAMIC_LINKER([TAG]) # ----------------------------- # PORTME Fill in your ld.so characteristics @@ -2164,17 +2284,18 @@ m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_OBJDUMP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl +m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ -if test "$GCC" = yes; then +if test yes = "$GCC"; then case $host_os in - darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; - *) lt_awk_arg="/^libraries:/" ;; + darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; + *) lt_awk_arg='/^libraries:/' ;; esac case $host_os in - mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;; - *) lt_sed_strip_eq="s,=/,/,g" ;; + mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; + *) lt_sed_strip_eq='s|=/|/|g' ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in @@ -2190,28 +2311,35 @@ if test "$GCC" = yes; then ;; esac # Ok, now we have the path, separated by spaces, we can step through it - # and add multilib dir if necessary. + # and add multilib dir if necessary... lt_tmp_lt_search_path_spec= - lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + # ...but if some path component already ends with the multilib dir we assume + # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). + case "$lt_multi_os_dir; $lt_search_path_spec " in + "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) + lt_multi_os_dir= + ;; + esac for lt_sys_path in $lt_search_path_spec; do - if test -d "$lt_sys_path/$lt_multi_os_dir"; then - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" - else + if test -d "$lt_sys_path$lt_multi_os_dir"; then + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" + elif test -n "$lt_multi_os_dir"; then test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' -BEGIN {RS=" "; FS="/|\n";} { - lt_foo=""; - lt_count=0; +BEGIN {RS = " "; FS = "/|\n";} { + lt_foo = ""; + lt_count = 0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { - lt_foo="/" $lt_i lt_foo; + lt_foo = "/" $lt_i lt_foo; } else { lt_count--; } @@ -2225,7 +2353,7 @@ BEGIN {RS=" "; FS="/|\n";} { # for these hosts. case $host_os in mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ - $SED 's,/\([[A-Za-z]]:\),\1,g'` ;; + $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else @@ -2234,7 +2362,7 @@ fi]) library_names_spec= libname_spec='lib$name' soname_spec= -shrext_cmds=".so" +shrext_cmds=.so postinstall_cmds= postuninstall_cmds= finish_cmds= @@ -2251,14 +2379,17 @@ hardcode_into_libs=no # flags to be left without arguments need_version=unknown +AC_ARG_VAR([LT_SYS_LIBRARY_PATH], +[User-defined run-time library search path.]) + case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' + soname_spec='$libname$release$shared_ext$major' ;; aix[[4-9]]*) @@ -2266,41 +2397,91 @@ aix[[4-9]]*) need_lib_prefix=no need_version=no hardcode_into_libs=yes - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[[01]] | aix4.[[01]].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' - echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib<name>.so # instead of lib<name>.a to let people know that these are not # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a[(]lib.so.V[)]' # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac shlibpath_var=LIBPATH fi ;; @@ -2310,18 +2491,18 @@ amigaos*) powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) - library_names_spec='${libname}${shared_ext}' + library_names_spec='$libname$shared_ext' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; @@ -2329,8 +2510,8 @@ beos*) bsdi[[45]]*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" @@ -2342,7 +2523,7 @@ bsdi[[45]]*) cygwin* | mingw* | pw32* | cegcc*) version_type=windows - shrext_cmds=".dll" + shrext_cmds=.dll need_version=no need_lib_prefix=no @@ -2351,8 +2532,8 @@ cygwin* | mingw* | pw32* | cegcc*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ @@ -2368,17 +2549,17 @@ cygwin* | mingw* | pw32* | cegcc*) case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' @@ -2387,8 +2568,8 @@ m4_if([$1], [],[ *,cl*) # Native MSVC libname_spec='$name' - soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - library_names_spec='${libname}.dll.lib' + soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' case $build_os in mingw*) @@ -2415,7 +2596,7 @@ m4_if([$1], [],[ sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) - sys_lib_search_path_spec="$LIB" + sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` @@ -2428,8 +2609,8 @@ m4_if([$1], [],[ esac # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' @@ -2442,7 +2623,7 @@ m4_if([$1], [],[ *) # Assume MSVC wrapper - library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' + library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac @@ -2455,8 +2636,8 @@ darwin* | rhapsody*) version_type=darwin need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' @@ -2469,8 +2650,8 @@ dgux*) version_type=linux # correct to gnu/linux during the next big refactor 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' + 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 ;; @@ -2488,12 +2669,13 @@ freebsd* | dragonfly*) version_type=freebsd-$objformat case $version_type in freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac @@ -2518,26 +2700,15 @@ freebsd* | dragonfly*) esac ;; -gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - 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 - ;; - haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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=LIBRARY_PATH - shlibpath_overrides_runpath=yes + shlibpath_overrides_runpath=no sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; @@ -2555,14 +2726,15 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' @@ -2570,8 +2742,8 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; @@ -2580,8 +2752,8 @@ hpux9* | hpux10* | hpux11*) dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... @@ -2594,8 +2766,8 @@ interix[[3-9]]*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -2606,7 +2778,7 @@ irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) - if test "$lt_cv_prog_gnu_ld" = yes; then + if test yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix @@ -2614,8 +2786,8 @@ irix5* | irix6* | nonstopux*) esac need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= @@ -2634,8 +2806,8 @@ irix5* | irix6* | nonstopux*) esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" hardcode_into_libs=yes ;; @@ -2644,13 +2816,33 @@ linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + ;; + # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor 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' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -2678,11 +2870,15 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu) # Add ABI-specific directories to the system library path. sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" - # Append ld.so.conf contents to the search path + # 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 + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # 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="$sys_lib_dlsearch_path_spec $lt_ld_extra" - fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -2699,12 +2895,12 @@ netbsd*) need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH @@ -2714,7 +2910,7 @@ netbsd*) newsos6) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; @@ -2723,58 +2919,68 @@ newsos6) version_type=qnx 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' + 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='ldqnx.so' ;; -openbsd*) +openbsd* | bitrig*) version_type=sunos - sys_lib_dlsearch_path_spec="/usr/lib" + sys_lib_dlsearch_path_spec=/usr/lib need_lib_prefix=no - # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. - case $host_os in - openbsd3.3 | openbsd3.3.*) need_version=yes ;; - *) need_version=no ;; - esac - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[[89]] | openbsd2.[[89]].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no else - shlibpath_overrides_runpath=yes + need_version=yes fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' - shrext_cmds=".dll" + version_type=windows + shrext_cmds=.dll + need_version=no need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; rdos*) @@ -2785,8 +2991,8 @@ solaris*) version_type=linux # correct to gnu/linux during the next big refactor 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' + 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=yes hardcode_into_libs=yes @@ -2796,11 +3002,11 @@ solaris*) sunos4*) version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes @@ -2808,8 +3014,8 @@ sunos4*) sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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 case $host_vendor in sni) @@ -2830,24 +3036,24 @@ sysv4 | sysv4.3*) ;; sysv4*MP*) - if test -d /usr/nec ;then + if test -d /usr/nec; then version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=freebsd-elf + version_type=sco need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' @@ -2865,7 +3071,7 @@ tpf*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes @@ -2873,8 +3079,8 @@ tpf*) uts4*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + 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 ;; @@ -2883,20 +3089,30 @@ uts4*) ;; esac AC_MSG_RESULT([$dynamic_linker]) -test "$dynamic_linker" = no && can_build_shared=no +test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then +if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then - sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi -if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then - sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + _LT_DECL([], [variables_saved_for_relink], [1], [Variables whose values should be saved in libtool wrapper scripts and restored at link time]) @@ -2929,39 +3145,41 @@ _LT_DECL([], [hardcode_into_libs], [0], [Whether we should hardcode library paths into libraries]) _LT_DECL([], [sys_lib_search_path_spec], [2], [Compile-time system search path for libraries]) -_LT_DECL([], [sys_lib_dlsearch_path_spec], [2], - [Run-time system search path for libraries]) +_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], + [Detected run-time system search path for libraries]) +_LT_DECL([], [configure_time_lt_sys_library_path], [2], + [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) ])# _LT_SYS_DYNAMIC_LINKER # _LT_PATH_TOOL_PREFIX(TOOL) # -------------------------- -# find a file program which can recognize shared library +# find a file program that can recognize shared library AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl AC_MSG_CHECKING([for $1]) AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, [case $MAGIC_CMD in [[\\/*] | ?:[\\/]*]) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR dnl $ac_dummy forces splitting on constant user-supplied paths. dnl POSIX.2 word splitting is done only on the output of word expansions, dnl not every word. This closes a longstanding sh security hole. ac_dummy="m4_if([$2], , $PATH, [$2])" for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -f "$ac_dir/$1"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"$1" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : @@ -2984,11 +3202,11 @@ _LT_EOF break fi done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then AC_MSG_RESULT($MAGIC_CMD) else @@ -3006,7 +3224,7 @@ dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) # _LT_PATH_MAGIC # -------------- -# find a file program which can recognize a shared library +# find a file program that can recognize a shared library m4_defun([_LT_PATH_MAGIC], [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) if test -z "$lt_cv_path_MAGIC_CMD"; then @@ -3033,16 +3251,16 @@ m4_require([_LT_PROG_ECHO_BACKSLASH])dnl AC_ARG_WITH([gnu-ld], [AS_HELP_STRING([--with-gnu-ld], [assume the C compiler uses GNU ld @<:@default=no@:>@])], - [test "$withval" = no || with_gnu_ld=yes], + [test no = "$withval" || with_gnu_ld=yes], [with_gnu_ld=no])dnl ac_prog=ld -if test "$GCC" = yes; then +if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by $CC]) case $host in *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw + # gcc leaves a trailing carriage return, which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; @@ -3056,7 +3274,7 @@ if test "$GCC" = yes; then while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done - test -z "$LD" && LD="$ac_prog" + test -z "$LD" && LD=$ac_prog ;; "") # If it fails, then pretend we aren't using GCC. @@ -3067,37 +3285,37 @@ if test "$GCC" = yes; then with_gnu_ld=unknown ;; esac -elif test "$with_gnu_ld" = yes; then +elif test yes = "$with_gnu_ld"; then AC_MSG_CHECKING([for GNU ld]) else AC_MSG_CHECKING([for non-GNU ld]) fi AC_CACHE_VAL(lt_cv_path_LD, [if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" + lt_cv_path_LD=$ac_dir/$ac_prog # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break + test no != "$with_gnu_ld" && break ;; *) - test "$with_gnu_ld" != yes && break + test yes != "$with_gnu_ld" && break ;; esac fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs else - lt_cv_path_LD="$LD" # Let the user override the test with a path. + lt_cv_path_LD=$LD # Let the user override the test with a path. fi]) -LD="$lt_cv_path_LD" +LD=$lt_cv_path_LD if test -n "$LD"; then AC_MSG_RESULT($LD) else @@ -3151,13 +3369,13 @@ esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in cygwin* | mingw* | pw32* | cegcc*) - if test "$GCC" != yes; then + if test yes != "$GCC"; then reload_cmds=false fi ;; darwin*) - if test "$GCC" = yes; then - reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' + if test yes = "$GCC"; then + reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi @@ -3168,6 +3386,43 @@ _LT_TAGDECL([], [reload_cmds], [2])dnl ])# _LT_CMD_RELOAD +# _LT_PATH_DD +# ----------- +# find a working dd +m4_defun([_LT_PATH_DD], +[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD], +[printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +: ${lt_DD:=$DD} +AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], +[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: +fi]) +rm -f conftest.i conftest2.i conftest.out]) +])# _LT_PATH_DD + + +# _LT_CMD_TRUNCATE +# ---------------- +# find command to truncate a binary pipe +m4_defun([_LT_CMD_TRUNCATE], +[m4_require([_LT_PATH_DD]) +AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], +[printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +lt_cv_truncate_bin= +if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" +fi +rm -f conftest.i conftest2.i conftest.out +test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) +_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], + [Command to truncate a binary pipe]) +])# _LT_CMD_TRUNCATE + + # _LT_CHECK_MAGIC_METHOD # ---------------------- # how to check for library dependencies @@ -3183,13 +3438,13 @@ lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. +# 'unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given extended regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. +# that responds to the $file_magic_cmd with a given extended regex. +# If you have 'file' or equivalent on your system and you're not sure +# whether 'pass_all' will *always* work, you probably want this one. case $host_os in aix[[4-9]]*) @@ -3216,8 +3471,7 @@ mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. - # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. - if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then + if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else @@ -3253,10 +3507,6 @@ freebsd* | dragonfly*) fi ;; -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - haiku*) lt_cv_deplibs_check_method=pass_all ;; @@ -3295,7 +3545,7 @@ irix5* | irix6* | nonstopux*) ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; @@ -3317,8 +3567,8 @@ newos6*) lt_cv_deplibs_check_method=pass_all ;; -openbsd*) - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +openbsd* | bitrig*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' @@ -3371,6 +3621,9 @@ sysv4 | sysv4.3*) tpf*) lt_cv_deplibs_check_method=pass_all ;; +os2*) + lt_cv_deplibs_check_method=pass_all + ;; esac ]) @@ -3411,33 +3664,38 @@ AC_DEFUN([LT_PATH_NM], AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, [if test -n "$NM"; then # Let the user override the test. - lt_cv_path_NM="$NM" + lt_cv_path_NM=$NM else - lt_nm_to_check="${ac_tool_prefix}nm" + lt_nm_to_check=${ac_tool_prefix}nm if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - tmp_nm="$ac_dir/$lt_tmp_nm" - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + tmp_nm=$ac_dir/$lt_tmp_nm + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # Adding the 'sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file - case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in - */dev/null* | *'Invalid file or object type'*) + # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty + case $build_os in + mingw*) lt_bad_file=conftest.nm/nofile ;; + *) lt_bad_file=/dev/null ;; + esac + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in + *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" - break + break 2 ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" - break + break 2 ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but @@ -3448,21 +3706,21 @@ else esac fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs done : ${lt_cv_path_NM=no} fi]) -if test "$lt_cv_path_NM" != "no"; then - NM="$lt_cv_path_NM" +if test no != "$lt_cv_path_NM"; then + NM=$lt_cv_path_NM else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) - case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in *COFF*) - DUMPBIN="$DUMPBIN -symbols" + DUMPBIN="$DUMPBIN -symbols -headers" ;; *) DUMPBIN=: @@ -3470,8 +3728,8 @@ else esac fi AC_SUBST([DUMPBIN]) - if test "$DUMPBIN" != ":"; then - NM="$DUMPBIN" + if test : != "$DUMPBIN"; then + NM=$DUMPBIN fi fi test -z "$NM" && NM=nm @@ -3517,8 +3775,8 @@ lt_cv_sharedlib_from_linklib_cmd, case $host_os in cygwin* | mingw* | pw32* | cegcc*) - # two different shell functions defined in ltmain.sh - # decide which to use based on capabilities of $DLLTOOL + # two different shell functions defined in ltmain.sh; + # decide which one to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib @@ -3530,7 +3788,7 @@ cygwin* | mingw* | pw32* | cegcc*) ;; *) # fallback: assume linklib IS sharedlib - lt_cv_sharedlib_from_linklib_cmd="$ECHO" + lt_cv_sharedlib_from_linklib_cmd=$ECHO ;; esac ]) @@ -3557,13 +3815,28 @@ AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool lt_cv_path_mainfest_tool=yes fi rm -f conftest*]) -if test "x$lt_cv_path_mainfest_tool" != xyes; then +if test yes != "$lt_cv_path_mainfest_tool"; then MANIFEST_TOOL=: fi _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl ])# _LT_PATH_MANIFEST_TOOL +# _LT_DLL_DEF_P([FILE]) +# --------------------- +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with func_dll_def_p in the libtool script +AC_DEFUN([_LT_DLL_DEF_P], +[dnl + test DEF = "`$SED -n dnl + -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace + -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments + -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl + -e q dnl Only consider the first "real" line + $1`" dnl +])# _LT_DLL_DEF_P + + # LT_LIB_M # -------- # check for math library @@ -3575,11 +3848,11 @@ case $host in # These system don't have libm, or don't need it ;; *-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw) AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") ;; *) - AC_CHECK_LIB(m, cos, LIBM="-lm") + AC_CHECK_LIB(m, cos, LIBM=-lm) ;; esac AC_SUBST([LIBM]) @@ -3598,7 +3871,7 @@ m4_defun([_LT_COMPILER_NO_RTTI], _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= -if test "$GCC" = yes; then +if test yes = "$GCC"; then case $cc_basename in nvcc*) _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; @@ -3650,7 +3923,7 @@ cygwin* | mingw* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then symcode='[[ABCDEGRST]]' fi ;; @@ -3683,14 +3956,44 @@ case `$NM -V 2>&1` in symcode='[[ABCDGIRSTW]]' ;; esac +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Gets list of data symbols to import. + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" + # Adjust the below global symbol transforms to fixup imported variables. + lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" + lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" + lt_c_name_lib_hook="\ + -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ + -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" +else + # Disable hooks by default. + lt_cv_sys_global_symbol_to_import= + lt_cdecl_hook= + lt_c_name_hook= + lt_c_name_lib_hook= +fi + # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ +$lt_cdecl_hook\ +" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ +$lt_c_name_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" + +# Transform an extracted symbol line into symbol name with lib prefix and +# symbol address. +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ +$lt_c_name_lib_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" # Handle CRLF in mingw tool chain opt_cr= @@ -3708,21 +4011,24 @@ for ac_symprfx in "" "_"; do # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Fake it for dumpbin and say T for any non-static function - # and D for any global variable. + # Fake it for dumpbin and say T for any non-static function, + # D for any global variable and I for any imported variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ +" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ +" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ -" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ -" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ -" s[1]~/^[@?]/{print s[1], s[1]; next};"\ -" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ +" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ +" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ +" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" @@ -3762,11 +4068,11 @@ _LT_EOF if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) -/* DATA imports from DLLs on WIN32 con't be const, because runtime +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT@&t@_DLSYM_CONST -#elif defined(__osf__) +#elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT@&t@_DLSYM_CONST #else @@ -3792,7 +4098,7 @@ lt__PROGRAM__LTX_preloaded_symbols[[]] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF - $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; @@ -3812,9 +4118,9 @@ _LT_EOF mv conftest.$ac_objext conftstm.$ac_objext lt_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS - LIBS="conftstm.$ac_objext" + LIBS=conftstm.$ac_objext CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then + if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS @@ -3835,7 +4141,7 @@ _LT_EOF rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then + if test yes = "$pipe_works"; then break else lt_cv_sys_global_symbol_pipe= @@ -3862,12 +4168,16 @@ _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], [Take the output of nm and produce a listing of raw symbols and C names]) _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], [Transform the output of nm in a proper C declaration]) +_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1], + [Transform the output of nm into a list of symbols to manually relocate]) _LT_DECL([global_symbol_to_c_name_address], [lt_cv_sys_global_symbol_to_c_name_address], [1], [Transform the output of nm in a C name address pair]) _LT_DECL([global_symbol_to_c_name_address_lib_prefix], [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], [Transform the output of nm in a C name address pair when lib prefix is needed]) +_LT_DECL([nm_interface], [lt_cv_nm_interface], [1], + [The name lister interface]) _LT_DECL([], [nm_file_list_spec], [1], [Specify filename containing input files for $NM]) ]) # _LT_CMD_GLOBAL_SYMBOLS @@ -3883,17 +4193,18 @@ _LT_TAGVAR(lt_prog_compiler_static, $1)= m4_if([$1], [CXX], [ # C++ specific cases for pic, static, wl, etc. - if test "$GXX" = yes; then + if test yes = "$GXX"; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; amigaos*) @@ -3904,8 +4215,8 @@ m4_if([$1], [CXX], [ ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac @@ -3921,6 +4232,11 @@ m4_if([$1], [CXX], [ # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + case $host_os in + os2*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' + ;; + esac ;; darwin* | rhapsody*) # PIC is the default on this platform @@ -3970,7 +4286,7 @@ m4_if([$1], [CXX], [ case $host_os in aix[[4-9]]*) # All AIX code is PIC. - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else @@ -4011,14 +4327,14 @@ m4_if([$1], [CXX], [ case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - if test "$host_cpu" != ia64; then + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' + if test ia64 != "$host_cpu"; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' fi ;; aCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default @@ -4047,7 +4363,7 @@ m4_if([$1], [CXX], [ ;; esac ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # KAI C++ Compiler @@ -4055,7 +4371,7 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; ecpc* ) - # old Intel C++ for x86_64 which still supported -KPIC. + # old Intel C++ for x86_64, which still supported -KPIC. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' @@ -4200,17 +4516,18 @@ m4_if([$1], [CXX], [ fi ], [ - if test "$GCC" = yes; then + if test yes = "$GCC"; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; amigaos*) @@ -4221,8 +4538,8 @@ m4_if([$1], [CXX], [ ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac @@ -4239,6 +4556,11 @@ m4_if([$1], [CXX], [ # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + case $host_os in + os2*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' + ;; + esac ;; darwin* | rhapsody*) @@ -4309,7 +4631,7 @@ m4_if([$1], [CXX], [ case $host_os in aix*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else @@ -4317,11 +4639,30 @@ m4_if([$1], [CXX], [ fi ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + case $cc_basename in + nagfor*) + # NAG Fortran compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + case $host_os in + os2*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' + ;; + esac ;; hpux9* | hpux10* | hpux11*) @@ -4337,7 +4678,7 @@ m4_if([$1], [CXX], [ ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? - _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) @@ -4346,9 +4687,9 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in - # old Intel for x86_64 which still supported -KPIC. + # old Intel for x86_64, which still supported -KPIC. ecc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@ -4373,6 +4714,12 @@ m4_if([$1], [CXX], [ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) @@ -4470,7 +4817,7 @@ m4_if([$1], [CXX], [ ;; sysv4*MP*) - if test -d /usr/nec ;then + if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi @@ -4499,7 +4846,7 @@ m4_if([$1], [CXX], [ fi ]) case $host_os in - # For platforms which do not support PIC, -DPIC is meaningless: + # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; @@ -4565,17 +4912,21 @@ m4_if([$1], [CXX], [ case $host_os in aix[[4-9]]*) # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - # Also, AIX nm treats weak defined symbols like other global defined - # symbols, whereas GNU nm marks them as "W". + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) - _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds ;; cygwin* | mingw* | cegcc*) case $cc_basename in @@ -4621,9 +4972,9 @@ m4_if([$1], [CXX], [ # included in the symbol list _LT_TAGVAR(include_expsyms, $1)= # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ` (' and `)$', so one must not match beginning or - # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', - # as well as any symbol that contains `d'. + # it will be wrapped by ' (' and ')$', so one must not match beginning or + # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', + # as well as any symbol that contains 'd'. _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if @@ -4639,7 +4990,7 @@ dnl Note also adjust exclude_expsyms for C++ above. # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. - if test "$GCC" != yes; then + if test yes != "$GCC"; then with_gnu_ld=no fi ;; @@ -4647,7 +4998,7 @@ dnl Note also adjust exclude_expsyms for C++ above. # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; - openbsd*) + openbsd* | bitrig*) with_gnu_ld=no ;; esac @@ -4657,7 +5008,7 @@ dnl Note also adjust exclude_expsyms for C++ above. # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility @@ -4679,24 +5030,24 @@ dnl Note also adjust exclude_expsyms for C++ above. esac fi - if test "$lt_use_gnu_ld_interface" = yes; then + if test yes = "$lt_use_gnu_ld_interface"; then # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' + wlarc='$wl' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then - _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no - case `$LD -v 2>&1` in + case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@ -4709,7 +5060,7 @@ dnl Note also adjust exclude_expsyms for C++ above. case $host_os in aix[[3-9]]*) # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then + if test ia64 != "$host_cpu"; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 @@ -4728,7 +5079,7 @@ _LT_EOF case $host_cpu in powerpc) # see comment about AmigaOS4 .so support - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) @@ -4744,7 +5095,7 @@ _LT_EOF _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach <jrb3@best.com> says some releases of gcc # support --undefined. This deserves some investigation. FIXME - _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi @@ -4754,7 +5105,7 @@ _LT_EOF # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes @@ -4762,61 +5113,89 @@ _LT_EOF _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; haiku*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; + os2*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + shrext_cmds=.dll + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no - if test "$host_os" = linux-dietlibc; then + if test linux-dietlibc = "$host_os"; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ - && test "$tmp_diet" = no + && test no = "$tmp_diet" then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; @@ -4827,42 +5206,47 @@ _LT_EOF lf95*) # Lahey Fortran 8.1 _LT_TAGVAR(whole_archive_flag_spec, $1)= tmp_sharedflag='--shared' ;; + nagfor*) # NAGFOR 5.3 + tmp_sharedflag='-Wl,-shared' ;; xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac - _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi case $cc_basename in + tcc*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' + ;; xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac @@ -4876,8 +5260,8 @@ _LT_EOF _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' fi ;; @@ -4895,8 +5279,8 @@ _LT_EOF _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi @@ -4908,7 +5292,7 @@ _LT_EOF _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify @@ -4923,9 +5307,9 @@ _LT_EOF # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi @@ -4942,15 +5326,15 @@ _LT_EOF *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac - if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then + if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then runpath_var= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= @@ -4966,7 +5350,7 @@ _LT_EOF # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. _LT_TAGVAR(hardcode_minus_L, $1)=yes - if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. _LT_TAGVAR(hardcode_direct, $1)=unsupported @@ -4974,34 +5358,57 @@ _LT_EOF ;; aix[[4-9]]*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' - no_entry_flag="" + no_entry_flag= else # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - # Also, AIX nm treats weak defined symbols like other global - # defined symbols, whereas GNU nm marks them as "W". + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then aix_use_runtimelinking=yes break fi done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi ;; esac @@ -5020,13 +5427,21 @@ _LT_EOF _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' + _LT_TAGVAR(file_list_spec, $1)='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # traditional, no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=no + ;; + esac - if test "$GCC" = yes; then + if test yes = "$GCC"; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` + collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then @@ -5045,61 +5460,80 @@ _LT_EOF ;; esac shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag="$shared_flag "'$wl-G' fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' else # not using gcc - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' else - shared_flag='${wl}-bM:SRE' + shared_flag='$wl-bM:SRE' fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' fi fi - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. _LT_TAGVAR(always_export_symbols, $1)=yes - if test "$aix_use_runtimelinking" = yes; then + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else - if test "$host_cpu" = ia64; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + if test ia64 = "$host_cpu"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - if test "$with_gnu_ld" = yes; then + _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' + if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds its shared libraries. - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared libraries. + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' fi fi ;; @@ -5108,7 +5542,7 @@ _LT_EOF case $host_cpu in powerpc) # see comment about AmigaOS4 .so support - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) @@ -5138,16 +5572,17 @@ _LT_EOF # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. - _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' - _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; - else - sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' + _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes @@ -5156,18 +5591,18 @@ _LT_EOF # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile="$lt_outputfile.exe" - lt_tool_outputfile="$lt_tool_outputfile.exe" - ;; - esac~ - if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' ;; *) # Assume MSVC wrapper @@ -5176,7 +5611,7 @@ _LT_EOF # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. @@ -5226,33 +5661,33 @@ _LT_EOF ;; hpux9*) - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' ;; hpux10*) - if test "$GCC" = yes && test "$with_gnu_ld" = no; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + if test yes,no = "$GCC,$with_gnu_ld"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi - if test "$with_gnu_ld" = no; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes @@ -5260,25 +5695,25 @@ _LT_EOF ;; hpux11*) - if test "$GCC" = yes && test "$with_gnu_ld" = no; then + if test yes,no = "$GCC,$with_gnu_ld"; then case $host_cpu in hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) m4_if($1, [], [ @@ -5286,14 +5721,14 @@ _LT_EOF # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) _LT_LINKER_OPTION([if $CC understands -b], _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], - [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], + [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], - [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) + [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) ;; esac fi - if test "$with_gnu_ld" = no; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in @@ -5304,7 +5739,7 @@ _LT_EOF *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. @@ -5315,16 +5750,16 @@ _LT_EOF ;; irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$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 -o $lib' + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$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 -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. # This should be the same for all languages, so no per-tag cache variable. AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], [lt_cv_irix_exported_symbol], - [save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" + [save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" AC_LINK_IFELSE( [AC_LANG_SOURCE( [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], @@ -5337,21 +5772,31 @@ _LT_EOF end]])])], [lt_cv_irix_exported_symbol=yes], [lt_cv_irix_exported_symbol=no]) - LDFLAGS="$save_LDFLAGS"]) - if test "$lt_cv_irix_exported_symbol" = yes; then - _LT_TAGVAR(archive_expsym_cmds, $1)='$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' + LDFLAGS=$save_LDFLAGS]) + if test yes = "$lt_cv_irix_exported_symbol"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='$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 else - _LT_TAGVAR(archive_cmds, $1)='$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' - _LT_TAGVAR(archive_expsym_cmds, $1)='$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' + _LT_TAGVAR(archive_cmds, $1)='$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' + _LT_TAGVAR(archive_expsym_cmds, $1)='$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' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes _LT_TAGVAR(link_all_deplibs, $1)=yes ;; + linux*) + case $cc_basename in + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + _LT_TAGVAR(ld_shlibs, $1)=yes + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out @@ -5366,7 +5811,7 @@ _LT_EOF newsos6) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; @@ -5374,27 +5819,19 @@ _LT_EOF *nto* | *qnx*) ;; - openbsd*) + openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' else - case $host_os in - openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - ;; - esac + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' fi else _LT_TAGVAR(ld_shlibs, $1)=no @@ -5405,33 +5842,53 @@ _LT_EOF _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + shrext_cmds=.dll + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; osf3*) - if test "$GCC" = yes; then - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_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 -o $lib' + if test yes = "$GCC"; then + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_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 -o $lib' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + if test yes = "$GCC"; then + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' + $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' @@ -5442,24 +5899,24 @@ _LT_EOF solaris*) _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' - if test "$GCC" = yes; then - wlarc='${wl}' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + wlarc='$wl' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' - _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) - wlarc='${wl}' - _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' + wlarc='$wl' + _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi @@ -5469,11 +5926,11 @@ _LT_EOF solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, - # but understands `-z linker_flag'. GCC discards it without `$wl', + # but understands '-z linker_flag'. GCC discards it without '$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) - if test "$GCC" = yes; then - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + if test yes = "$GCC"; then + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' else _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' fi @@ -5483,10 +5940,10 @@ _LT_EOF ;; sunos4*) - if test "x$host_vendor" = xsequent; then + if test sequent = "$host_vendor"; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi @@ -5535,43 +5992,43 @@ _LT_EOF ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not + # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' runpath_var='LD_RUN_PATH' - if test "$GCC" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; @@ -5586,17 +6043,17 @@ _LT_EOF ;; esac - if test x$host_vendor = xsni; then + if test sni = "$host_vendor"; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym' ;; esac fi fi ]) AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) -test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no +test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld @@ -5613,7 +6070,7 @@ x|xyes) # Assume -lc should be added _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - if test "$enable_shared" = yes && test "$GCC" = yes; then + if test yes,yes = "$GCC,$enable_shared"; then case $_LT_TAGVAR(archive_cmds, $1) in *'~'*) # FIXME: we may have to deal with multi-command sequences. @@ -5693,12 +6150,12 @@ _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], _LT_TAGDECL([], [hardcode_libdir_separator], [1], [Whether we need a single "-rpath" flag with a separated argument]) _LT_TAGDECL([], [hardcode_direct], [0], - [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes + [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_direct_absolute], [0], - [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes + [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes DIR into the resulting binary and the resulting library dependency is - "absolute", i.e impossible to change by setting ${shlibpath_var} if the + "absolute", i.e impossible to change by setting $shlibpath_var if the library is relocated]) _LT_TAGDECL([], [hardcode_minus_L], [0], [Set to "yes" if using the -LDIR flag during linking hardcodes DIR @@ -5739,10 +6196,10 @@ dnl [Compiler flag to generate thread safe objects]) # ------------------------ # Ensure that the configuration variables for a C compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write -# the compiler configuration to `libtool'. +# the compiler configuration to 'libtool'. m4_defun([_LT_LANG_C_CONFIG], [m4_require([_LT_DECL_EGREP])dnl -lt_save_CC="$CC" +lt_save_CC=$CC AC_LANG_PUSH(C) # Source file extension for C test sources. @@ -5782,18 +6239,18 @@ if test -n "$compiler"; then LT_SYS_DLOPEN_SELF _LT_CMD_STRIPLIB - # Report which library types will actually be built + # Report what library types will actually be built AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) - test "$can_build_shared" = "no" && enable_shared=no + test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) - test "$enable_shared" = yes && enable_static=no + test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' @@ -5801,8 +6258,12 @@ if test -n "$compiler"; then ;; aix[[4-9]]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac fi ;; esac @@ -5810,13 +6271,13 @@ if test -n "$compiler"; then AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes + test yes = "$enable_shared" || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_CONFIG($1) fi AC_LANG_POP -CC="$lt_save_CC" +CC=$lt_save_CC ])# _LT_LANG_C_CONFIG @@ -5824,14 +6285,14 @@ CC="$lt_save_CC" # -------------------------- # Ensure that the configuration variables for a C++ compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write -# the compiler configuration to `libtool'. +# the compiler configuration to 'libtool'. m4_defun([_LT_LANG_CXX_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_PATH_MANIFEST_TOOL])dnl -if test -n "$CXX" && ( test "X$CXX" != "Xno" && - ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || - (test "X$CXX" != "Xg++"))) ; then +if test -n "$CXX" && ( test no != "$CXX" && + ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || + (test g++ != "$CXX"))); then AC_PROG_CXXCPP else _lt_caught_CXX_error=yes @@ -5873,7 +6334,7 @@ _LT_TAGVAR(objext, $1)=$objext # the CXX compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. -if test "$_lt_caught_CXX_error" != yes; then +if test yes != "$_lt_caught_CXX_error"; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" @@ -5915,35 +6376,35 @@ if test "$_lt_caught_CXX_error" != yes; then if test -n "$compiler"; then # We don't want -fno-exception when compiling C++ code, so set the # no_builtin_flag separately - if test "$GXX" = yes; then + if test yes = "$GXX"; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' else _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= fi - if test "$GXX" = yes; then + if test yes = "$GXX"; then # Set up default GNU C++ configuration LT_PATH_LD # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. - if test "$with_gnu_ld" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + if test yes = "$with_gnu_ld"; then + _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' # If archive_cmds runs LD, not CC, wlarc should be empty # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to # investigate it a little bit more. (MM) - wlarc='${wl}' + wlarc='$wl' # ancient GNU ld didn't support --whole-archive et. al. if eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then - _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi @@ -5979,18 +6440,30 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(ld_shlibs, $1)=no ;; aix[[4-9]]*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' - no_entry_flag="" + no_entry_flag= else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do case $ld_flag in @@ -6000,6 +6473,13 @@ if test "$_lt_caught_CXX_error" != yes; then ;; esac done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi ;; esac @@ -6018,13 +6498,21 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' + _LT_TAGVAR(file_list_spec, $1)='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=no + ;; + esac - if test "$GXX" = yes; then + if test yes = "$GXX"; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` + collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then @@ -6042,64 +6530,84 @@ if test "$_lt_caught_CXX_error" != yes; then fi esac shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag=$shared_flag' $wl-G' fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' else # not using gcc - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' else - shared_flag='${wl}-bM:SRE' + shared_flag='$wl-bM:SRE' fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' fi fi - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to # export. _LT_TAGVAR(always_export_symbols, $1)=yes - if test "$aix_use_runtimelinking" = yes; then + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(allow_undefined_flag, $1)='-berok' + # The "-G" linker flag allows undefined symbols. + _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' # Determine the default libpath from the value encoded in an empty # executable. _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else - if test "$host_cpu" = ia64; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + if test ia64 = "$host_cpu"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - if test "$with_gnu_ld" = yes; then + _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' + if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds its shared - # libraries. - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared + # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' fi fi ;; @@ -6109,7 +6617,7 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach <jrb3@best.com> says some releases of gcc # support --undefined. This deserves some investigation. FIXME - _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi @@ -6137,57 +6645,58 @@ if test "$_lt_caught_CXX_error" != yes; then # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. - _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' - _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; - else - $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' + _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile="$lt_outputfile.exe" - lt_tool_outputfile="$lt_tool_outputfile.exe" - ;; - esac~ - func_to_tool_file "$lt_outputfile"~ - if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + func_to_tool_file "$lt_outputfile"~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' ;; *) # g++ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi @@ -6198,6 +6707,34 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_DARWIN_LINKER_FEATURES($1) ;; + os2*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + shrext_cmds=.dll + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + dgux*) case $cc_basename in ec++*) @@ -6232,18 +6769,15 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(ld_shlibs, $1)=yes ;; - gnu*) - ;; - haiku*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; hpux9*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default @@ -6255,7 +6789,7 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. @@ -6264,11 +6798,11 @@ if test "$_lt_caught_CXX_error" != yes; then # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) - if test "$GXX" = yes; then - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + if test yes = "$GXX"; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no @@ -6278,15 +6812,15 @@ if test "$_lt_caught_CXX_error" != yes; then ;; hpux10*|hpux11*) - if test $with_gnu_ld = no; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) ;; *) - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' ;; esac fi @@ -6312,13 +6846,13 @@ if test "$_lt_caught_CXX_error" != yes; then aCC*) case $host_cpu in hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) - _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac # Commands to make compiler produce verbose output that lists @@ -6329,20 +6863,20 @@ if test "$_lt_caught_CXX_error" != yes; then # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) - if test "$GXX" = yes; then - if test $with_gnu_ld = no; then + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then case $host_cpu in hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac fi @@ -6357,22 +6891,22 @@ if test "$_lt_caught_CXX_error" != yes; then interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in CC*) # SGI C++ - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' # Archives containing C++ object files must be created using # "CC -ar", where "CC" is the IRIX C++ compiler. This is @@ -6381,22 +6915,22 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' ;; *) - if test "$GXX" = yes; then - if test "$with_gnu_ld" = no; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib' fi fi _LT_TAGVAR(link_all_deplibs, $1)=yes ;; esac - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler @@ -6404,8 +6938,8 @@ if test "$_lt_caught_CXX_error" != yes; then # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. - _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. @@ -6414,10 +6948,10 @@ if test "$_lt_caught_CXX_error" != yes; then # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' # Archives containing C++ object files must be created using # "CC -Bstatic", where "CC" is the KAI C++ compiler. @@ -6431,59 +6965,59 @@ if test "$_lt_caught_CXX_error" != yes; then # earlier do not add the objects themselves. case `$CC -V 2>&1` in *"Version 7."*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 8.0 or newer tmp_idyn= case $host_cpu in ia64*) tmp_idyn=' -i_dynamic';; esac - _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; esac _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' ;; pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ - compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ + compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ - $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ - $RANLIB $oldlib' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ + $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ + $RANLIB $oldlib' _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 6 and above use weak symbols - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ;; esac - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' ;; cxx*) # Compaq C++ - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols' runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' @@ -6497,18 +7031,18 @@ if test "$_lt_caught_CXX_error" != yes; then # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' ;; xl* | mpixl* | bgxl*) # IBM XL 8.0 on PPC, with GNU ld - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi ;; *) @@ -6516,10 +7050,10 @@ if test "$_lt_caught_CXX_error" != yes; then *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' + _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes # Not sure whether something based on @@ -6577,22 +7111,17 @@ if test "$_lt_caught_CXX_error" != yes; then _LT_TAGVAR(ld_shlibs, $1)=yes ;; - openbsd2*) - # C++ shared libraries are fairly broken - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - openbsd*) + openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' fi output_verbose_link_cmd=func_echo_all else @@ -6608,9 +7137,9 @@ if test "$_lt_caught_CXX_error" != yes; then # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. - _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Archives containing C++ object files must be created using @@ -6628,17 +7157,17 @@ if test "$_lt_caught_CXX_error" != yes; then cxx*) case $host in osf3*) - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' ;; *) _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~ - $RM $lib.exp' + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~ + $RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' ;; esac @@ -6653,21 +7182,21 @@ if test "$_lt_caught_CXX_error" != yes; then # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + if test yes,no = "$GXX,$with_gnu_ld"; then + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' case $host in osf3*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $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 -o $lib' ;; *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' ;; esac - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists @@ -6713,9 +7242,9 @@ if test "$_lt_caught_CXX_error" != yes; then # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no @@ -6723,7 +7252,7 @@ if test "$_lt_caught_CXX_error" != yes; then solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, - # but understands `-z linker_flag'. + # but understands '-z linker_flag'. # Supported since Solaris 2.6 (maybe 2.5.1?) _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; @@ -6740,30 +7269,30 @@ if test "$_lt_caught_CXX_error" != yes; then ;; gcx*) # Green Hills C++ Compiler - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' # The C++ compiler must be used to create the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' ;; *) # GNU C++ compiler with Solaris linker - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' + if test yes,no = "$GXX,$with_gnu_ld"; then + _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else - # g++ 2.7 appears to require `-G' NOT `-shared' on this + # g++ 2.7 appears to require '-G' NOT '-shared' on this # platform. - _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when @@ -6771,11 +7300,11 @@ if test "$_lt_caught_CXX_error" != yes; then output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) - _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' ;; esac fi @@ -6784,52 +7313,52 @@ if test "$_lt_caught_CXX_error" != yes; then ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' case $cc_basename in CC*) - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not + # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. - _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) - _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ - '"$_LT_TAGVAR(old_archive_cmds, $1)" + '"$_LT_TAGVAR(old_archive_cmds, $1)" _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ - '"$_LT_TAGVAR(reload_cmds, $1)" + '"$_LT_TAGVAR(reload_cmds, $1)" ;; *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; @@ -6860,10 +7389,10 @@ if test "$_lt_caught_CXX_error" != yes; then esac AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) - test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no - _LT_TAGVAR(GCC, $1)="$GXX" - _LT_TAGVAR(LD, $1)="$LD" + _LT_TAGVAR(GCC, $1)=$GXX + _LT_TAGVAR(LD, $1)=$LD ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change @@ -6890,7 +7419,7 @@ if test "$_lt_caught_CXX_error" != yes; then lt_cv_path_LD=$lt_save_path_LD lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -fi # test "$_lt_caught_CXX_error" != yes +fi # test yes != "$_lt_caught_CXX_error" AC_LANG_POP ])# _LT_LANG_CXX_CONFIG @@ -6912,13 +7441,14 @@ AC_REQUIRE([_LT_DECL_SED]) AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) func_stripname_cnf () { - case ${2} in - .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; + case @S|@2 in + .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; + *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; esac } # func_stripname_cnf ])# _LT_FUNC_STRIPNAME_CNF + # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) # --------------------------------- # Figure out "hidden" library dependencies from verbose @@ -7002,13 +7532,13 @@ if AC_TRY_EVAL(ac_compile); then pre_test_object_deps_done=no for p in `eval "$output_verbose_link_cmd"`; do - case ${prev}${p} in + case $prev$p in -L* | -R* | -l*) # Some compilers place space between "-{L,R}" and the path. # Remove the space. - if test $p = "-L" || - test $p = "-R"; then + if test x-L = "$p" || + test x-R = "$p"; then prev=$p continue fi @@ -7024,16 +7554,16 @@ if AC_TRY_EVAL(ac_compile); then case $p in =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; esac - if test "$pre_test_object_deps_done" = no; then - case ${prev} in + if test no = "$pre_test_object_deps_done"; then + case $prev in -L | -R) # Internal compiler library paths should come after those # provided the user. The postdeps already come after the # user supplied libs so there is no need to process them. if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then - _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" + _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p else - _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" + _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p" fi ;; # The "-l" case would never come before the object being @@ -7041,9 +7571,9 @@ if AC_TRY_EVAL(ac_compile); then esac else if test -z "$_LT_TAGVAR(postdeps, $1)"; then - _LT_TAGVAR(postdeps, $1)="${prev}${p}" + _LT_TAGVAR(postdeps, $1)=$prev$p else - _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" + _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p" fi fi prev= @@ -7058,15 +7588,15 @@ if AC_TRY_EVAL(ac_compile); then continue fi - if test "$pre_test_object_deps_done" = no; then + if test no = "$pre_test_object_deps_done"; then if test -z "$_LT_TAGVAR(predep_objects, $1)"; then - _LT_TAGVAR(predep_objects, $1)="$p" + _LT_TAGVAR(predep_objects, $1)=$p else _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" fi else if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then - _LT_TAGVAR(postdep_objects, $1)="$p" + _LT_TAGVAR(postdep_objects, $1)=$p else _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" fi @@ -7097,51 +7627,6 @@ interix[[3-9]]*) _LT_TAGVAR(postdep_objects,$1)= _LT_TAGVAR(postdeps,$1)= ;; - -linux*) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C++ 5.9 - - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - if test "$solaris_use_stlport4" != yes; then - _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' - fi - ;; - esac - ;; - -solaris*) - case $cc_basename in - CC* | sunCC*) - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - # Adding this requires a known-good setup of shared libraries for - # Sun compiler versions before 5.6, else PIC objects from an old - # archive will be linked into the output, leading to subtle bugs. - if test "$solaris_use_stlport4" != yes; then - _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' - fi - ;; - esac - ;; esac ]) @@ -7150,7 +7635,7 @@ case " $_LT_TAGVAR(postdeps, $1) " in esac _LT_TAGVAR(compiler_lib_search_dirs, $1)= if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then - _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` + _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'` fi _LT_TAGDECL([], [compiler_lib_search_dirs], [1], [The directories searched by this compiler when creating a shared library]) @@ -7170,10 +7655,10 @@ _LT_TAGDECL([], [compiler_lib_search_path], [1], # -------------------------- # Ensure that the configuration variables for a Fortran 77 compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. +# to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_F77_CONFIG], [AC_LANG_PUSH(Fortran 77) -if test -z "$F77" || test "X$F77" = "Xno"; then +if test -z "$F77" || test no = "$F77"; then _lt_disable_F77=yes fi @@ -7210,7 +7695,7 @@ _LT_TAGVAR(objext, $1)=$objext # the F77 compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. -if test "$_lt_disable_F77" != yes; then +if test yes != "$_lt_disable_F77"; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t @@ -7232,7 +7717,7 @@ if test "$_lt_disable_F77" != yes; then _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. - lt_save_CC="$CC" + lt_save_CC=$CC lt_save_GCC=$GCC lt_save_CFLAGS=$CFLAGS CC=${F77-"f77"} @@ -7246,21 +7731,25 @@ if test "$_lt_disable_F77" != yes; then AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) - test "$can_build_shared" = "no" && enable_shared=no + test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) - test "$enable_shared" = yes && enable_static=no + test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac fi ;; esac @@ -7268,11 +7757,11 @@ if test "$_lt_disable_F77" != yes; then AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes + test yes = "$enable_shared" || enable_static=yes AC_MSG_RESULT([$enable_static]) - _LT_TAGVAR(GCC, $1)="$G77" - _LT_TAGVAR(LD, $1)="$LD" + _LT_TAGVAR(GCC, $1)=$G77 + _LT_TAGVAR(LD, $1)=$LD ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change @@ -7289,9 +7778,9 @@ if test "$_lt_disable_F77" != yes; then fi # test -n "$compiler" GCC=$lt_save_GCC - CC="$lt_save_CC" - CFLAGS="$lt_save_CFLAGS" -fi # test "$_lt_disable_F77" != yes + CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS +fi # test yes != "$_lt_disable_F77" AC_LANG_POP ])# _LT_LANG_F77_CONFIG @@ -7301,11 +7790,11 @@ AC_LANG_POP # ------------------------- # Ensure that the configuration variables for a Fortran compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. +# to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_FC_CONFIG], [AC_LANG_PUSH(Fortran) -if test -z "$FC" || test "X$FC" = "Xno"; then +if test -z "$FC" || test no = "$FC"; then _lt_disable_FC=yes fi @@ -7342,7 +7831,7 @@ _LT_TAGVAR(objext, $1)=$objext # the FC compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. -if test "$_lt_disable_FC" != yes; then +if test yes != "$_lt_disable_FC"; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t @@ -7364,7 +7853,7 @@ if test "$_lt_disable_FC" != yes; then _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. - lt_save_CC="$CC" + lt_save_CC=$CC lt_save_GCC=$GCC lt_save_CFLAGS=$CFLAGS CC=${FC-"f95"} @@ -7380,21 +7869,25 @@ if test "$_lt_disable_FC" != yes; then AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) - test "$can_build_shared" = "no" && enable_shared=no + test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) - test "$enable_shared" = yes && enable_static=no + test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac fi ;; esac @@ -7402,11 +7895,11 @@ if test "$_lt_disable_FC" != yes; then AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes + test yes = "$enable_shared" || enable_static=yes AC_MSG_RESULT([$enable_static]) - _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" - _LT_TAGVAR(LD, $1)="$LD" + _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu + _LT_TAGVAR(LD, $1)=$LD ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change @@ -7426,7 +7919,7 @@ if test "$_lt_disable_FC" != yes; then GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS -fi # test "$_lt_disable_FC" != yes +fi # test yes != "$_lt_disable_FC" AC_LANG_POP ])# _LT_LANG_FC_CONFIG @@ -7436,7 +7929,7 @@ AC_LANG_POP # -------------------------- # Ensure that the configuration variables for the GNU Java Compiler compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. +# to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_GCJ_CONFIG], [AC_REQUIRE([LT_PROG_GCJ])dnl AC_LANG_SAVE @@ -7470,7 +7963,7 @@ CC=${GCJ-"gcj"} CFLAGS=$GCJFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC -_LT_TAGVAR(LD, $1)="$LD" +_LT_TAGVAR(LD, $1)=$LD _LT_CC_BASENAME([$compiler]) # GCJ did not exist at the time GCC didn't implicitly link libc in. @@ -7507,7 +8000,7 @@ CFLAGS=$lt_save_CFLAGS # -------------------------- # Ensure that the configuration variables for the GNU Go compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. +# to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_GO_CONFIG], [AC_REQUIRE([LT_PROG_GO])dnl AC_LANG_SAVE @@ -7541,7 +8034,7 @@ CC=${GOC-"gccgo"} CFLAGS=$GOFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC -_LT_TAGVAR(LD, $1)="$LD" +_LT_TAGVAR(LD, $1)=$LD _LT_CC_BASENAME([$compiler]) # Go did not exist at the time GCC didn't implicitly link libc in. @@ -7578,7 +8071,7 @@ CFLAGS=$lt_save_CFLAGS # ------------------------- # Ensure that the configuration variables for the Windows resource compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to `libtool'. +# to write the compiler configuration to 'libtool'. m4_defun([_LT_LANG_RC_CONFIG], [AC_REQUIRE([LT_PROG_RC])dnl AC_LANG_SAVE @@ -7594,7 +8087,7 @@ _LT_TAGVAR(objext, $1)=$objext lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' # Code to be used in simple link tests -lt_simple_link_test_code="$lt_simple_compile_test_code" +lt_simple_link_test_code=$lt_simple_compile_test_code # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER @@ -7604,7 +8097,7 @@ _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. -lt_save_CC="$CC" +lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC= @@ -7633,7 +8126,7 @@ AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], [AC_CHECK_TOOL(GCJ, gcj,) - test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2" AC_SUBST(GCJFLAGS)])])[]dnl ]) @@ -7744,7 +8237,7 @@ lt_ac_count=0 # Add /usr/xpg4/bin/sed as it is typically found on Solaris # along with /bin/sed that truncates output. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do - test ! -f $lt_ac_sed && continue + test ! -f "$lt_ac_sed" && continue cat /dev/null > conftest.in lt_ac_count=0 echo $ECHO_N "0123456789$ECHO_C" >conftest.in @@ -7761,9 +8254,9 @@ for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break cmp -s conftest.out conftest.nl || break # 10000 chars as input seems more than enough - test $lt_ac_count -gt 10 && break + test 10 -lt "$lt_ac_count" && break lt_ac_count=`expr $lt_ac_count + 1` - if test $lt_ac_count -gt $lt_ac_max; then + if test "$lt_ac_count" -gt "$lt_ac_max"; then lt_ac_max=$lt_ac_count lt_cv_path_SED=$lt_ac_sed fi @@ -7787,27 +8280,7 @@ dnl AC_DEFUN([LT_AC_PROG_SED], []) # Find out whether the shell is Bourne or XSI compatible, # or has some other useful features. m4_defun([_LT_CHECK_SHELL_FEATURES], -[AC_MSG_CHECKING([whether the shell understands some XSI constructs]) -# Try some XSI features -xsi_shell=no -( _lt_dummy="a/b/c" - test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ - = c,a/b,b/c, \ - && eval 'test $(( 1 + 1 )) -eq 2 \ - && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ - && xsi_shell=yes -AC_MSG_RESULT([$xsi_shell]) -_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) - -AC_MSG_CHECKING([whether the shell understands "+="]) -lt_shell_append=no -( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ - >/dev/null 2>&1 \ - && lt_shell_append=yes -AC_MSG_RESULT([$lt_shell_append]) -_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) - -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then +[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false @@ -7831,102 +8304,9 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl ])# _LT_CHECK_SHELL_FEATURES -# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY) -# ------------------------------------------------------ -# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and -# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY. -m4_defun([_LT_PROG_FUNCTION_REPLACE], -[dnl { -sed -e '/^$1 ()$/,/^} # $1 /c\ -$1 ()\ -{\ -m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1]) -} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: -]) - - -# _LT_PROG_REPLACE_SHELLFNS -# ------------------------- -# Replace existing portable implementations of several shell functions with -# equivalent extended shell implementations where those features are available.. -m4_defun([_LT_PROG_REPLACE_SHELLFNS], -[if test x"$xsi_shell" = xyes; then - _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac]) - - _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl - func_basename_result="${1##*/}"]) - - _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}"]) - - _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"}]) - - _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl - func_split_long_opt_name=${1%%=*} - func_split_long_opt_arg=${1#*=}]) - - _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl - func_split_short_opt_arg=${1#??} - func_split_short_opt_name=${1%"$func_split_short_opt_arg"}]) - - _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac]) - - _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo]) - - _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))]) - - _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}]) -fi - -if test x"$lt_shell_append" = xyes; then - _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"]) - - _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl - func_quote_for_eval "${2}" -dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \ - eval "${1}+=\\\\ \\$func_quote_for_eval_result"]) - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - AC_MSG_WARN([Unable to substitute extended shell functions in $ofile]) -fi -]) - # _LT_PATH_CONVERSION_FUNCTIONS # ----------------------------- -# Determine which file name conversion functions should be used by +# Determine what file name conversion functions should be used by # func_to_host_file (and, implicitly, by func_to_host_path). These are needed # for certain cross-compile configurations and native mingw. m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4 index 5d9acd8e..94b08297 100644 --- a/m4/ltoptions.m4 +++ b/m4/ltoptions.m4 @@ -1,14 +1,14 @@ # Helper functions for option handling. -*- Autoconf -*- # -# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software +# Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # 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. -# serial 7 ltoptions.m4 +# serial 8 ltoptions.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) @@ -29,7 +29,7 @@ m4_define([_LT_SET_OPTION], [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), _LT_MANGLE_DEFUN([$1], [$2]), - [m4_warning([Unknown $1 option `$2'])])[]dnl + [m4_warning([Unknown $1 option '$2'])])[]dnl ]) @@ -75,13 +75,15 @@ m4_if([$1],[LT_INIT],[ dnl dnl If no reference was made to various pairs of opposing options, then dnl we run the default mode handler for the pair. For example, if neither - dnl `shared' nor `disable-shared' was passed, we enable building of shared + dnl 'shared' nor 'disable-shared' was passed, we enable building of shared dnl archives by default: _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], - [_LT_ENABLE_FAST_INSTALL]) + [_LT_ENABLE_FAST_INSTALL]) + _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4], + [_LT_WITH_AIX_SONAME([aix])]) ]) ])# _LT_SET_OPTIONS @@ -112,7 +114,7 @@ AU_DEFUN([AC_LIBTOOL_DLOPEN], [_LT_SET_OPTION([LT_INIT], [dlopen]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you -put the `dlopen' option into LT_INIT's first parameter.]) +put the 'dlopen' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: @@ -148,7 +150,7 @@ AU_DEFUN([AC_LIBTOOL_WIN32_DLL], _LT_SET_OPTION([LT_INIT], [win32-dll]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you -put the `win32-dll' option into LT_INIT's first parameter.]) +put the 'win32-dll' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: @@ -157,9 +159,9 @@ dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) # _LT_ENABLE_SHARED([DEFAULT]) # ---------------------------- -# implement the --enable-shared flag, and supports the `shared' and -# `disable-shared' LT_INIT options. -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +# implement the --enable-shared flag, and supports the 'shared' and +# 'disable-shared' LT_INIT options. +# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. m4_define([_LT_ENABLE_SHARED], [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([shared], @@ -172,14 +174,14 @@ AC_ARG_ENABLE([shared], *) enable_shared=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_shared=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac], [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) @@ -211,9 +213,9 @@ dnl AC_DEFUN([AM_DISABLE_SHARED], []) # _LT_ENABLE_STATIC([DEFAULT]) # ---------------------------- -# implement the --enable-static flag, and support the `static' and -# `disable-static' LT_INIT options. -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +# implement the --enable-static flag, and support the 'static' and +# 'disable-static' LT_INIT options. +# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. m4_define([_LT_ENABLE_STATIC], [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([static], @@ -226,14 +228,14 @@ AC_ARG_ENABLE([static], *) enable_static=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_static=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac], [enable_static=]_LT_ENABLE_STATIC_DEFAULT) @@ -265,9 +267,9 @@ dnl AC_DEFUN([AM_DISABLE_STATIC], []) # _LT_ENABLE_FAST_INSTALL([DEFAULT]) # ---------------------------------- -# implement the --enable-fast-install flag, and support the `fast-install' -# and `disable-fast-install' LT_INIT options. -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +# implement the --enable-fast-install flag, and support the 'fast-install' +# and 'disable-fast-install' LT_INIT options. +# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. m4_define([_LT_ENABLE_FAST_INSTALL], [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([fast-install], @@ -280,14 +282,14 @@ AC_ARG_ENABLE([fast-install], *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac], [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) @@ -304,14 +306,14 @@ AU_DEFUN([AC_ENABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put -the `fast-install' option into LT_INIT's first parameter.]) +the 'fast-install' option into LT_INIT's first parameter.]) ]) AU_DEFUN([AC_DISABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], [disable-fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put -the `disable-fast-install' option into LT_INIT's first parameter.]) +the 'disable-fast-install' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: @@ -319,11 +321,64 @@ dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) +# _LT_WITH_AIX_SONAME([DEFAULT]) +# ---------------------------------- +# implement the --with-aix-soname flag, and support the `aix-soname=aix' +# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT +# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'. +m4_define([_LT_WITH_AIX_SONAME], +[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl +shared_archive_member_spec= +case $host,$enable_shared in +power*-*-aix[[5-9]]*,yes) + AC_MSG_CHECKING([which variant of shared library versioning to provide]) + AC_ARG_WITH([aix-soname], + [AS_HELP_STRING([--with-aix-soname=aix|svr4|both], + [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])], + [case $withval in + aix|svr4|both) + ;; + *) + AC_MSG_ERROR([Unknown argument to --with-aix-soname]) + ;; + esac + lt_cv_with_aix_soname=$with_aix_soname], + [AC_CACHE_VAL([lt_cv_with_aix_soname], + [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT) + with_aix_soname=$lt_cv_with_aix_soname]) + AC_MSG_RESULT([$with_aix_soname]) + if test aix != "$with_aix_soname"; then + # For the AIX way of multilib, we name the shared archive member + # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', + # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. + # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, + # the AIX toolchain works better with OBJECT_MODE set (default 32). + if test 64 = "${OBJECT_MODE-32}"; then + shared_archive_member_spec=shr_64 + else + shared_archive_member_spec=shr + fi + fi + ;; +*) + with_aix_soname=aix + ;; +esac + +_LT_DECL([], [shared_archive_member_spec], [0], + [Shared archive member basename, for filename based shared library versioning on AIX])dnl +])# _LT_WITH_AIX_SONAME + +LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])]) +LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])]) +LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])]) + + # _LT_WITH_PIC([MODE]) # -------------------- -# implement the --with-pic flag, and support the `pic-only' and `no-pic' +# implement the --with-pic flag, and support the 'pic-only' and 'no-pic' # LT_INIT options. -# MODE is either `yes' or `no'. If omitted, it defaults to `both'. +# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'. m4_define([_LT_WITH_PIC], [AC_ARG_WITH([pic], [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], @@ -334,19 +389,17 @@ m4_define([_LT_WITH_PIC], *) pic_mode=default # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $withval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac], - [pic_mode=default]) - -test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) + [pic_mode=m4_default([$1], [default])]) _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl ])# _LT_WITH_PIC @@ -359,7 +412,7 @@ AU_DEFUN([AC_LIBTOOL_PICMODE], [_LT_SET_OPTION([LT_INIT], [pic-only]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you -put the `pic-only' option into LT_INIT's first parameter.]) +put the 'pic-only' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: diff --git a/m4/ltsugar.m4 b/m4/ltsugar.m4 index 9000a057..48bc9344 100644 --- a/m4/ltsugar.m4 +++ b/m4/ltsugar.m4 @@ -1,6 +1,7 @@ # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # -# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. +# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software +# Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives @@ -33,7 +34,7 @@ m4_define([_lt_join], # ------------ # Manipulate m4 lists. # These macros are necessary as long as will still need to support -# Autoconf-2.59 which quotes differently. +# Autoconf-2.59, which quotes differently. m4_define([lt_car], [[$1]]) m4_define([lt_cdr], [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], @@ -44,7 +45,7 @@ m4_define([lt_unquote], $1) # lt_append(MACRO-NAME, STRING, [SEPARATOR]) # ------------------------------------------ -# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. +# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'. # Note that neither SEPARATOR nor STRING are expanded; they are appended # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). # No SEPARATOR is output if MACRO-NAME was previously undefined (different diff --git a/m4/ltversion.m4 b/m4/ltversion.m4 index 07a8602d..fa04b52a 100644 --- a/m4/ltversion.m4 +++ b/m4/ltversion.m4 @@ -1,6 +1,6 @@ # ltversion.m4 -- version numbers -*- Autoconf -*- # -# Copyright (C) 2004 Free Software Foundation, Inc. +# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives @@ -9,15 +9,15 @@ # @configure_input@ -# serial 3337 ltversion.m4 +# serial 4179 ltversion.m4 # This file is part of GNU Libtool -m4_define([LT_PACKAGE_VERSION], [2.4.2]) -m4_define([LT_PACKAGE_REVISION], [1.3337]) +m4_define([LT_PACKAGE_VERSION], [2.4.6]) +m4_define([LT_PACKAGE_REVISION], [2.4.6]) AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.4.2' -macro_revision='1.3337' +[macro_version='2.4.6' +macro_revision='2.4.6' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) diff --git a/m4/lt~obsolete.m4 b/m4/lt~obsolete.m4 index c573da90..c6b26f88 100644 --- a/m4/lt~obsolete.m4 +++ b/m4/lt~obsolete.m4 @@ -1,6 +1,7 @@ # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # -# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc. +# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software +# Foundation, Inc. # Written by Scott James Remnant, 2004. # # This file is free software; the Free Software Foundation gives @@ -11,7 +12,7 @@ # These exist entirely to fool aclocal when bootstrapping libtool. # -# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) +# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN), # which have later been changed to m4_define as they aren't part of the # exported API, or moved to Autoconf or Automake where they belong. # @@ -25,7 +26,7 @@ # included after everything else. This provides aclocal with the # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything # because those macros already exist, or will be overwritten later. -# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. +# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. # # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. # Yes, that means every name once taken will need to remain here until diff --git a/man/Makefile.in b/man/Makefile.in index d62aa0f8..7f421ea9 100644 --- a/man/Makefile.in +++ b/man/Makefile.in @@ -304,6 +304,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/man/NetworkManager.8 b/man/NetworkManager.8 index 6ea90010..52b0aa3a 100644 --- a/man/NetworkManager.8 +++ b/man/NetworkManager.8 @@ -2,7 +2,7 @@ .\" Title: NetworkManager .\" Author: .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 08/27/2015 +.\" Date: 11/23/2015 .\" Manual: Network management daemons .\" Source: NetworkManager 1.0 .\" Language: English @@ -239,6 +239,11 @@ in \fBNetworkManager.conf\fR(5) for more information\&. .RE +.PP +\fB\-\-print\-config\fR +.RS 4 +Print the NetworkMangager configuration to stdout and exit\&. +.RE .SH "UDEV PROPERTIES" .PP \fBudev\fR(7) diff --git a/man/NetworkManager.conf.5 b/man/NetworkManager.conf.5 index 011b98d3..376d528d 100644 --- a/man/NetworkManager.conf.5 +++ b/man/NetworkManager.conf.5 @@ -2,7 +2,7 @@ .\" Title: NetworkManager.conf .\" Author: .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 08/27/2015 +.\" Date: 11/23/2015 .\" Manual: Configuration .\" Source: NetworkManager 1.0 .\" Language: English diff --git a/man/nm-settings-ifcfg-rh.5 b/man/nm-settings-ifcfg-rh.5 index 26ac28d8..a843aa5f 100644 --- a/man/nm-settings-ifcfg-rh.5 +++ b/man/nm-settings-ifcfg-rh.5 @@ -2,12 +2,12 @@ .\" Title: nm-settings-ifcfg-rh .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 27 August 2015 +.\" Date: 23 November 2015 .\" Manual: Configuration -.\" Source: NetworkManager 1.0.6 +.\" Source: NetworkManager 1.0.7 .\" Language: English .\" -.TH "NM\-SETTINGS\-IFCFG\" "5" "" "NetworkManager 1\&.0\&.6" "Configuration" +.TH "NM\-SETTINGS\-IFCFG\" "5" "" "NetworkManager 1\&.0\&.7" "Configuration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -38,7 +38,7 @@ for details)\&. The profiles can be stored in various formats\&. NetworkManager .PP The \fIifcfg\-rh\fR -plugin is used on the Fedora and Red Hat Enterprise Linux distributions to read/write configuration from/to the standard +plugin is used on the Fedora and Red Hat Enterprise Linux distributions to read/write configuration from/to the traditional /etc/sysconfig/network\-scripts/ifcfg\-* files\&. Each NetworkManager connection maps to one ifcfg\-* @@ -48,7 +48,7 @@ for passwords, route\-* for static IPv4 routes and route6\-* -for static IPv6 routes\&. The plugin currently supports reading and writing Ethernet, Wi\-Fi, InfiniBand, VLAN, Bond, Bridge, and Team connections\&. Unsupported connection types (such as WWAN, PPPoE, VPN, or ADSL are handled by +for static IPv6 routes\&. The plugin currently supports reading and writing Ethernet, Wi\-Fi, InfiniBand, VLAN, Bond, Bridge, and Team connections\&. Unsupported connection types (such as WWAN, PPPoE, VPN, or ADSL) are handled by \fIkeyfile\fR plugin (\fBnm-settings-keyfile\fR(5))\&. The main reason for using \fIifcfg\-rh\fR @@ -1765,7 +1765,7 @@ VLAN flags\&.\fB Allowed values: \fR"GVRP", "LOOSE_BINDING" for VLAN_FLAGS; 0 or 1 for REORDER_HDR T} T{ -ingress\-property\-map +ingress\-priority\-map T}:T{ VLAN_INGRESS_PRIORITY_MAP T}:T{ @@ -1776,7 +1776,7 @@ Ingress priority mapping\&.\fB Example: \fRVLAN_INGRESS_PRIORITY_MAP=4:2,3:5 T} T{ -egress\-property\-map +egress\-priority\-map T}:T{ VLAN_EGRESS_PRIORITY_MAP T}:T{ diff --git a/man/nm-settings-ifcfg-rh.xml b/man/nm-settings-ifcfg-rh.xml index 868e7420..3fc7403f 100644 --- a/man/nm-settings-ifcfg-rh.xml +++ b/man/nm-settings-ifcfg-rh.xml @@ -1,6 +1,6 @@ <?xml version="1.0"?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> -<refentry id="nm-settings-ifcfg-rh"><refentryinfo><date>27 August 2015</date></refentryinfo><refmeta><refentrytitle>nm-settings-ifcfg-rh</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.0.6</refmiscinfo></refmeta><refnamediv><refname>nm-settings-ifcfg-rh</refname><refpurpose>Description of <emphasis>ifcfg-rh</emphasis> settings plugin</refpurpose></refnamediv><refsect1><title>DESCRIPTION</title><para> +<refentry id="nm-settings-ifcfg-rh"><refentryinfo><date>23 November 2015</date></refentryinfo><refmeta><refentrytitle>nm-settings-ifcfg-rh</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.0.7</refmiscinfo></refmeta><refnamediv><refname>nm-settings-ifcfg-rh</refname><refpurpose>Description of <emphasis>ifcfg-rh</emphasis> settings plugin</refpurpose></refnamediv><refsect1><title>DESCRIPTION</title><para> NetworkManager is based on the concept of connection profiles that contain network configuration (see <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details). The profiles can be stored in various formats. NetworkManager uses plugins for reading and writing @@ -8,13 +8,13 @@ </para><para> The <emphasis>ifcfg-rh</emphasis> plugin is used on the Fedora and Red Hat Enterprise Linux distributions to read/write configuration from/to - the standard <filename>/etc/sysconfig/network-scripts/ifcfg-*</filename> files. + the traditional <filename>/etc/sysconfig/network-scripts/ifcfg-*</filename> files. Each NetworkManager connection maps to one <filename>ifcfg-*</filename> file, with possible usage of <filename>keys-*</filename> for passwords, <filename>route-*</filename> for static IPv4 routes and <filename>route6-*</filename> for static IPv6 routes. The plugin currently supports reading and writing Ethernet, Wi-Fi, InfiniBand, VLAN, Bond, Bridge, and Team connections. Unsupported connection types (such as - WWAN, PPPoE, VPN, or ADSL are handled by <emphasis>keyfile</emphasis> plugin + WWAN, PPPoE, VPN, or ADSL) are handled by <emphasis>keyfile</emphasis> plugin (<citerefentry><refentrytitle>nm-settings-keyfile</refentrytitle><manvolnum>5</manvolnum></citerefentry>). The main reason for using <emphasis>ifcfg-rh</emphasis> plugin is the compatibility with legacy configurations for <emphasis>ifup</emphasis> and <emphasis>ifdown</emphasis> @@ -290,9 +290,9 @@ Example: </emphasis>IPV6_PRIVACY=rfc3041 IPV6_PRIVACY_PREFER_PUBLIC_IP=yes<empha Allowed values: </emphasis>IPV6_PRIVACY: no, yes (rfc3041 or rfc4941); IPV6_PRIVACY_PREFER_PUBLIC_IP: yes, no</entry></row></tbody></tgroup></table><table><title>team-port setting</title><tgroup cols="4"><thead><row><entry>Property</entry><entry>Ifcfg-rh Variable</entry><entry>Default</entry><entry>Description</entry></row></thead><tbody><row><entry align="left">config</entry><entry align="left">TEAM_PORT_CONFIG</entry><entry align="left"/><entry align="left">Team port configuration in JSON. See man teamd.conf for details.</entry></row></tbody></tgroup></table><table><title>team setting</title><tgroup cols="4"><thead><row><entry>Property</entry><entry>Ifcfg-rh Variable</entry><entry>Default</entry><entry>Description</entry></row></thead><tbody><row><entry align="left">config</entry><entry align="left">TEAM_CONFIG</entry><entry align="left"/><entry align="left">Team configuration in JSON. See man teamd.conf for details.</entry></row></tbody></tgroup></table><table><title>vlan setting</title><tgroup cols="4"><thead><row><entry>Property</entry><entry>Ifcfg-rh Variable</entry><entry>Default</entry><entry>Description</entry></row></thead><tbody><row><entry align="left">parent</entry><entry align="left">DEVICE or PHYSDEV</entry><entry align="left"/><entry align="left">Parent interface of the VLAN.</entry></row><row><entry align="left">id</entry><entry align="left">VLAN_ID or DEVICE</entry><entry align="left"/><entry align="left">VLAN identifier.</entry></row><row><entry align="left">flags</entry><entry align="left">VLAN_FLAGS, REORDER_HDR</entry><entry align="left"/><entry align="left">VLAN flags.<emphasis role="bold"> -Allowed values: </emphasis>"GVRP", "LOOSE_BINDING" for VLAN_FLAGS; 0 or 1 for REORDER_HDR</entry></row><row><entry align="left">ingress-property-map</entry><entry align="left">VLAN_INGRESS_PRIORITY_MAP</entry><entry align="left"/><entry align="left">Ingress priority mapping.<emphasis role="bold"> +Allowed values: </emphasis>"GVRP", "LOOSE_BINDING" for VLAN_FLAGS; 0 or 1 for REORDER_HDR</entry></row><row><entry align="left">ingress-priority-map</entry><entry align="left">VLAN_INGRESS_PRIORITY_MAP</entry><entry align="left"/><entry align="left">Ingress priority mapping.<emphasis role="bold"> -Example: </emphasis>VLAN_INGRESS_PRIORITY_MAP=4:2,3:5</entry></row><row><entry align="left">egress-property-map</entry><entry align="left">VLAN_EGRESS_PRIORITY_MAP</entry><entry align="left"/><entry align="left">Egress priority mapping.<emphasis role="bold"> +Example: </emphasis>VLAN_INGRESS_PRIORITY_MAP=4:2,3:5</entry></row><row><entry align="left">egress-priority-map</entry><entry align="left">VLAN_EGRESS_PRIORITY_MAP</entry><entry align="left"/><entry align="left">Egress priority mapping.<emphasis role="bold"> Example: </emphasis>VLAN_EGRESS_PRIORITY_MAP=5:4,4:1,3:7</entry></row><row><entry align="left">interface-name</entry><entry align="left">PHYSDEV and VLAN_ID, or DEVICE</entry><entry align="left"/><entry align="left">VLAN interface name. If all variables are set, parent device from PHYSDEV takes precedence over DEVICE, but VLAN id from DEVICE takes precedence over VLAN_ID.<emphasis role="bold"> diff --git a/man/nm-settings-ifcfg-rh.xsl b/man/nm-settings-ifcfg-rh.xsl index e0e3eb9a..4338b90d 100644 --- a/man/nm-settings-ifcfg-rh.xsl +++ b/man/nm-settings-ifcfg-rh.xsl @@ -45,13 +45,13 @@ <para> The <emphasis>ifcfg-rh</emphasis> plugin is used on the Fedora and Red Hat Enterprise Linux distributions to read/write configuration from/to - the standard <filename>/etc/sysconfig/network-scripts/ifcfg-*</filename> files. + the traditional <filename>/etc/sysconfig/network-scripts/ifcfg-*</filename> files. Each NetworkManager connection maps to one <filename>ifcfg-*</filename> file, with possible usage of <filename>keys-*</filename> for passwords, <filename>route-*</filename> for static IPv4 routes and <filename>route6-*</filename> for static IPv6 routes. The plugin currently supports reading and writing Ethernet, Wi-Fi, InfiniBand, VLAN, Bond, Bridge, and Team connections. Unsupported connection types (such as - WWAN, PPPoE, VPN, or ADSL are handled by <emphasis>keyfile</emphasis> plugin + WWAN, PPPoE, VPN, or ADSL) are handled by <emphasis>keyfile</emphasis> plugin (<citerefentry><refentrytitle>nm-settings-keyfile</refentrytitle><manvolnum>5</manvolnum></citerefentry>). The main reason for using <emphasis>ifcfg-rh</emphasis> plugin is the compatibility with legacy configurations for <emphasis>ifup</emphasis> and <emphasis>ifdown</emphasis> diff --git a/man/nm-settings-keyfile.5 b/man/nm-settings-keyfile.5 index 61367072..7f712d18 100644 --- a/man/nm-settings-keyfile.5 +++ b/man/nm-settings-keyfile.5 @@ -2,12 +2,12 @@ .\" Title: nm-settings-keyfile .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 27 August 2015 +.\" Date: 23 November 2015 .\" Manual: Configuration -.\" Source: NetworkManager 1.0.6 +.\" Source: NetworkManager 1.0.7 .\" Language: English .\" -.TH "NM\-SETTINGS\-KEYFIL" "5" "" "NetworkManager 1\&.0\&.6" "Configuration" +.TH "NM\-SETTINGS\-KEYFIL" "5" "" "NetworkManager 1\&.0\&.7" "Configuration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/man/nm-settings-keyfile.xml b/man/nm-settings-keyfile.xml index cd6e0443..d999a2aa 100644 --- a/man/nm-settings-keyfile.xml +++ b/man/nm-settings-keyfile.xml @@ -1,6 +1,6 @@ <?xml version="1.0"?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> -<refentry id="nm-settings-keyfile"><refentryinfo><date>27 August 2015</date></refentryinfo><refmeta><refentrytitle>nm-settings-keyfile</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.0.6</refmiscinfo></refmeta><refnamediv><refname>nm-settings-keyfile</refname><refpurpose>Description of <emphasis>keyfile</emphasis> settings plugin</refpurpose></refnamediv><refsect1><title>DESCRIPTION</title><para> +<refentry id="nm-settings-keyfile"><refentryinfo><date>23 November 2015</date></refentryinfo><refmeta><refentrytitle>nm-settings-keyfile</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.0.7</refmiscinfo></refmeta><refnamediv><refname>nm-settings-keyfile</refname><refpurpose>Description of <emphasis>keyfile</emphasis> settings plugin</refpurpose></refnamediv><refsect1><title>DESCRIPTION</title><para> NetworkManager is based on the concept of connection profiles that contain network configuration (see <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details). The profiles can be stored in various formats. NetworkManager uses plugins for reading and writing diff --git a/man/nm-settings.5 b/man/nm-settings.5 index 144c9ab9..9f96278c 100644 --- a/man/nm-settings.5 +++ b/man/nm-settings.5 @@ -2,12 +2,12 @@ .\" Title: nm-settings .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 27 August 2015 +.\" Date: 23 November 2015 .\" Manual: Configuration -.\" Source: NetworkManager 1.0.6 +.\" Source: NetworkManager 1.0.7 .\" Language: English .\" -.TH "NM\-SETTINGS" "5" "" "NetworkManager 1\&.0\&.6" "Configuration" +.TH "NM\-SETTINGS" "5" "" "NetworkManager 1\&.0\&.7" "Configuration" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -2729,7 +2729,7 @@ uint32 T}:T{ 1 T}:T{ -The NMSettingWiredWakeOnLan options to enable\&. Not all devices support all options\&. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40)\&. +The NMSettingWiredWakeOnLan options to enable\&. Not all devices support all options\&. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40) or the special values NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (0x1) (to use global settings) and NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (0x8000) (to disable management of Wake\-on\-LAN in NetworkManager)\&. T} T{ wake\-on\-lan\-password diff --git a/man/nm-settings.xml b/man/nm-settings.xml index ae274a0d..b191aa1b 100644 --- a/man/nm-settings.xml +++ b/man/nm-settings.xml @@ -1,6 +1,6 @@ <?xml version="1.0"?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> -<refentry id="nm-settings"><refentryinfo><date>27 August 2015</date></refentryinfo><refmeta><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.0.6</refmiscinfo></refmeta><refnamediv><refname>nm-settings</refname><refpurpose>Description of settings and properties of NetworkManager connection profiles</refpurpose></refnamediv><refsect1><title>DESCRIPTION</title><para> +<refentry id="nm-settings"><refentryinfo><date>23 November 2015</date></refentryinfo><refmeta><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum><refmiscinfo class="source">NetworkManager</refmiscinfo><refmiscinfo class="manual">Configuration</refmiscinfo><refmiscinfo class="version">1.0.7</refmiscinfo></refmeta><refnamediv><refname>nm-settings</refname><refpurpose>Description of settings and properties of NetworkManager connection profiles</refpurpose></refnamediv><refsect1><title>DESCRIPTION</title><para> NetworkManager is based on a concept of connection profiles, sometimes referred to as connections only. These connection profiles contain a network configuration. When NetworkManager activates a connection profile on a network device the configuration will @@ -296,7 +296,7 @@ <row><entry align="left">s390-options</entry><entry align="left">dict of string to string</entry><entry align="left">{}</entry><entry>Dictionary of key/value pairs of s390-specific device options. Both keys and values must be strings. Allowed keys include "portno", "layer2", "portname", "protocol", among others. Key names must contain only alphanumeric characters (ie, [a-zA-Z0-9]).</entry></row> <row><entry align="left">s390-subchannels</entry><entry align="left">array of string</entry><entry align="left">[]</entry><entry>Identifies specific subchannels that this network device uses for communication with z/VM or s390 host. Like the "mac-address" property for non-z/VM devices, this property can be used to ensure this connection only applies to the network device that uses these subchannels. The list should contain exactly 3 strings, and each string may only be composed of hexadecimal characters and the period (.) character.</entry></row> <row><entry align="left">speed</entry><entry align="left">uint32</entry><entry align="left">0</entry><entry>If non-zero, request that the device use only the specified speed. In Mbit/s, ie 100 == 100Mbit/s.</entry></row> - <row><entry align="left">wake-on-lan</entry><entry align="left">uint32</entry><entry align="left">1</entry><entry>The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40).</entry></row> + <row><entry align="left">wake-on-lan</entry><entry align="left">uint32</entry><entry align="left">1</entry><entry>The NMSettingWiredWakeOnLan options to enable. Not all devices support all options. May be any combination of NM_SETTING_WIRED_WAKE_ON_LAN_PHY (0x2), NM_SETTING_WIRED_WAKE_ON_LAN_UNICAST (0x4), NM_SETTING_WIRED_WAKE_ON_LAN_MULTICAST (0x8), NM_SETTING_WIRED_WAKE_ON_LAN_BROADCAST (0x10), NM_SETTING_WIRED_WAKE_ON_LAN_ARP (0x20), NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC (0x40) or the special values NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT (0x1) (to use global settings) and NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE (0x8000) (to disable management of Wake-on-LAN in NetworkManager).</entry></row> <row><entry align="left">wake-on-lan-password</entry><entry align="left">string</entry><entry align="left"/><entry>If specified, the password used with magic-packet-based Wake-on-LAN, represented as an Ethernet MAC address. If NULL, no password will be required.</entry></row> </tbody></tgroup></table> <table><title>802-11-wireless setting</title><tgroup cols="4"><thead><row><entry>Key Name</entry><entry>Value Type</entry><entry>Default Value</entry><entry>Value Description</entry></row></thead><tbody> diff --git a/man/nmcli.1.in b/man/nmcli.1.in index 6df844de..8cd2afac 100644 --- a/man/nmcli.1.in +++ b/man/nmcli.1.in @@ -329,10 +329,10 @@ When no command is given to the \fIconnection\fP object, the default action is 'nmcli connection show'. .RE .TP -.B up [ id | uuid | path ] <ID> [ifname <ifname>] [ap <BSSID>] [nsp <name>] [passwd <file with passwords>] +.B up [ id | uuid | path ] <ID> [ifname <ifname>] [ap <BSSID>] [nsp <name>] [passwd-file <file with passwords>] .RE .RS -.B up ifname <ifname> [ap <BSSID>] [nsp <name>] [passwd <file with passwords>] +.B up ifname <ifname> [ap <BSSID>] [nsp <name>] [passwd-file <file with passwords>] .RS .br Activate a connection. The connection is identified by its name, UUID or D-Bus @@ -619,6 +619,18 @@ to be sent back out through the slave the frame was received on (default: yes) .RE .RS .TP +.B adsl: +.IP "\fIusername <username>\fP" 42 +\(en ADSL user name +.IP "\fIprotocol pppoa|pppoe|ipoatm\fP" 42 +\(en ADSL protocol +.IP "\fI[password <password>]\fP" 42 +\(en ADSL password +.IP "\fI[encapsulation vcmux|llc]\fP" 42 +\(en ADSL encapsulation +.RE +.RS +.TP .B IP_OPTIONS: .IP "\fI[ip4 <IPv4 address>] [gw4 <IPv4 gateway>]\fP" 42 \(en IPv4 addresses diff --git a/po/as.po b/po/as.po index dbe4a16c..34bf813e 100644 --- a/po/as.po +++ b/po/as.po @@ -5343,8 +5343,8 @@ msgstr "" #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rসংযোগ কৰা হৈছে" +msgid "Connecting" +msgstr "সংযোগ কৰা হৈছে" #: ../clients/nm-online.c:149 msgid "" @@ -6831,10 +6831,6 @@ msgstr "মান '%d' বিসà§à¦¤à¦¾à§°à§° বাহিৰ <%d-%d>" msgid "is not a valid MAC address" msgstr "à¦à¦Ÿà¦¾ বৈধ MAC ঠিকনা নহয়" -#: ../libnm-core/nm-setting-cdma.c:165 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "বৈশিষà§à¦Ÿà§à¦¯ ৰিকà§à¦¤'" - #: ../libnm-core/nm-setting-connection.c:740 #: ../libnm-util/nm-setting-connection.c:861 #, c-format diff --git a/po/bn_IN.po b/po/bn_IN.po index 414620d0..e49e1ade 100644 --- a/po/bn_IN.po +++ b/po/bn_IN.po @@ -5472,8 +5472,8 @@ msgstr "" #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rসংযোগ করা হচà§à¦›à§‡" +msgid "Connecting" +msgstr "সংযোগ করা হচà§à¦›à§‡" #: ../clients/nm-online.c:149 msgid "" @@ -6970,10 +6970,6 @@ msgstr "মান '%d' রেঞà§à¦œà§‡à¦° বাইরে <%d-%d>" msgid "is not a valid MAC address" msgstr "à¦à¦•টি বৈধ MAC ঠিকানা নয়" -#: ../libnm-core/nm-setting-cdma.c:164 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "বিশিষà§à¦Ÿà¦¤à¦¾ খালি'" - #: ../libnm-core/nm-setting-connection.c:740 #: ../libnm-util/nm-setting-connection.c:861 #, c-format diff --git a/po/de.po b/po/de.po index eed36080..338d45a4 100644 --- a/po/de.po +++ b/po/de.po @@ -5259,8 +5259,8 @@ msgstr "" #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rWird verbunden" +msgid "Connecting" +msgstr "Wird verbunden" #: ../clients/nm-online.c:149 msgid "" @@ -6693,10 +6693,6 @@ msgstr "Wert »%d« ist außerhalb des Bereichs <%d-%d>" msgid "is not a valid MAC address" msgstr "ist keine gültige MAC-Adresse" -#: ../libnm-core/nm-setting-cdma.c:167 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "Eigenschaft ist leer" - #: ../libnm-core/nm-setting-connection.c:844 #: ../libnm-util/nm-setting-connection.c:861 #, c-format diff --git a/po/el.po b/po/el.po index 88714108..b1842886 100644 --- a/po/el.po +++ b/po/el.po @@ -6043,10 +6043,6 @@ msgstr "η τιμή '%d' είναι εκτός εμβÎλειας <%d-%d>" msgid "is not a valid MAC address" msgstr "δεν είναι μια ÎγκυÏη διεÏθυνση MAC" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "η ιδιότητα είναι κενή" - #: ../libnm-util/nm-setting-connection.c:812 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -6709,8 +6705,8 @@ msgstr "ΣÏστημα" #: ../test/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rΓίνεται σÏνδεση" +msgid "Connecting" +msgstr "Γίνεται σÏνδεση" #: ../test/nm-online.c:148 #| msgid "Time to wait for a connection, in seconds (default is 30)" @@ -7405,7 +7401,7 @@ msgid "Activation failed" msgstr "Αποτυχία ενεÏγοποίησης" #: ../tui/nmtui-connect.c:142 -#| msgid "\rConnecting" +#| msgid "Connecting" msgid "Connecting..." msgstr "Γίνεται σÏνδεση..." @@ -7458,7 +7454,7 @@ msgstr "" "VPN." #: ../tui/nmtui-edit.c:386 ../tui/nmtui-edit.c:402 -#| msgid "\rConnecting" +#| msgid "Connecting" msgid "New Connection" msgstr "ÎÎα σÏνδεση" diff --git a/po/en_GB.po b/po/en_GB.po index f1dea3f9..efd432b2 100644 --- a/po/en_GB.po +++ b/po/en_GB.po @@ -2714,8 +2714,8 @@ msgstr "Bond" #: ../test/nm-online.c:112 #, c-format -msgid "\rConnecting" -msgstr "\rConnecting" +msgid "Connecting" +msgstr "Connecting" #: ../test/nm-online.c:143 msgid "Time to wait for a connection, in seconds (default is 30)" diff --git a/po/es.po b/po/es.po index 1a8b589e..cb47d130 100644 --- a/po/es.po +++ b/po/es.po @@ -5175,7 +5175,7 @@ msgstr "Falta propiedad" #: ../libnm-util/nm-setting-wireless-security.c:833 #: ../libnm-util/nm-setting-wireless-security.c:857 msgid "property is empty" -msgstr "propiedad está vacÃa'" +msgstr "propiedad está vacÃa" #: ../libnm-util/nm-setting-8021x.c:2205 ../libnm-util/nm-setting-8021x.c:2217 #: ../libnm-util/nm-setting-8021x.c:2263 ../libnm-util/nm-setting-8021x.c:2275 @@ -5291,10 +5291,6 @@ msgstr "'%d' no es un valor válido para la propiedad (debe ser <= %d)" msgid "value '%d' is out of range <%d-%d>" msgstr "El valor '%d' está fuera del rango <%d-%d>" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "propiedad está vacÃa'" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5977,7 +5973,7 @@ msgstr "Puente" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" +msgid "Connecting" msgstr "Conectando" #: ../test/nm-online.c:104 diff --git a/po/fr.po b/po/fr.po index add32902..83efa79c 100644 --- a/po/fr.po +++ b/po/fr.po @@ -5346,10 +5346,6 @@ msgstr "" msgid "value '%d' is out of range <%d-%d>" msgstr "La valeur « %d » est hors de portée <%d-%d>" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "la propriété est vide" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -6043,8 +6039,8 @@ msgstr "Pont" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\rConnexion" +msgid "Connecting" +msgstr "Connexion" #: ../test/nm-online.c:104 msgid "" diff --git a/po/gl.po b/po/gl.po index f2a6d89d..f2092913 100644 --- a/po/gl.po +++ b/po/gl.po @@ -2883,8 +2883,8 @@ msgstr "Bridge" #: ../test/nm-online.c:111 #, c-format #| msgid "connecting" -msgid "\rConnecting" -msgstr "\rConectando" +msgid "Connecting" +msgstr "Conectando" #: ../test/nm-online.c:142 msgid "Time to wait for a connection, in seconds (default is 30)" diff --git a/po/gu.po b/po/gu.po index 87b0ff26..47cdab62 100644 --- a/po/gu.po +++ b/po/gu.po @@ -5490,10 +5490,6 @@ msgstr "'%d' ઠàªàª• ગà«àª£àª§àª°à«àª® માટે યોગà«àª¯ કઠmsgid "value '%d' is out of range <%d-%d>" msgstr "કિંમત '%d' ઠસીમા <%d-%d> ની બહાર છે" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "ગà«àª£àª§àª°à«àª® ખાલી છે'" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -6151,8 +6147,8 @@ msgstr "સિસà«àªŸàª®" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\rજોડાઇ રહà«àª¯àª¾ છે" +msgid "Connecting" +msgstr "જોડાઇ રહà«àª¯àª¾ છે" #: ../test/nm-online.c:104 msgid "" diff --git a/po/hi.po b/po/hi.po index 3430d0bf..32d74e44 100644 --- a/po/hi.po +++ b/po/hi.po @@ -5445,8 +5445,8 @@ msgstr "" #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rजà¥à¤¡à¤¼ रहा है" +msgid "Connecting" +msgstr "जà¥à¤¡à¤¼ रहा है" #: ../clients/nm-online.c:149 msgid "" @@ -6940,10 +6940,6 @@ msgstr "मान '%d' परिसर के बाहर है <%d-%d>" msgid "is not a valid MAC address" msgstr "à¤à¤• वैध MAC पता नहीं है" -#: ../libnm-core/nm-setting-cdma.c:164 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "गà¥à¤£ रिकà¥à¤¤ है'" - #: ../libnm-core/nm-setting-connection.c:740 #: ../libnm-util/nm-setting-connection.c:861 #, c-format diff --git a/po/hu.po b/po/hu.po index 00d95bc3..3c6e0e77 100644 --- a/po/hu.po +++ b/po/hu.po @@ -2558,10 +2558,6 @@ msgstr "„%d†érték kÃvül esik a tartományon: <%d-%d>" msgid "'%s' is not a valid interface name" msgstr "a(z) „%s†nem érvényes csatolónév" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "a tulajdonság üres" - #: ../libnm-util/nm-setting-connection.c:697 #, c-format msgid "'%s' is not a valid UUID" @@ -3203,8 +3199,8 @@ msgstr "Bridge" #: ../test/nm-online.c:111 #, c-format -msgid "\rConnecting" -msgstr "\rcsatlakozás" +msgid "Connecting" +msgstr "csatlakozás" #: ../test/nm-online.c:142 msgid "Time to wait for a connection, in seconds (default is 30)" diff --git a/po/id.po b/po/id.po index 67ed28e7..3990b6ef 100644 --- a/po/id.po +++ b/po/id.po @@ -2712,8 +2712,8 @@ msgstr "Bond" #: ../test/nm-online.c:112 #, c-format -msgid "\rConnecting" -msgstr "\rMenyambung" +msgid "Connecting" +msgstr "Menyambung" #: ../test/nm-online.c:143 msgid "Time to wait for a connection, in seconds (default is 30)" diff --git a/po/it.po b/po/it.po index 8ab03540..e8232a1d 100644 --- a/po/it.po +++ b/po/it.po @@ -5,14 +5,12 @@ # Vincenzo Reale <smart2128@baslug.org>, 2011. # Milo Casagrande <milo@ubuntu.com>, 2011, 2012, 2013, 2014, 2015. # -#: ../src/nm-iface-helper.c:307 msgid "" msgstr "" "Project-Id-Version: network-manager\n" -"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" -"product=NetworkManager&keywords=I18N+L10N&component=Translations\n" -"POT-Creation-Date: 2015-02-22 23:29+0000\n" -"PO-Revision-Date: 2015-02-23 09:41+0100\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-11-13 18:30+0100\n" +"PO-Revision-Date: 2015-11-14 15:26+0100\n" "Last-Translator: Milo Casagrande <milo@milo.name>\n" "Language-Team: Italian <tp@lists.linux.it>\n" "Language: it\n" @@ -21,7 +19,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" "X-Launchpad-Export-Date: 2011-10-23 16:25+0000\n" -"X-Generator: Poedit 1.7.4\n" +"X-Generator: Poedit 1.8.6\n" #: ../clients/cli/agent.c:42 #, c-format @@ -109,9 +107,9 @@ msgstr "Errore: inizializzazione agente polkit non riuscita: %s" msgid "nmcli successfully registered as a polkit agent.\n" msgstr "nmcli registrato con successo come agente polkit.\n" -#: ../clients/cli/agent.c:209 ../clients/cli/connections.c:8779 -#: ../clients/cli/connections.c:8805 ../clients/cli/connections.c:8943 -#: ../clients/cli/devices.c:2832 ../clients/cli/general.c:325 +#: ../clients/cli/agent.c:209 ../clients/cli/connections.c:9091 +#: ../clients/cli/connections.c:9117 ../clients/cli/connections.c:9258 +#: ../clients/cli/devices.c:3060 ../clients/cli/general.c:325 #: ../clients/cli/general.c:463 #, c-format msgid "Error: NetworkManager is not running." @@ -120,11 +118,11 @@ msgstr "Errore: NetworkManager non è in esecuzione." #: ../clients/cli/agent.c:245 #, c-format msgid "Error: 'agent' command '%s' is not valid." -msgstr "Errore: comando «agent» «%s» non valido." +msgstr "Errore: comando \"agent\" \"%s\" non valido." #: ../clients/cli/common.c:40 ../clients/cli/common.c:53 #: ../clients/cli/common.c:61 ../clients/cli/common.c:73 -#: ../clients/cli/connections.c:172 ../clients/cli/connections.c:194 +#: ../clients/cli/connections.c:173 ../clients/cli/connections.c:195 msgid "GROUP" msgstr "GRUPPO" @@ -136,7 +134,7 @@ msgstr "INDIRIZZO" #. 1 #. 2 #: ../clients/cli/common.c:42 ../clients/cli/common.c:63 -#: ../clients/cli/connections.c:197 +#: ../clients/cli/connections.c:198 msgid "GATEWAY" msgstr "GATEWAY" @@ -168,7 +166,7 @@ msgstr "OPZIONE" #: ../clients/cli/common.c:378 ../clients/cli/common.c:438 #, c-format msgid "invalid prefix '%s'; <1-%d> allowed" -msgstr "prefisso «%s» non valido; consentito <1-%d>" +msgstr "prefisso \"%s\" non valido; consentito <1-%d>" #: ../clients/cli/common.c:386 #, c-format @@ -181,13 +179,13 @@ msgid "" "the second component of route ('%s') is neither a next hop address nor a " "metric" msgstr "" -"il secondo componente di route («%s») non è né l'indirizzo di un hop " +"il secondo componente di route (\"%s\") non è né l'indirizzo di un hop " "successivo né una metrica" #: ../clients/cli/common.c:459 #, c-format msgid "invalid metric '%s'" -msgstr "metrica «%s» non valida" +msgstr "metrica \"%s\" non valida" #: ../clients/cli/common.c:467 #, c-format @@ -240,7 +238,7 @@ msgstr "connessione in corso (avvio connessioni secondarie)" msgid "connected" msgstr "collegato" -#: ../clients/cli/common.c:516 ../clients/cli/connections.c:538 +#: ../clients/cli/common.c:516 ../clients/cli/connections.c:544 msgid "deactivating" msgstr "disattivazione" @@ -248,291 +246,350 @@ msgstr "disattivazione" msgid "connection failed" msgstr "connessione non riuscita" -#: ../clients/cli/common.c:520 ../clients/cli/connections.c:543 -#: ../clients/cli/connections.c:566 ../clients/cli/connections.c:1705 -#: ../clients/cli/devices.c:878 ../clients/cli/general.c:263 -#: ../clients/cli/general.c:281 ../clients/cli/general.c:411 -#: ../clients/cli/general.c:427 ../clients/cli/settings.c:717 -#: ../clients/cli/settings.c:779 ../clients/cli/settings.c:1072 -#: ../clients/cli/utils.c:1145 ../src/main.c:309 ../src/main.c:337 +#: ../clients/cli/common.c:520 ../clients/cli/common.c:537 +#: ../clients/cli/connections.c:549 ../clients/cli/connections.c:572 +#: ../clients/cli/connections.c:1712 ../clients/cli/devices.c:891 +#: ../clients/cli/devices.c:932 ../clients/cli/devices.c:934 +#: ../clients/cli/general.c:263 ../clients/cli/general.c:281 +#: ../clients/cli/general.c:411 ../clients/cli/general.c:427 +#: ../clients/cli/settings.c:732 ../clients/cli/settings.c:817 +#: ../clients/cli/settings.c:1118 ../clients/cli/settings.c:2839 +#: ../clients/cli/utils.c:1200 ../src/main.c:362 ../src/main.c:412 msgid "unknown" msgstr "sconosciuto" -#: ../clients/cli/common.c:529 +#. "CAPABILITIES" +#: ../clients/cli/common.c:529 ../clients/cli/connections.c:819 +#: ../clients/cli/connections.c:821 ../clients/cli/connections.c:823 +#: ../clients/cli/connections.c:855 ../clients/cli/connections.c:922 +#: ../clients/cli/connections.c:923 ../clients/cli/connections.c:925 +#: ../clients/cli/connections.c:3158 ../clients/cli/connections.c:7239 +#: ../clients/cli/connections.c:7240 ../clients/cli/devices.c:598 +#: ../clients/cli/devices.c:648 ../clients/cli/devices.c:856 +#: ../clients/cli/devices.c:857 ../clients/cli/devices.c:858 +#: ../clients/cli/devices.c:859 ../clients/cli/devices.c:895 +#: ../clients/cli/devices.c:897 ../clients/cli/devices.c:925 +#: ../clients/cli/devices.c:926 ../clients/cli/devices.c:927 +#: ../clients/cli/devices.c:928 ../clients/cli/devices.c:929 +#: ../clients/cli/devices.c:930 ../clients/cli/devices.c:931 +#: ../clients/cli/devices.c:933 ../clients/cli/devices.c:935 +#: ../clients/cli/general.c:421 ../clients/cli/settings.c:2834 +msgid "yes" +msgstr "sì" + +#: ../clients/cli/common.c:531 ../clients/cli/connections.c:819 +#: ../clients/cli/connections.c:821 ../clients/cli/connections.c:823 +#: ../clients/cli/connections.c:922 ../clients/cli/connections.c:923 +#: ../clients/cli/connections.c:925 ../clients/cli/connections.c:3159 +#: ../clients/cli/connections.c:7239 ../clients/cli/connections.c:7240 +#: ../clients/cli/devices.c:598 ../clients/cli/devices.c:648 +#: ../clients/cli/devices.c:856 ../clients/cli/devices.c:857 +#: ../clients/cli/devices.c:858 ../clients/cli/devices.c:859 +#: ../clients/cli/devices.c:895 ../clients/cli/devices.c:897 +#: ../clients/cli/devices.c:925 ../clients/cli/devices.c:926 +#: ../clients/cli/devices.c:927 ../clients/cli/devices.c:928 +#: ../clients/cli/devices.c:929 ../clients/cli/devices.c:930 +#: ../clients/cli/devices.c:931 ../clients/cli/devices.c:933 +#: ../clients/cli/devices.c:935 ../clients/cli/general.c:423 +#: ../clients/cli/settings.c:2836 +msgid "no" +msgstr "no" + +#: ../clients/cli/common.c:533 +msgid "yes (guessed)" +msgstr "sì (ipotizzato)" + +#: ../clients/cli/common.c:535 +msgid "no (guessed)" +msgstr "no (ipotizzato)" + +#: ../clients/cli/common.c:546 msgid "No reason given" msgstr "Nessun motivo specificato" -#: ../clients/cli/common.c:532 ../clients/cli/connections.c:2705 +#: ../clients/cli/common.c:549 ../clients/cli/connections.c:2729 #, c-format msgid "Unknown error" msgstr "Errore sconosciuto" -#: ../clients/cli/common.c:535 +#: ../clients/cli/common.c:552 msgid "Device is now managed" msgstr "Il dispositivo è ora gestito" -#: ../clients/cli/common.c:538 +#: ../clients/cli/common.c:555 msgid "Device is now unmanaged" msgstr "Il dispositivo non è più gestito" -#: ../clients/cli/common.c:541 +#: ../clients/cli/common.c:558 msgid "The device could not be readied for configuration" msgstr "Impossibile preparare il dispositivo per la configurazione" -#: ../clients/cli/common.c:544 +#: ../clients/cli/common.c:561 msgid "" "IP configuration could not be reserved (no available address, timeout, etc.)" msgstr "" "La configurazione IP non può essere riservata (nessun indirizzo disponibile, " "timeout...)" -#: ../clients/cli/common.c:547 +#: ../clients/cli/common.c:564 msgid "The IP configuration is no longer valid" msgstr "La configurazione IP non è più valida" -#: ../clients/cli/common.c:550 +#: ../clients/cli/common.c:567 msgid "Secrets were required, but not provided" msgstr "Erano richiesti dei segreti, ma non ne sono stati forniti" -#: ../clients/cli/common.c:553 +#: ../clients/cli/common.c:570 msgid "802.1X supplicant disconnected" msgstr "Supplicant 802.1X scollegato" -#: ../clients/cli/common.c:556 +#: ../clients/cli/common.c:573 msgid "802.1X supplicant configuration failed" msgstr "Configurazione supplicant 802.1X non riuscita" -#: ../clients/cli/common.c:559 +#: ../clients/cli/common.c:576 msgid "802.1X supplicant failed" msgstr "Supplicant 802.1X non riuscito" -#: ../clients/cli/common.c:562 +#: ../clients/cli/common.c:579 msgid "802.1X supplicant took too long to authenticate" msgstr "L'autenticazione del supplicant 802.1X ha impiegato troppo tempo" -#: ../clients/cli/common.c:565 +#: ../clients/cli/common.c:582 msgid "PPP service failed to start" msgstr "Avvio del servizio PPP non riuscito" -#: ../clients/cli/common.c:568 +#: ../clients/cli/common.c:585 msgid "PPP service disconnected" msgstr "Servizio PPP non connesso" -#: ../clients/cli/common.c:571 +#: ../clients/cli/common.c:588 msgid "PPP failed" msgstr "Errore PPP" -#: ../clients/cli/common.c:574 +#: ../clients/cli/common.c:591 msgid "DHCP client failed to start" msgstr "Avvio del client DHCP non riuscito" -#: ../clients/cli/common.c:577 +#: ../clients/cli/common.c:594 msgid "DHCP client error" msgstr "Errore client DHCP" -#: ../clients/cli/common.c:580 +#: ../clients/cli/common.c:597 msgid "DHCP client failed" msgstr "Client DHCP non riuscito" -#: ../clients/cli/common.c:583 +#: ../clients/cli/common.c:600 msgid "Shared connection service failed to start" msgstr "Avvio del servizio di connessione condivisa non riuscito" -#: ../clients/cli/common.c:586 +#: ../clients/cli/common.c:603 msgid "Shared connection service failed" msgstr "Servizio connessione condivisa non riuscito" -#: ../clients/cli/common.c:589 +#: ../clients/cli/common.c:606 msgid "AutoIP service failed to start" msgstr "Avvio del servizio AutoIP non riuscito" -#: ../clients/cli/common.c:592 +#: ../clients/cli/common.c:609 msgid "AutoIP service error" msgstr "Errore servizio AutoIP" -#: ../clients/cli/common.c:595 +#: ../clients/cli/common.c:612 msgid "AutoIP service failed" msgstr "Servizio AutoIP non riuscito" -#: ../clients/cli/common.c:598 +#: ../clients/cli/common.c:615 msgid "The line is busy" msgstr "La linea è occupata" -#: ../clients/cli/common.c:601 +#: ../clients/cli/common.c:618 msgid "No dial tone" msgstr "Nessun segnale di chiamata" -#: ../clients/cli/common.c:604 +#: ../clients/cli/common.c:621 msgid "No carrier could be established" msgstr "Impossibile stabilire alcuna portante" -#: ../clients/cli/common.c:607 +#: ../clients/cli/common.c:624 msgid "The dialing request timed out" msgstr "La richiesta di selezione è scaduta" -#: ../clients/cli/common.c:610 +#: ../clients/cli/common.c:627 msgid "The dialing attempt failed" msgstr "Il tentativo di selezione non è riuscito" -#: ../clients/cli/common.c:613 +#: ../clients/cli/common.c:630 msgid "Modem initialization failed" msgstr "Inizializzazione modem non riuscita" -#: ../clients/cli/common.c:616 +#: ../clients/cli/common.c:633 msgid "Failed to select the specified APN" msgstr "Selezione dell'APN specificato non riuscita" -#: ../clients/cli/common.c:619 +#: ../clients/cli/common.c:636 msgid "Not searching for networks" msgstr "Nessuna ricerca attiva di reti" -#: ../clients/cli/common.c:622 +#: ../clients/cli/common.c:639 msgid "Network registration denied" msgstr "Registrazione di rete non consentita" -#: ../clients/cli/common.c:625 +#: ../clients/cli/common.c:642 msgid "Network registration timed out" msgstr "Registrazione di rete scaduta" -#: ../clients/cli/common.c:628 +#: ../clients/cli/common.c:645 msgid "Failed to register with the requested network" msgstr "Registrazione con la rete richiesta non riuscita" -#: ../clients/cli/common.c:631 +#: ../clients/cli/common.c:648 msgid "PIN check failed" msgstr "Verifica PIN non riuscita" -#: ../clients/cli/common.c:634 +#: ../clients/cli/common.c:651 msgid "Necessary firmware for the device may be missing" msgstr "" "Il firmware necessario per il dispositivo potrebbe non essere disponibile" -#: ../clients/cli/common.c:637 +#: ../clients/cli/common.c:654 msgid "The device was removed" msgstr "Il dispositivo è stato rimosso" -#: ../clients/cli/common.c:640 +#: ../clients/cli/common.c:657 msgid "NetworkManager went to sleep" msgstr "NetworkManager è entrato in pausa" -#: ../clients/cli/common.c:643 +#: ../clients/cli/common.c:660 msgid "The device's active connection disappeared" msgstr "La connessione attiva del dispositivo è scomparsa" -#: ../clients/cli/common.c:646 +#: ../clients/cli/common.c:663 msgid "Device disconnected by user or client" msgstr "Dispositivo scollegato dall'utente o dal client" -#: ../clients/cli/common.c:649 +#: ../clients/cli/common.c:666 msgid "Carrier/link changed" msgstr "Modifica di portante/collegamento" -#: ../clients/cli/common.c:652 +#: ../clients/cli/common.c:669 msgid "The device's existing connection was assumed" msgstr "Considerata la connessione attiva del dispositivo" -#: ../clients/cli/common.c:655 +#: ../clients/cli/common.c:672 msgid "The supplicant is now available" msgstr "Il supplicant è ora disponibile" -#: ../clients/cli/common.c:658 +#: ../clients/cli/common.c:675 msgid "The modem could not be found" msgstr "Impossibile trovare il modem" -#: ../clients/cli/common.c:661 +#: ../clients/cli/common.c:678 msgid "The Bluetooth connection failed or timed out" msgstr "Il collegamento Bluetooth non è riuscito o è scaduto" -#: ../clients/cli/common.c:664 +#: ../clients/cli/common.c:681 msgid "GSM Modem's SIM card not inserted" msgstr "La scheda SIM non è inserita nel modem GSM" -#: ../clients/cli/common.c:667 +#: ../clients/cli/common.c:684 msgid "GSM Modem's SIM PIN required" msgstr "Richiesto il PIN della SIM del modem GSM" -#: ../clients/cli/common.c:670 +#: ../clients/cli/common.c:687 msgid "GSM Modem's SIM PUK required" msgstr "Richiesto il PUK della SIM del modem GSM" -#: ../clients/cli/common.c:673 +#: ../clients/cli/common.c:690 msgid "GSM Modem's SIM wrong" msgstr "SIM del modem GSM errata" -#: ../clients/cli/common.c:676 +#: ../clients/cli/common.c:693 msgid "InfiniBand device does not support connected mode" msgstr "Il dispositivo InfiniBand non supporta la modalità collegata" -#: ../clients/cli/common.c:679 +#: ../clients/cli/common.c:696 msgid "A dependency of the connection failed" msgstr "Una dipendenza della connessione ha causato un errore" -#: ../clients/cli/common.c:682 +#: ../clients/cli/common.c:699 msgid "A problem with the RFC 2684 Ethernet over ADSL bridge" msgstr "Un problema col bridge RFC 2684 Ethernet su ADSL" -#: ../clients/cli/common.c:685 +#: ../clients/cli/common.c:702 msgid "ModemManager is unavailable" msgstr "ModemManager non è disponibile" -#: ../clients/cli/common.c:688 +#: ../clients/cli/common.c:705 msgid "The Wi-Fi network could not be found" msgstr "Impossibile trovare la rete Wi-Fi" -#: ../clients/cli/common.c:691 +#: ../clients/cli/common.c:708 msgid "A secondary connection of the base connection failed" msgstr "" "Si è verificato un errore in una connessione secondaria di quella di base" -#: ../clients/cli/common.c:694 +#: ../clients/cli/common.c:711 msgid "DCB or FCoE setup failed" msgstr "Setup di DCB o FCoE non riuscito" -#: ../clients/cli/common.c:697 +#: ../clients/cli/common.c:714 msgid "teamd control failed" msgstr "controllo teamd non riuscito" -#: ../clients/cli/common.c:700 +#: ../clients/cli/common.c:717 msgid "Modem failed or no longer available" msgstr "Inizializzazione modem non riuscita o non più disponibile" -#: ../clients/cli/common.c:703 +#: ../clients/cli/common.c:720 msgid "Modem now ready and available" msgstr "Modem pronto e disponibile" -#: ../clients/cli/common.c:706 +#: ../clients/cli/common.c:723 msgid "SIM PIN was incorrect" msgstr "PIN della SIM non corretto" +#: ../clients/cli/common.c:726 +msgid "New connection activation was enqueued" +msgstr "Attivazione nuova connessione accodata" + +#: ../clients/cli/common.c:729 +msgid "The device's parent changed" +msgstr "Il dispositivo genitore è stato modificato" + +#: ../clients/cli/common.c:732 +msgid "The device parent's management changed" +msgstr "La gestione del dispositivo genitore è stata modificata" + #. TRANSLATORS: Unknown reason for a device state change (NMDeviceStateReason) -#: ../clients/cli/common.c:710 ../clients/cli/devices.c:619 -#: ../libnm-glib/nm-device.c:1813 ../libnm/nm-device.c:1635 +#: ../clients/cli/common.c:736 ../clients/cli/devices.c:628 +#: ../libnm-glib/nm-device.c:1813 ../libnm/nm-device.c:1658 msgid "Unknown" msgstr "Sconosciuto" -#: ../clients/cli/common.c:752 +#: ../clients/cli/common.c:778 #, c-format msgid "invalid priority map '%s'" -msgstr "mappa priorità «%s» non valida" +msgstr "mappa priorità \"%s\" non valida" -#: ../clients/cli/common.c:759 ../clients/cli/common.c:765 +#: ../clients/cli/common.c:785 ../clients/cli/common.c:791 #, c-format msgid "priority '%s' is not valid (<0-%ld>)" -msgstr "priorità «%s» non valida (<0-%ld>)" +msgstr "priorità \"%s\" non valida (<0-%ld>)" -#: ../clients/cli/common.c:832 +#: ../clients/cli/common.c:858 #, c-format msgid "'%s' is not a valid team configuration or file name." -msgstr "«%s» non è una configurazione di team o un nome di file valido." +msgstr "\"%s\" non è una configurazione di team o un nome di file valido." -#: ../clients/cli/common.c:933 +#: ../clients/cli/common.c:959 #, c-format msgid "" "Warning: password for '%s' not given in 'passwd-file' and nmcli cannot ask " "without '--ask' option.\n" msgstr "" -"Attenzione: password per «%s» non fornita in «passwd-file» e nmcli non può " -"richiederla senza l'opzione «--ask».\n" +"Attenzione: password per \"%s\" non fornita in \"passwd-file\" e nmcli non " +"può richiederla senza l'opzione \"--ask\".\n" #. define some prompts for connection editor #: ../clients/cli/connections.c:42 @@ -572,20 +629,24 @@ msgstr "Bridge master: " msgid "Connection (name, UUID, or path): " msgstr "Connessione (nome, UUID o percorso): " +#: ../clients/cli/connections.c:53 +msgid "Connection(s) (name, UUID, or path): " +msgstr "Connessioni (nome, UUID o percorso): " + #. 0 -#: ../clients/cli/connections.c:60 ../clients/cli/connections.c:173 -#: ../clients/cli/devices.c:57 ../clients/cli/devices.c:86 -#: ../clients/cli/devices.c:96 ../clients/cli/devices.c:107 -#: ../clients/cli/devices.c:116 ../clients/cli/devices.c:131 -#: ../clients/cli/devices.c:144 ../clients/cli/devices.c:170 -#: ../clients/cli/devices.c:185 ../clients/cli/devices.c:194 -#: ../clients/cli/devices.c:204 +#: ../clients/cli/connections.c:61 ../clients/cli/connections.c:174 +#: ../clients/cli/devices.c:58 ../clients/cli/devices.c:91 +#: ../clients/cli/devices.c:101 ../clients/cli/devices.c:112 +#: ../clients/cli/devices.c:121 ../clients/cli/devices.c:138 +#: ../clients/cli/devices.c:151 ../clients/cli/devices.c:177 +#: ../clients/cli/devices.c:192 ../clients/cli/devices.c:201 +#: ../clients/cli/devices.c:211 msgid "NAME" msgstr "NOME" #. 0 #. 1 -#: ../clients/cli/connections.c:61 ../clients/cli/connections.c:174 +#: ../clients/cli/connections.c:62 ../clients/cli/connections.c:175 msgid "UUID" msgstr "UUID" @@ -593,35 +654,35 @@ msgstr "UUID" #. 0 #. 1 #. 2 -#: ../clients/cli/connections.c:62 ../clients/cli/connections.c:195 -#: ../clients/cli/devices.c:43 ../clients/cli/devices.c:59 -#: ../clients/cli/devices.c:173 +#: ../clients/cli/connections.c:63 ../clients/cli/connections.c:196 +#: ../clients/cli/devices.c:44 ../clients/cli/devices.c:60 +#: ../clients/cli/devices.c:180 msgid "TYPE" msgstr "TIPO" #. 2 -#: ../clients/cli/connections.c:63 +#: ../clients/cli/connections.c:64 msgid "TIMESTAMP" msgstr "TIMESTAMP" #. 3 -#: ../clients/cli/connections.c:64 +#: ../clients/cli/connections.c:65 msgid "TIMESTAMP-REAL" msgstr "TIMESTAMP-REALE" #. 4 -#. 15 -#: ../clients/cli/connections.c:65 ../clients/cli/devices.c:73 +#. 16 +#: ../clients/cli/connections.c:66 ../clients/cli/devices.c:75 msgid "AUTOCONNECT" msgstr "CONN-AUTOMATICA" #. 5 -#: ../clients/cli/connections.c:66 +#: ../clients/cli/connections.c:67 msgid "AUTOCONNECT-PRIORITY" msgstr "PRIORITÀ-CONN-AUTOMATICA" #. 6 -#: ../clients/cli/connections.c:67 +#: ../clients/cli/connections.c:68 msgid "READONLY" msgstr "SOLO LETTURA" @@ -630,17 +691,17 @@ msgstr "SOLO LETTURA" #. 2 #. 15 #. 5 -#: ../clients/cli/connections.c:68 ../clients/cli/connections.c:181 -#: ../clients/cli/devices.c:45 ../clients/cli/devices.c:160 -#: ../clients/cli/devices.c:176 +#: ../clients/cli/connections.c:69 ../clients/cli/connections.c:182 +#: ../clients/cli/devices.c:46 ../clients/cli/devices.c:167 +#: ../clients/cli/devices.c:183 msgid "DBUS-PATH" msgstr "PERCORSO-DBUS" #. 8 #. 13 #. 4 -#: ../clients/cli/connections.c:69 ../clients/cli/devices.c:158 -#: ../clients/cli/devices.c:175 +#: ../clients/cli/connections.c:70 ../clients/cli/devices.c:165 +#: ../clients/cli/devices.c:182 msgid "ACTIVE" msgstr "ATTIVO" @@ -648,124 +709,124 @@ msgstr "ATTIVO" #. 0 #. 12 #. 3 -#: ../clients/cli/connections.c:70 ../clients/cli/devices.c:42 -#: ../clients/cli/devices.c:58 ../clients/cli/devices.c:157 -#: ../clients/cli/devices.c:174 +#: ../clients/cli/connections.c:71 ../clients/cli/devices.c:43 +#: ../clients/cli/devices.c:59 ../clients/cli/devices.c:164 +#: ../clients/cli/devices.c:181 msgid "DEVICE" msgstr "DEVICE" #. 10 #. 3 #. 1 -#. 9 +#. 10 #. 1 -#: ../clients/cli/connections.c:71 ../clients/cli/connections.c:176 -#: ../clients/cli/devices.c:44 ../clients/cli/devices.c:67 +#: ../clients/cli/connections.c:72 ../clients/cli/connections.c:177 +#: ../clients/cli/devices.c:45 ../clients/cli/devices.c:69 #: ../clients/cli/general.c:37 msgid "STATE" msgstr "STATO" #. 11 -#: ../clients/cli/connections.c:72 +#: ../clients/cli/connections.c:73 msgid "ACTIVE-PATH" msgstr "PERCORSO-ATTIVO" #. 2 -#: ../clients/cli/connections.c:175 +#: ../clients/cli/connections.c:176 msgid "DEVICES" msgstr "DISPOSITIVI" #. 4 -#: ../clients/cli/connections.c:177 +#: ../clients/cli/connections.c:178 msgid "DEFAULT" msgstr "PREDEFINITO" #. 5 -#: ../clients/cli/connections.c:178 +#: ../clients/cli/connections.c:179 msgid "DEFAULT6" msgstr "PREDEFINITO6" #. 6 -#: ../clients/cli/connections.c:179 +#: ../clients/cli/connections.c:180 msgid "SPEC-OBJECT" msgstr "SPEC-OGGETTO" #. 7 #. 4 #. Ask for optional 'vpn' arguments. -#: ../clients/cli/connections.c:180 ../clients/cli/connections.c:218 -#: ../clients/cli/connections.c:3816 ../clients/tui/nm-editor-utils.c:234 +#: ../clients/cli/connections.c:181 ../clients/cli/connections.c:219 +#: ../clients/cli/connections.c:3863 ../clients/tui/nm-editor-utils.c:234 #: ../clients/tui/nmt-connect-connection-list.c:406 msgid "VPN" msgstr "VPN" #. 9 #. 5 -#. 19 -#: ../clients/cli/connections.c:182 ../clients/cli/devices.c:48 -#: ../clients/cli/devices.c:77 +#. 21 +#: ../clients/cli/connections.c:183 ../clients/cli/devices.c:49 +#: ../clients/cli/devices.c:80 msgid "CON-PATH" msgstr "PERCORSO-CON" #. 10 -#: ../clients/cli/connections.c:183 +#: ../clients/cli/connections.c:184 msgid "ZONE" msgstr "ZONA" #. 11 -#: ../clients/cli/connections.c:184 +#: ../clients/cli/connections.c:185 msgid "MASTER-PATH" msgstr "PERCORSO-MASTER" #. 1 -#: ../clients/cli/connections.c:196 +#: ../clients/cli/connections.c:197 msgid "USERNAME" msgstr "NOMEUTENTE" #. 3 -#: ../clients/cli/connections.c:198 +#: ../clients/cli/connections.c:199 msgid "BANNER" msgstr "BANNER" #. 4 -#: ../clients/cli/connections.c:199 +#: ../clients/cli/connections.c:200 msgid "VPN-STATE" msgstr "STATO-VPN" #. 5 -#: ../clients/cli/connections.c:200 +#: ../clients/cli/connections.c:201 msgid "CFG" msgstr "CFG" -#: ../clients/cli/connections.c:213 ../clients/cli/devices.c:219 +#: ../clients/cli/connections.c:214 ../clients/cli/devices.c:226 msgid "GENERAL" msgstr "GENERALE" #. 0 #. 6 -#: ../clients/cli/connections.c:214 ../clients/cli/devices.c:226 +#: ../clients/cli/connections.c:215 ../clients/cli/devices.c:233 msgid "IP4" msgstr "IP4" #. 1 #. 7 -#: ../clients/cli/connections.c:215 ../clients/cli/devices.c:227 +#: ../clients/cli/connections.c:216 ../clients/cli/devices.c:234 msgid "DHCP4" msgstr "DHCP4" #. 2 #. 8 -#: ../clients/cli/connections.c:216 ../clients/cli/devices.c:228 +#: ../clients/cli/connections.c:217 ../clients/cli/devices.c:235 msgid "IP6" msgstr "IP6" #. 3 #. 9 -#: ../clients/cli/connections.c:217 ../clients/cli/devices.c:229 +#: ../clients/cli/connections.c:218 ../clients/cli/devices.c:236 msgid "DHCP6" msgstr "DHCP6" -#: ../clients/cli/connections.c:251 +#: ../clients/cli/connections.c:253 #, c-format msgid "" "Usage: nmcli connection { COMMAND | help }\n" @@ -828,7 +889,7 @@ msgstr "" " load <nomefile> [<nomefile>...]\n" "\n" -#: ../clients/cli/connections.c:272 +#: ../clients/cli/connections.c:274 #, c-format msgid "" "Usage: nmcli connection show { ARGUMENTS | help }\n" @@ -870,13 +931,13 @@ msgstr "" "predefinita\n" "vengono visualizzate sia le configurazioni statiche che le connessioni " "attive.\n" -"È possibile filtrare l'output utilizzando l'opzione «--fields». Per " +"È possibile filtrare l'output utilizzando l'opzione \"--fields\". Per " "maggiori\n" "informazioni fare riferimento alla pagina di manuale. Quando viene usata\n" "l'opzione --active, vengono presi in considerazione solo i profili attivi;\n" "l'opzione --show-secrets mostra anche i segreti associati.\n" -#: ../clients/cli/connections.c:293 +#: ../clients/cli/connections.c:295 #, c-format msgid "" "Usage: nmcli connection up { ARGUMENTS | help }\n" @@ -922,7 +983,7 @@ msgstr "" "passwd-file - File con le password richieste per attivare la connessione\n" "\n" -#: ../clients/cli/connections.c:314 +#: ../clients/cli/connections.c:316 #, c-format msgid "" "Usage: nmcli connection down { ARGUMENTS | help }\n" @@ -944,7 +1005,7 @@ msgstr "" "tramite il suo nome, UUID o percorso D-Bus.\n" "\n" -#: ../clients/cli/connections.c:326 +#: ../clients/cli/connections.c:328 #, c-format msgid "" "Usage: nmcli connection add { ARGUMENTS | help }\n" @@ -1042,6 +1103,11 @@ msgid "" " [channel <1-13>]\n" " [dhcp-anycast <MAC address>]\n" "\n" +" adsl: username <username>\n" +" protocol pppoa|pppoe|ipoatm\n" +" [password <password>]\n" +" [encapsulation vcmux|llc]\n" +"\n" " IP_OPTIONS:\n" " [ip4 <IPv4 address>] [gw4 <IPv4 gateway>]\n" " [ip6 <IPv6 address>] [gw6 <IPv6 gateway>]\n" @@ -1112,8 +1178,8 @@ msgstr "" " [miimon <num>]\n" " [downdelay <num>]\n" " [updelay <num>]\n" -" [arp_interval <num>]\n" -" [arp_ip_traget <num>]\n" +" [arp-interval <num>]\n" +" [arp-ip-traget <num>]\n" " [lacp-rate slow (0) | fast (1)]\n" "\n" " bond-slave: master <master (nomeif, UUID connessione o nome)\n" @@ -1145,12 +1211,17 @@ msgstr "" " [channel <1-13>]\n" " [dhcp-anycast <indirizzo MAC>]\n" "\n" +" adsl: username <nomeutente>\n" +" protocol pppoa|pppoe|ipoatm\n" +" [password <password>]\n" +" [encapsulation vcmux|llc]\n" +"\n" " OPZIONI_IP:\n" " [ip4 <indirizzo IPv4>] [gw4 <gateway IPv4>]\n" " [ip6 <indirizzo IPv6>] [gw6 <gateway IPv6>]\n" "\n" -#: ../clients/cli/connections.c:406 +#: ../clients/cli/connections.c:412 #, c-format msgid "" "Usage: nmcli connection modify { ARGUMENTS | help }\n" @@ -1180,10 +1251,11 @@ msgstr "" "\n" "Modifica una o più proprietà del profilo di connessione.\n" "Il profilo è identificato tramite il suo nome, UUID o percorso D-Bus. Per\n" -"proprietà multi-valore, usare il prefisso opzionale «+» o «-» col nome " +"proprietà multi-valore, usare il prefisso opzionale \"+\" o \"-\" col nome " "della\n" -"proprietà . Il simbolo «+» consente di aggiungere elementi invece che\n" -"sovrascriverne il valore; il simbolo «-» consente di rimuovere gli elementi\n" +"proprietà . Il simbolo \"+\" consente di aggiungere elementi invece che\n" +"sovrascriverne il valore; il simbolo \"-\" consente di rimuovere gli " +"elementi\n" "selezionati invece che rimuovere l'intero valore.\n" "\n" "Esempi:\n" @@ -1197,7 +1269,7 @@ msgstr "" "nmcli con mod bond0 -bond.options downdelay\n" "\n" -#: ../clients/cli/connections.c:429 +#: ../clients/cli/connections.c:435 #, c-format msgid "" "Usage: nmcli connection edit { ARGUMENTS | help }\n" @@ -1224,7 +1296,7 @@ msgstr "" "Aggiunge un nuovo profilo di connessione con un editor interattivo.\n" "\n" -#: ../clients/cli/connections.c:444 +#: ../clients/cli/connections.c:450 #, c-format msgid "" "Usage: nmcli connection delete { ARGUMENTS | help }\n" @@ -1243,7 +1315,7 @@ msgstr "" "Il profilo viene identificato tramite il suo nome, UUID o percorso D-Bus.\n" "\n" -#: ../clients/cli/connections.c:455 +#: ../clients/cli/connections.c:461 #, c-format msgid "" "Usage: nmcli connection reload { help }\n" @@ -1256,7 +1328,7 @@ msgstr "" "Ricarica tutti i file della connessione dal disco.\n" "\n" -#: ../clients/cli/connections.c:463 +#: ../clients/cli/connections.c:469 #, c-format msgid "" "Usage: nmcli connection load { ARGUMENTS | help }\n" @@ -1279,142 +1351,110 @@ msgstr "" "NetworkManager consideri le nuove modifiche.\n" "\n" -#: ../clients/cli/connections.c:534 +#: ../clients/cli/connections.c:540 msgid "activating" msgstr "attivazione" -#: ../clients/cli/connections.c:536 +#: ../clients/cli/connections.c:542 msgid "activated" msgstr "attivata" -#: ../clients/cli/connections.c:540 +#: ../clients/cli/connections.c:546 msgid "deactivated" msgstr "disattivata" -#: ../clients/cli/connections.c:552 +#: ../clients/cli/connections.c:558 msgid "VPN connecting (prepare)" msgstr "Connessione VPN (preparazione)" -#: ../clients/cli/connections.c:554 +#: ../clients/cli/connections.c:560 msgid "VPN connecting (need authentication)" msgstr "Connessione VPN (autenticazione necessaria)" -#: ../clients/cli/connections.c:556 +#: ../clients/cli/connections.c:562 msgid "VPN connecting" msgstr "Connessione VPN" -#: ../clients/cli/connections.c:558 +#: ../clients/cli/connections.c:564 msgid "VPN connecting (getting IP configuration)" msgstr "Connessione VPN (acquisizione configurazione IP)" -#: ../clients/cli/connections.c:560 +#: ../clients/cli/connections.c:566 msgid "VPN connected" msgstr "Connessi alla VPN" -#: ../clients/cli/connections.c:562 +#: ../clients/cli/connections.c:568 msgid "VPN connection failed" msgstr "Connessione VPN non riuscita" -#: ../clients/cli/connections.c:564 +#: ../clients/cli/connections.c:570 msgid "VPN disconnected" msgstr "Disconnessi dalla VPN" -#: ../clients/cli/connections.c:634 +#: ../clients/cli/connections.c:640 #, c-format msgid "Error updating secrets for %s: %s\n" msgstr "Errore nell'aggiornare i segreti per %s: %s\n" -#: ../clients/cli/connections.c:654 +#: ../clients/cli/connections.c:660 msgid "Connection profile details" msgstr "Dettagli profilo connessione" -#: ../clients/cli/connections.c:666 ../clients/cli/connections.c:1075 +#: ../clients/cli/connections.c:672 ../clients/cli/connections.c:1081 #, c-format msgid "Error: 'connection show': %s" -msgstr "Errore: «connection show»: %s" +msgstr "Errore: \"connection show\": %s" -#: ../clients/cli/connections.c:812 +#: ../clients/cli/connections.c:818 msgid "never" msgstr "mai" -#. "CAPABILITIES" -#: ../clients/cli/connections.c:813 ../clients/cli/connections.c:815 -#: ../clients/cli/connections.c:817 ../clients/cli/connections.c:849 -#: ../clients/cli/connections.c:916 ../clients/cli/connections.c:917 -#: ../clients/cli/connections.c:919 ../clients/cli/connections.c:3111 -#: ../clients/cli/connections.c:6949 ../clients/cli/connections.c:6950 -#: ../clients/cli/devices.c:589 ../clients/cli/devices.c:639 -#: ../clients/cli/devices.c:846 ../clients/cli/devices.c:847 -#: ../clients/cli/devices.c:848 ../clients/cli/devices.c:849 -#: ../clients/cli/devices.c:882 ../clients/cli/devices.c:884 -#: ../clients/cli/devices.c:912 ../clients/cli/devices.c:913 -#: ../clients/cli/devices.c:914 ../clients/cli/devices.c:915 -#: ../clients/cli/devices.c:916 ../clients/cli/devices.c:917 -#: ../clients/cli/devices.c:918 ../clients/cli/general.c:421 -msgid "yes" -msgstr "sì" - -#: ../clients/cli/connections.c:813 ../clients/cli/connections.c:815 -#: ../clients/cli/connections.c:817 ../clients/cli/connections.c:916 -#: ../clients/cli/connections.c:917 ../clients/cli/connections.c:919 -#: ../clients/cli/connections.c:3112 ../clients/cli/connections.c:6949 -#: ../clients/cli/connections.c:6950 ../clients/cli/devices.c:589 -#: ../clients/cli/devices.c:639 ../clients/cli/devices.c:846 -#: ../clients/cli/devices.c:847 ../clients/cli/devices.c:848 -#: ../clients/cli/devices.c:849 ../clients/cli/devices.c:882 -#: ../clients/cli/devices.c:884 ../clients/cli/devices.c:912 -#: ../clients/cli/devices.c:913 ../clients/cli/devices.c:914 -#: ../clients/cli/devices.c:915 ../clients/cli/devices.c:916 -#: ../clients/cli/devices.c:917 ../clients/cli/devices.c:918 -#: ../clients/cli/general.c:423 -msgid "no" -msgstr "no" - -#: ../clients/cli/connections.c:1063 +#: ../clients/cli/connections.c:1069 msgid "Activate connection details" msgstr "Attiva dettagli connessione" -#: ../clients/cli/connections.c:1299 +#: ../clients/cli/connections.c:1305 #, c-format msgid "invalid field '%s'; allowed fields: %s and %s, or %s,%s" -msgstr "campo «%s» non valido; campi consentiti: %s e %s oppure %s,%s" +msgstr "campo \"%s\" non valido; campi consentiti: %s e %s oppure %s,%s" -#: ../clients/cli/connections.c:1314 ../clients/cli/connections.c:1322 +#: ../clients/cli/connections.c:1320 ../clients/cli/connections.c:1328 #, c-format msgid "'%s' has to be alone" -msgstr "«%s» deve essere isolato" +msgstr "\"%s\" deve essere isolato" #. Add headers -#: ../clients/cli/connections.c:1377 +#: ../clients/cli/connections.c:1383 msgid "NetworkManager active profiles" msgstr "Profili NetworkManager attivi" -#: ../clients/cli/connections.c:1378 +#: ../clients/cli/connections.c:1384 msgid "NetworkManager connection profiles" msgstr "Profili connessione NetworkManager" -#: ../clients/cli/connections.c:1418 ../clients/cli/connections.c:2145 -#: ../clients/cli/connections.c:2167 ../clients/cli/connections.c:2176 -#: ../clients/cli/connections.c:2186 ../clients/cli/connections.c:2196 -#: ../clients/cli/connections.c:2346 ../clients/cli/connections.c:8499 -#: ../clients/cli/connections.c:8716 ../clients/cli/devices.c:1909 -#: ../clients/cli/devices.c:1917 ../clients/cli/devices.c:2233 -#: ../clients/cli/devices.c:2240 ../clients/cli/devices.c:2254 -#: ../clients/cli/devices.c:2261 ../clients/cli/devices.c:2278 -#: ../clients/cli/devices.c:2286 ../clients/cli/devices.c:2474 -#: ../clients/cli/devices.c:2570 ../clients/cli/devices.c:2577 +#: ../clients/cli/connections.c:1424 ../clients/cli/connections.c:2152 +#: ../clients/cli/connections.c:2174 ../clients/cli/connections.c:2183 +#: ../clients/cli/connections.c:2193 ../clients/cli/connections.c:2203 +#: ../clients/cli/connections.c:2365 ../clients/cli/connections.c:8815 +#: ../clients/cli/connections.c:9020 ../clients/cli/devices.c:2028 +#: ../clients/cli/devices.c:2036 ../clients/cli/devices.c:2359 +#: ../clients/cli/devices.c:2366 ../clients/cli/devices.c:2380 +#: ../clients/cli/devices.c:2387 ../clients/cli/devices.c:2404 +#: ../clients/cli/devices.c:2412 ../clients/cli/devices.c:2425 +#: ../clients/cli/devices.c:2669 ../clients/cli/devices.c:2676 +#: ../clients/cli/devices.c:2795 ../clients/cli/devices.c:2802 #, c-format msgid "Error: %s argument is missing." msgstr "Errore: manca l'argomento %s." -#: ../clients/cli/connections.c:1433 +#: ../clients/cli/connections.c:1439 #, c-format msgid "Error: %s - no such connection profile." msgstr "Errore: %s - profilo di connessione inesistente." -#: ../clients/cli/connections.c:1492 ../clients/cli/connections.c:2219 -#: ../clients/cli/connections.c:9016 ../clients/cli/devices.c:2453 -#: ../clients/cli/devices.c:2921 ../clients/cli/general.c:518 +#: ../clients/cli/connections.c:1498 ../clients/cli/connections.c:2226 +#: ../clients/cli/connections.c:9331 ../clients/cli/devices.c:2636 +#: ../clients/cli/devices.c:3149 ../clients/cli/general.c:518 #: ../clients/cli/general.c:567 ../clients/cli/general.c:584 #: ../clients/cli/general.c:623 ../clients/cli/general.c:637 #: ../clients/cli/general.c:755 ../clients/cli/general.c:802 @@ -1423,80 +1463,80 @@ msgstr "Errore: %s - profilo di connessione inesistente." msgid "Error: %s." msgstr "Errore: %s." -#: ../clients/cli/connections.c:1587 +#: ../clients/cli/connections.c:1594 #, c-format msgid "no active connection on device '%s'" -msgstr "nessuna connessione attiva sul dispositivo «%s»" +msgstr "nessuna connessione attiva sul dispositivo \"%s\"" -#: ../clients/cli/connections.c:1595 +#: ../clients/cli/connections.c:1602 msgid "no active connection or device" msgstr "nessuna connessione o dispositivo attivo" -#: ../clients/cli/connections.c:1666 +#: ../clients/cli/connections.c:1673 #, c-format msgid "device '%s' not compatible with connection '%s'" -msgstr "dispositivo «%s» non compatibile con la connessione «%s»" +msgstr "dispositivo \"%s\" non compatibile con la connessione \"%s\"" -#: ../clients/cli/connections.c:1669 +#: ../clients/cli/connections.c:1676 #, c-format msgid "no device found for connection '%s'" -msgstr "nessun dispositivo trovato per la connessione «%s»" +msgstr "nessun dispositivo trovato per la connessione \"%s\"" -#: ../clients/cli/connections.c:1681 +#: ../clients/cli/connections.c:1688 msgid "unknown reason" msgstr "motivo sconosciuto" -#: ../clients/cli/connections.c:1683 ../clients/cli/general.c:272 +#: ../clients/cli/connections.c:1690 ../clients/cli/general.c:272 msgid "none" msgstr "nessuno" -#: ../clients/cli/connections.c:1685 +#: ../clients/cli/connections.c:1692 msgid "the user was disconnected" msgstr "l'utente è stato scollegato" -#: ../clients/cli/connections.c:1687 +#: ../clients/cli/connections.c:1694 msgid "the base network connection was interrupted" msgstr "la connessione di rete di base è stata interrotta" -#: ../clients/cli/connections.c:1689 +#: ../clients/cli/connections.c:1696 msgid "the VPN service stopped unexpectedly" msgstr "il servizio VPN si è arrestato inaspettatamente" -#: ../clients/cli/connections.c:1691 +#: ../clients/cli/connections.c:1698 msgid "the VPN service returned invalid configuration" msgstr "il servizio VPN ha restituito una configurazione non valida" -#: ../clients/cli/connections.c:1693 +#: ../clients/cli/connections.c:1700 msgid "the connection attempt timed out" msgstr "il tentativo di connessione è scaduto" -#: ../clients/cli/connections.c:1695 +#: ../clients/cli/connections.c:1702 msgid "the VPN service did not start in time" msgstr "il servizio VPN non è stato avviato in tempo" -#: ../clients/cli/connections.c:1697 +#: ../clients/cli/connections.c:1704 msgid "the VPN service failed to start" msgstr "l'avvio del servizio VPN non è riuscito" -#: ../clients/cli/connections.c:1699 +#: ../clients/cli/connections.c:1706 msgid "no valid VPN secrets" msgstr "nessun segreto VPN valido" -#: ../clients/cli/connections.c:1701 +#: ../clients/cli/connections.c:1708 msgid "invalid VPN secrets" msgstr "segreti VPN non validi" -#: ../clients/cli/connections.c:1703 +#: ../clients/cli/connections.c:1710 msgid "the connection was removed" msgstr "la connessione è stata rimossa" -#: ../clients/cli/connections.c:1725 ../clients/cli/connections.c:1753 -#: ../clients/cli/connections.c:1914 ../clients/cli/connections.c:6840 +#: ../clients/cli/connections.c:1732 ../clients/cli/connections.c:1760 +#: ../clients/cli/connections.c:1921 ../clients/cli/connections.c:7130 #, c-format msgid "Connection successfully activated (D-Bus active path: %s)\n" msgstr "Connessione attivata con successo (percorso D-Bus attivo: %s)\n" -#: ../clients/cli/connections.c:1732 +#: ../clients/cli/connections.c:1739 #, c-format msgid "" "Connection successfully activated (master waiting for slaves) (D-Bus active " @@ -1505,181 +1545,194 @@ msgstr "" "Connessione attivata con successo (master in attesa di slave) (percorso D-" "Bus attivo: %s)\n" -#: ../clients/cli/connections.c:1736 ../clients/cli/connections.c:1758 +#: ../clients/cli/connections.c:1743 ../clients/cli/connections.c:1765 #, c-format msgid "Error: Connection activation failed." msgstr "Errore: attivazione connessione non riuscita." -#: ../clients/cli/connections.c:1809 +#: ../clients/cli/connections.c:1816 #, c-format msgid "VPN connection successfully activated (D-Bus active path: %s)\n" msgstr "Connessione VPN attivata con successo (percorso D-Bus attivo: %s)\n" -#: ../clients/cli/connections.c:1817 +#: ../clients/cli/connections.c:1824 #, c-format msgid "Error: Connection activation failed: %s." msgstr "Errore: attivazione connessione non riuscita: %s." -#: ../clients/cli/connections.c:1836 ../clients/cli/devices.c:1322 +#: ../clients/cli/connections.c:1843 ../clients/cli/devices.c:1339 #, c-format msgid "Error: Timeout %d sec expired." msgstr "Errore: timeout, sono trascorsi %d secondi." -#: ../clients/cli/connections.c:1896 +#: ../clients/cli/connections.c:1903 #, c-format msgid "Error: Connection activation failed: %s" msgstr "Errore: attivazione connessione non riuscita: %s" -#: ../clients/cli/connections.c:1981 +#: ../clients/cli/connections.c:1988 #, c-format msgid "failed to read passwd-file '%s': %s" -msgstr "Lettura del passwd-file «%s» non riuscita: %s" +msgstr "Lettura del passwd-file \"%s\" non riuscita: %s" -#: ../clients/cli/connections.c:1993 +#: ../clients/cli/connections.c:2000 #, c-format msgid "missing colon in 'password' entry '%s'" -msgstr "mancano i due punti nella voce «password» «%s»" +msgstr "mancano i due punti nella voce \"password\" \"%s\"" -#: ../clients/cli/connections.c:2001 +#: ../clients/cli/connections.c:2008 #, c-format msgid "missing dot in 'password' entry '%s'" -msgstr "manca il punto nella voce «password» «%s»" +msgstr "manca il punto nella voce \"password\" \"%s\"" -#: ../clients/cli/connections.c:2014 +#: ../clients/cli/connections.c:2021 #, c-format msgid "invalid setting name in 'password' entry '%s'" -msgstr "nome impostazione non valido nelle voce «password» «%s»" +msgstr "nome impostazione non valido nelle voce \"password\" \"%s\"" -#: ../clients/cli/connections.c:2061 ../clients/cli/connections.c:2220 +#: ../clients/cli/connections.c:2068 ../clients/cli/connections.c:2227 msgid "unknown error" msgstr "errore sconosciuto" -#: ../clients/cli/connections.c:2070 +#: ../clients/cli/connections.c:2077 #, c-format msgid "unknown device '%s'." -msgstr "dispositivo «%s» sconosciuto." +msgstr "dispositivo \"%s\" sconosciuto." -#: ../clients/cli/connections.c:2075 +#: ../clients/cli/connections.c:2082 msgid "neither a valid connection nor device given" msgstr "non sono stati forniti un dispositivo e una connessione validi" -#: ../clients/cli/connections.c:2158 +#: ../clients/cli/connections.c:2165 #, c-format msgid "Error: Connection '%s' does not exist." -msgstr "Errore: la connessione «%s» non esiste." +msgstr "Errore: la connessione \"%s\" non esiste." -#: ../clients/cli/connections.c:2204 ../clients/cli/devices.c:1221 -#: ../clients/cli/devices.c:1923 ../clients/cli/devices.c:2297 -#: ../clients/cli/devices.c:2583 +#: ../clients/cli/connections.c:2211 ../clients/cli/devices.c:1238 +#: ../clients/cli/devices.c:2042 ../clients/cli/devices.c:2436 +#: ../clients/cli/devices.c:2682 ../clients/cli/devices.c:2808 #, c-format msgid "Unknown parameter: %s\n" msgstr "Parametro sconosciuto: %s\n" -#: ../clients/cli/connections.c:2228 +#: ../clients/cli/connections.c:2235 msgid "preparing" msgstr "preparazione" -#: ../clients/cli/connections.c:2267 +#: ../clients/cli/connections.c:2259 +#, c-format +msgid "Connection '%s' (%s) successfully deleted.\n" +msgstr "Connessione \"%s\" (%s) eliminata con successo.\n" + +#: ../clients/cli/connections.c:2275 #, c-format msgid "Connection '%s' successfully deactivated (D-Bus active path: %s)\n" msgstr "" -"Connessione «%s» disattivata con successo (percorso D-Bus attivo: %s)\n" +"Connessione \"%s\" disattivata con successo (percorso D-Bus attivo: %s)\n" -#: ../clients/cli/connections.c:2325 ../clients/cli/connections.c:8697 -#: ../clients/cli/connections.c:8811 +#: ../clients/cli/connections.c:2347 ../clients/cli/connections.c:9006 +#: ../clients/cli/connections.c:9123 #, c-format msgid "Error: No connection specified." msgstr "Errore: nessuna connessione specificata." -#: ../clients/cli/connections.c:2356 +#: ../clients/cli/connections.c:2379 #, c-format msgid "Error: '%s' is not an active connection.\n" -msgstr "Errore: «%s» non è una connessione attiva.\n" +msgstr "Errore: \"%s\" non è una connessione attiva.\n" -#: ../clients/cli/connections.c:2357 +#: ../clients/cli/connections.c:2380 ../clients/cli/connections.c:9035 #, c-format msgid "Error: not all active connections found." msgstr "Errore: non tutte le connessioni attive sono state trovate." -#: ../clients/cli/connections.c:2366 +#: ../clients/cli/connections.c:2389 #, c-format msgid "Error: no active connection provided." msgstr "Errore: nessuna connessione attiva fornita." -#: ../clients/cli/connections.c:2684 ../clients/cli/utils.c:516 +#: ../clients/cli/connections.c:2708 ../clients/cli/utils.c:569 #, c-format msgid "'%s' not among [%s]" -msgstr "«%s» non tra [%s]" +msgstr "\"%s\" non tra [%s]" -#: ../clients/cli/connections.c:2763 +#: ../clients/cli/connections.c:2787 #, c-format msgid "Error: '%s': '%s' is not a valid %s MAC address." -msgstr "Errore: «%s»: «%s» non è un indirizzo MAC %s valido." +msgstr "Errore: \"%s\": \"%s\" non è un indirizzo MAC %s valido." #. Ask for optional arguments -#: ../clients/cli/connections.c:2764 ../clients/cli/connections.c:3226 -#: ../clients/tui/nm-editor-utils.c:164 ../libnm-core/nm-connection.c:1573 -#: ../libnm-glib/nm-device.c:1801 ../libnm/nm-device.c:1623 +#: ../clients/cli/connections.c:2788 ../clients/cli/connections.c:3273 +#: ../clients/tui/nm-editor-utils.c:164 ../libnm-core/nm-connection.c:1614 +#: ../libnm-glib/nm-device.c:1801 ../libnm/nm-device.c:1646 msgid "InfiniBand" msgstr "InfiniBand" -#: ../clients/cli/connections.c:2764 ../clients/tui/nm-editor-utils.c:147 -#: ../libnm-glib/nm-device.c:1789 ../libnm/nm-device.c:1611 +#: ../clients/cli/connections.c:2788 ../clients/tui/nm-editor-utils.c:147 +#: ../libnm-glib/nm-device.c:1789 ../libnm/nm-device.c:1634 msgid "Ethernet" msgstr "Ethernet" -#: ../clients/cli/connections.c:2784 +#: ../clients/cli/connections.c:2808 #, c-format msgid "Error: 'mtu': '%s' is not a valid MTU." -msgstr "Errore: «mtu»: «%s» non è un MTU valido." +msgstr "Errore: \"mtu\": \"%s\" non è un MTU valido." -#: ../clients/cli/connections.c:2800 +#: ../clients/cli/connections.c:2824 #, c-format msgid "Error: 'parent': '%s' is not a valid interface name." -msgstr "Errore: «parent»: «%s» non è un'interfaccia valida." +msgstr "Errore: \"parent\": \"%s\" non è un'interfaccia valida." -#: ../clients/cli/connections.c:2821 +#: ../clients/cli/connections.c:2845 #, c-format msgid "Error: 'p-key': '%s' is not a valid InfiniBand P_KEY." -msgstr "Errore: «p-key»: «%s» non è un P_KEY InfiniBand valido." +msgstr "Errore: \"p-key\": \"%s\" non è un P_KEY InfiniBand valido." -#: ../clients/cli/connections.c:2866 +#: ../clients/cli/connections.c:2890 #, c-format msgid "Error: '%s': '%s' is not a valid %s %s." -msgstr "Errore: «%s»: «%s» non è «%s» valido %s." +msgstr "Errore: \"%s\": \"%s\" non è \"%s\" valido %s." -#: ../clients/cli/connections.c:2879 +#: ../clients/cli/connections.c:2903 msgid "Wi-Fi mode" msgstr "Modalità Wi-Fi" -#: ../clients/cli/connections.c:2888 +#: ../clients/cli/connections.c:2912 msgid "InfiniBand transport mode" msgstr "Modalità trasporto InfiniBand" -#: ../clients/cli/connections.c:2901 +#: ../clients/cli/connections.c:2924 +msgid "ADSL protocol" +msgstr "Protocollo ADSL" + +#: ../clients/cli/connections.c:2935 +msgid "ADSL encapsulation" +msgstr "Incapsulamento DSL" + +#: ../clients/cli/connections.c:2948 #, c-format msgid "Error: 'flags': '%s' is not valid; use <0-7>." -msgstr "Errore: «flags»: «%s» non è valido; usare <0-7>." +msgstr "Errore: \"flags\": \"%s\" non è valido; usare <0-7>." -#: ../clients/cli/connections.c:2923 +#: ../clients/cli/connections.c:2970 #, c-format msgid "Error: '%s': '%s' is not valid; %s " -msgstr "Errore: «%s»: «%s» non è valido; %s " +msgstr "Errore: \"%s\": \"%s\" non è valido; %s " -#: ../clients/cli/connections.c:3102 +#: ../clients/cli/connections.c:3149 #, c-format msgid "Error: '%s': '%s' is not valid; use <%u-%u>." -msgstr "Errore: «%s»: «%s» non è valido; usare <%u-%u>." +msgstr "Errore: \"%s\": \"%s\" non è valido; usare <%u-%u>." #. Ask for optional arguments. -#: ../clients/cli/connections.c:3158 +#: ../clients/cli/connections.c:3205 #, c-format msgid "There is %d optional argument for '%s' connection type.\n" msgid_plural "There are %d optional arguments for '%s' connection type.\n" -msgstr[0] "C'è %d argomento opzionale per il tipo di connessione «%s».\n" -msgstr[1] "Ci sono %d argomenti opzionali per il tipo di connessione «%s».\n" +msgstr[0] "C'è %d argomento opzionale per il tipo di connessione \"%s\".\n" +msgstr[1] "Ci sono %d argomenti opzionali per il tipo di connessione \"%s\".\n" -#: ../clients/cli/connections.c:3161 +#: ../clients/cli/connections.c:3208 #, c-format msgid "Do you want to provide it? %s" msgid_plural "Do you want to provide them? %s" @@ -1687,584 +1740,617 @@ msgstr[0] "Fornirlo ora?" msgstr[1] "Fornirli ora? %s" #. Ask for optional arguments -#: ../clients/cli/connections.c:3178 +#: ../clients/cli/connections.c:3225 msgid "ethernet" msgstr "ethernet" -#: ../clients/cli/connections.c:3183 ../clients/cli/connections.c:3231 -#: ../clients/cli/connections.c:3365 ../clients/cli/connections.c:3444 +#: ../clients/cli/connections.c:3230 ../clients/cli/connections.c:3278 +#: ../clients/cli/connections.c:3412 ../clients/cli/connections.c:3491 msgid "MTU [auto]: " msgstr "MTU [auto]: " -#: ../clients/cli/connections.c:3194 ../clients/cli/connections.c:3242 -#: ../clients/cli/connections.c:3337 ../clients/cli/connections.c:3376 -#: ../clients/cli/connections.c:3748 +#: ../clients/cli/connections.c:3241 ../clients/cli/connections.c:3289 +#: ../clients/cli/connections.c:3384 ../clients/cli/connections.c:3423 +#: ../clients/cli/connections.c:3795 msgid "MAC [none]: " msgstr "MAC [nessuno]: " -#: ../clients/cli/connections.c:3205 +#: ../clients/cli/connections.c:3252 msgid "Cloned MAC [none]: " msgstr "MAC clonato [nessuno]: " -#: ../clients/cli/connections.c:3253 +#: ../clients/cli/connections.c:3300 #, c-format msgid "Transport mode %s" msgstr "Modalità trasporto %s" -#: ../clients/cli/connections.c:3266 +#: ../clients/cli/connections.c:3313 msgid "Parent interface [none]: " msgstr "Interfaccia genitore [nessuna]: " -#: ../clients/cli/connections.c:3277 +#: ../clients/cli/connections.c:3324 msgid "P_KEY [none]: " msgstr "P_KEY [nessuno]: " -#: ../clients/cli/connections.c:3287 +#: ../clients/cli/connections.c:3334 #, c-format msgid "Error: 'p-key' is mandatory when 'parent' is specified.\n" -msgstr "Errore: «p-key» è obbligatorio quanto «parent» è specificato.\n" +msgstr "Errore: \"p-key\" è obbligatorio quando \"parent\" è specificato.\n" #. Ask for optional arguments -#: ../clients/cli/connections.c:3304 ../clients/tui/nm-editor-utils.c:155 -#: ../libnm-glib/nm-device.c:1791 ../libnm/nm-device.c:1613 +#: ../clients/cli/connections.c:3351 ../clients/tui/nm-editor-utils.c:155 +#: ../libnm-glib/nm-device.c:1791 ../libnm/nm-device.c:1636 msgid "Wi-Fi" msgstr "Wi-Fi" -#: ../clients/cli/connections.c:3312 +#: ../clients/cli/connections.c:3359 #, c-format msgid "Mode %s" msgstr "Modalità %s" #. Ask for optional 'wimax' arguments. -#: ../clients/cli/connections.c:3332 ../libnm-glib/nm-device.c:1797 -#: ../libnm/nm-device.c:1619 +#: ../clients/cli/connections.c:3379 ../libnm-glib/nm-device.c:1797 +#: ../libnm/nm-device.c:1642 msgid "WiMAX" msgstr "WiMAX" #. Ask for optional 'pppoe' arguments. -#: ../clients/cli/connections.c:3355 +#: ../clients/cli/connections.c:3402 msgid "PPPoE" msgstr "PPPoE" -#: ../clients/cli/connections.c:3359 ../clients/cli/connections.c:3397 +#: ../clients/cli/connections.c:3406 ../clients/cli/connections.c:3444 +#: ../clients/cli/connections.c:3917 msgid "Password [none]: " msgstr "Password [nessuna]: " -#: ../clients/cli/connections.c:3361 +#: ../clients/cli/connections.c:3408 msgid "Service [none]: " msgstr "Servizio [nessuno]: " #. Ask for optional 'gsm' or 'cdma' arguments. -#: ../clients/cli/connections.c:3391 +#: ../clients/cli/connections.c:3438 msgid "mobile broadband" msgstr "banda larga mobile" -#: ../clients/cli/connections.c:3395 ../clients/cli/connections.c:3820 +#: ../clients/cli/connections.c:3442 ../clients/cli/connections.c:3867 msgid "Username [none]: " msgstr "Nome utente [nessuno]: " #. Ask for optional 'bluetooth' arguments. -#: ../clients/cli/connections.c:3410 +#: ../clients/cli/connections.c:3457 msgid "bluetooth" msgstr "bluetooth" -#: ../clients/cli/connections.c:3417 +#: ../clients/cli/connections.c:3464 #, c-format msgid "Bluetooth type %s" msgstr "Bluetooth tipo %s" -#: ../clients/cli/connections.c:3423 +#: ../clients/cli/connections.c:3470 #, c-format msgid "Error: 'bt-type': '%s' is not a valid bluetooth type.\n" -msgstr "Errore: «bt-type»: «%s» non è una tipologia di Bluetooth valida.\n" +msgstr "Errore: \"bt-type\": \"%s\" non è una tipologia di Bluetooth valida.\n" #. Ask for optional 'vlan' arguments. #. 13 -#: ../clients/cli/connections.c:3439 ../clients/cli/devices.c:233 +#: ../clients/cli/connections.c:3486 ../clients/cli/devices.c:240 #: ../clients/tui/nm-editor-utils.c:218 ../clients/tui/nmt-page-vlan.c:97 -#: ../libnm-core/nm-connection.c:1571 ../libnm-glib/nm-device.c:1809 -#: ../libnm-util/nm-connection.c:1614 ../libnm/nm-device.c:1631 +#: ../libnm-core/nm-connection.c:1612 ../libnm-glib/nm-device.c:1809 +#: ../libnm-util/nm-connection.c:1614 ../libnm/nm-device.c:1654 msgid "VLAN" msgstr "VLAN" -#: ../clients/cli/connections.c:3455 +#: ../clients/cli/connections.c:3502 msgid "VLAN flags (<0-7>) [none]: " msgstr "Flag VLAN (<0-7>) [nessuno]: " -#: ../clients/cli/connections.c:3466 +#: ../clients/cli/connections.c:3513 msgid "Ingress priority maps [none]: " msgstr "Mappe priorità ingress [nessuna]: " -#: ../clients/cli/connections.c:3477 +#: ../clients/cli/connections.c:3524 msgid "Egress priority maps [none]: " msgstr "Mappe priorità egress [nessuna]: " -#: ../clients/cli/connections.c:3488 +#: ../clients/cli/connections.c:3535 msgid "Bonding mode [balance-rr]: " msgstr "Modalità di aggregazione [balance-rr]: " #. Ask for optional 'bond' arguments. -#: ../clients/cli/connections.c:3504 +#: ../clients/cli/connections.c:3551 msgid "bond" msgstr "bond" -#: ../clients/cli/connections.c:3526 +#: ../clients/cli/connections.c:3573 msgid "Bonding primary interface [none]: " msgstr "Interfaccia principale di aggregazione [nessuna]: " -#: ../clients/cli/connections.c:3529 +#: ../clients/cli/connections.c:3576 #, c-format msgid "Error: 'primary': '%s' is not a valid interface name.\n" -msgstr "Errore: «primary»: «%s» non è un nome d'interfaccia valido.\n" +msgstr "Errore: \"primary\": \"%s\" non è un nome d'interfaccia valido.\n" -#: ../clients/cli/connections.c:3537 +#: ../clients/cli/connections.c:3584 #, c-format msgid "Bonding monitoring mode %s" msgstr "Modalità monitoraggio di aggregazione %s" -#: ../clients/cli/connections.c:3543 +#: ../clients/cli/connections.c:3590 #, c-format msgid "Error: '%s' is not a valid monitoring mode; use '%s' or '%s'.\n" msgstr "" -"Errore: «%s» non è una modalità di monitoraggio valida; usare «%s» o «%s».\n" +"Errore: \"%s\" non è una modalità di monitoraggio valida; usare \"%s\" o \"%s" +"\".\n" -#: ../clients/cli/connections.c:3552 +#: ../clients/cli/connections.c:3599 msgid "Bonding miimon [100]: " msgstr "Miimon di aggregazione [100]: " -#: ../clients/cli/connections.c:3555 +#: ../clients/cli/connections.c:3602 #, c-format msgid "Error: 'miimon': '%s' is not a valid number <0-%u>.\n" -msgstr "Errore: «miimon»: «%s» non è un numero valido <0-%u>.\n" +msgstr "Errore: \"miimon\": \"%s\" non è un numero valido <0-%u>.\n" -#: ../clients/cli/connections.c:3563 +#: ../clients/cli/connections.c:3610 msgid "Bonding downdelay [0]: " msgstr "Downdelay di aggregazione [0]: " -#: ../clients/cli/connections.c:3566 +#: ../clients/cli/connections.c:3613 #, c-format msgid "Error: 'downdelay': '%s' is not a valid number <0-%u>.\n" -msgstr "Errore: «downdelay»: «%s» non è un numero valido <0-%u>.\n" +msgstr "Errore: \"downdelay\": \"%s\" non è un numero valido <0-%u>.\n" -#: ../clients/cli/connections.c:3574 +#: ../clients/cli/connections.c:3621 msgid "Bonding updelay [0]: " msgstr "Updelay di aggregazione [0]: " -#: ../clients/cli/connections.c:3577 +#: ../clients/cli/connections.c:3624 #, c-format msgid "Error: 'updelay': '%s' is not a valid number <0-%u>.\n" -msgstr "Errore: «updelay»: «%s» non è un numero valido <0-%u>.\n" +msgstr "Errore: \"updelay\": \"%s\" non è un numero valido <0-%u>.\n" -#: ../clients/cli/connections.c:3586 +#: ../clients/cli/connections.c:3633 msgid "Bonding arp-interval [0]: " msgstr "Arp-interval di aggregazione [0]: " -#: ../clients/cli/connections.c:3589 +#: ../clients/cli/connections.c:3636 #, c-format msgid "Error: 'arp-interval': '%s' is not a valid number <0-%u>.\n" -msgstr "Errore: «arp-interval»: «%s» non è un numero valido <0-%u>.\n" +msgstr "Errore: \"arp-interval\": \"%s\" non è un numero valido <0-%u>.\n" #. FIXME: verify the string -#: ../clients/cli/connections.c:3597 +#: ../clients/cli/connections.c:3644 msgid "Bonding arp-ip-target [none]: " msgstr "Arp-ip-target di aggregazione [nessuno]: " -#: ../clients/cli/connections.c:3604 +#: ../clients/cli/connections.c:3651 msgid "LACP rate ('slow' or 'fast') [slow]: " -msgstr "Velocità LACP («slow» o «fast») [slow]: " +msgstr "Velocità LACP (\"slow\" o \"fast\") [slow]: " -#: ../clients/cli/connections.c:3610 +#: ../clients/cli/connections.c:3657 #, c-format msgid "Error: 'lacp_rate': '%s' is invalid ('slow' or 'fast').\n" -msgstr "Errore: «lacp_rate»: «%s» non è valido («slow» o «fast»).\n" +msgstr "Errore: \"lacp_rate\": \"%s\" non è valido (\"slow\" o \"fast\").\n" -#: ../clients/cli/connections.c:3633 +#: ../clients/cli/connections.c:3680 msgid "Team JSON configuration [none]: " msgstr "Configurazione JSON team [nessuna]: " -#: ../clients/cli/connections.c:3650 +#: ../clients/cli/connections.c:3697 msgid "team" msgstr "team" -#: ../clients/cli/connections.c:3656 +#: ../clients/cli/connections.c:3703 msgid "team-slave" msgstr "team-slave" #. Ask for optional 'bridge' arguments. -#: ../clients/cli/connections.c:3668 +#: ../clients/cli/connections.c:3715 msgid "bridge" msgstr "bridge" -#: ../clients/cli/connections.c:3674 +#: ../clients/cli/connections.c:3721 #, c-format msgid "Enable STP %s" msgstr "Abilitare STP %s" -#: ../clients/cli/connections.c:3679 +#: ../clients/cli/connections.c:3726 #, c-format msgid "Error: 'stp': %s.\n" -msgstr "Errore: «stp»: %s.\n" +msgstr "Errore: \"stp\": %s.\n" -#: ../clients/cli/connections.c:3687 +#: ../clients/cli/connections.c:3734 msgid "STP priority [32768]: " msgstr "Priorità STP [32768]: " -#: ../clients/cli/connections.c:3691 +#: ../clients/cli/connections.c:3738 #, c-format msgid "Error: 'priority': '%s' is not a valid number <0-%d>.\n" -msgstr "Errore: «priority»: «%s» non è un numero valido <0-%d>.\n" +msgstr "Errore: \"priority\": \"%s\" non è un numero valido <0-%d>.\n" -#: ../clients/cli/connections.c:3699 +#: ../clients/cli/connections.c:3746 msgid "Forward delay [15]: " msgstr "Forward delay [15]: " -#: ../clients/cli/connections.c:3703 +#: ../clients/cli/connections.c:3750 #, c-format msgid "Error: 'forward-delay': '%s' is not a valid number <2-30>.\n" -msgstr "Errore: «forward-dealy»: «%s» non è un numero valido <2-30>.\n" +msgstr "Errore: \"forward-dealy\": \"%s\" non è un numero valido <2-30>.\n" -#: ../clients/cli/connections.c:3712 +#: ../clients/cli/connections.c:3759 msgid "Hello time [2]: " msgstr "Hello time [2]: " -#: ../clients/cli/connections.c:3716 +#: ../clients/cli/connections.c:3763 #, c-format msgid "Error: 'hello-time': '%s' is not a valid number <1-10>.\n" -msgstr "Errore: «hello-time»: «%s» non è un numero valido <1-10>.\n" +msgstr "Errore: \"hello-time\": \"%s\" non è un numero valido <1-10>.\n" -#: ../clients/cli/connections.c:3724 +#: ../clients/cli/connections.c:3771 msgid "Max age [20]: " msgstr "Età massima [20]: " -#: ../clients/cli/connections.c:3728 +#: ../clients/cli/connections.c:3775 #, c-format msgid "Error: 'max-age': '%s' is not a valid number <6-40>.\n" -msgstr "Errore: «max-age»: «%s» non è un numero valido <6-40>.\n" +msgstr "Errore: \"max-age\": \"%s\" non è un numero valido <6-40>.\n" -#: ../clients/cli/connections.c:3736 +#: ../clients/cli/connections.c:3783 msgid "MAC address ageing time [300]: " msgstr "Tempo invecchiamento indirizzo MAC [300]: " -#: ../clients/cli/connections.c:3740 +#: ../clients/cli/connections.c:3787 #, c-format msgid "Error: 'ageing-time': '%s' is not a valid number <0-1000000>.\n" -msgstr "Errore: «ageing-time»: «%s» non è un numero valido <0-1000000>.\n" +msgstr "Errore: \"ageing-time\": \"%s\" non è un numero valido <0-1000000>.\n" #. Ask for optional 'bridge-slave' arguments. -#: ../clients/cli/connections.c:3767 +#: ../clients/cli/connections.c:3814 msgid "bridge-slave" msgstr "bridge-slave" -#: ../clients/cli/connections.c:3772 +#: ../clients/cli/connections.c:3819 msgid "Bridge port priority [32]: " msgstr "Priorità porta bridge [32]: " -#: ../clients/cli/connections.c:3785 +#: ../clients/cli/connections.c:3832 msgid "Bridge port STP path cost [100]: " msgstr "Costo percorso STP porta bridge [100]: " -#: ../clients/cli/connections.c:3799 +#: ../clients/cli/connections.c:3846 #, c-format msgid "Hairpin %s" msgstr "Hairpin %s" -#: ../clients/cli/connections.c:3804 +#: ../clients/cli/connections.c:3851 #, c-format msgid "Error: 'hairpin': %s.\n" -msgstr "Errore: «hairpin»: «%s».\n" +msgstr "Errore: \"hairpin\": \"%s\".\n" #. Ask for optional 'olpc' arguments. -#: ../clients/cli/connections.c:3831 ../libnm-glib/nm-device.c:1795 -#: ../libnm/nm-device.c:1617 +#: ../clients/cli/connections.c:3878 ../libnm-glib/nm-device.c:1795 +#: ../libnm/nm-device.c:1640 msgid "OLPC Mesh" msgstr "Mesh OLPC" -#: ../clients/cli/connections.c:3836 +#: ../clients/cli/connections.c:3883 msgid "OLPC Mesh channel [1]: " msgstr "Canale mesh OLPC [1]: " -#: ../clients/cli/connections.c:3839 +#: ../clients/cli/connections.c:3886 #, c-format msgid "Error: 'channel': '%s' is not a valid number <1-13>.\n" -msgstr "Errore: «channel»: «%s» non è un numero valido <1-13>.\n" +msgstr "Errore: \"channel\": \"%s\" non è un numero valido <1-13>.\n" -#: ../clients/cli/connections.c:3847 +#: ../clients/cli/connections.c:3894 msgid "DHCP anycast MAC address [none]: " msgstr "Indirizzo MAC DHCP anycast [nessuno]: " -#: ../clients/cli/connections.c:3889 +#. Ask for optional 'adsl' arguments. +#: ../clients/cli/connections.c:3913 ../libnm-glib/nm-device.c:1811 +#: ../libnm/nm-device.c:1656 +msgid "ADSL" +msgstr "ADSL" + +#: ../clients/cli/connections.c:3921 +#, c-format +msgid "ADSL encapsulation %s" +msgstr "Incapsulamento ADSL %s" + +#: ../clients/cli/connections.c:3963 msgid "IPv4 address (IP[/plen]) [none]: " msgstr "Indirizzo IPv4 (IP[/plen]) [nessuno]: " -#: ../clients/cli/connections.c:3891 +#: ../clients/cli/connections.c:3965 msgid "IPv6 address (IP[/plen]) [none]: " msgstr "Indirizzo IPv6 (IP[/plen]) [nessuno]: " -#: ../clients/cli/connections.c:3905 +#: ../clients/cli/connections.c:3979 #, c-format msgid " Address successfully added: %s\n" msgstr " Indirizzo aggiunto con successo: %s\n" -#: ../clients/cli/connections.c:3907 +#: ../clients/cli/connections.c:3981 #, c-format msgid " Warning: address already present: %s\n" msgstr " Attenzione: indirizzo già presente: %s\n" -#: ../clients/cli/connections.c:3909 +#: ../clients/cli/connections.c:3983 #, c-format msgid " Warning: ignoring garbage at the end: '%s'\n" -msgstr " Attenzione: ignorati i dati non necessari alla fine: «%s»\n" +msgstr " Attenzione: ignorati i dati non necessari alla fine: \"%s\"\n" -#: ../clients/cli/connections.c:3911 ../clients/cli/connections.c:4791 -#: ../clients/cli/connections.c:4852 ../clients/cli/connections.c:5253 -#: ../clients/cli/connections.c:5286 +#: ../clients/cli/connections.c:3985 ../clients/cli/connections.c:4867 +#: ../clients/cli/connections.c:4928 ../clients/cli/connections.c:5401 +#: ../clients/cli/connections.c:5434 msgid "Error: " msgstr "Errore: " -#: ../clients/cli/connections.c:3931 +#: ../clients/cli/connections.c:4005 msgid "IPv4 gateway [none]: " msgstr "Gateway IPv4 [nessuno]: " -#: ../clients/cli/connections.c:3934 +#: ../clients/cli/connections.c:4008 msgid "IPv6 gateway [none]: " msgstr "Gateway IPv6 [nessuno]: " -#: ../clients/cli/connections.c:3954 +#: ../clients/cli/connections.c:4028 #, c-format msgid "Error: invalid gateway address '%s'\n" -msgstr "Errore: indirizzo gateway «%s» non valido\n" +msgstr "Errore: indirizzo gateway \"%s\" non valido\n" #. Ask for IP addresses -#: ../clients/cli/connections.c:3967 +#: ../clients/cli/connections.c:4041 #, c-format msgid "Do you want to add IP addresses? %s" msgstr "Aggiungere indirizzi IP? %s" -#: ../clients/cli/connections.c:3975 +#: ../clients/cli/connections.c:4049 #, c-format msgid "Press <Enter> to finish adding addresses.\n" msgstr "Premere Invio per terminare l'immissione di indirizzi.\n" -#: ../clients/cli/connections.c:4113 +#: ../clients/cli/connections.c:4189 #, c-format msgid "Error: 'parent': not valid without 'p-key'." -msgstr "Errore: «parent»: non valido senza «p-key»." +msgstr "Errore: \"parent\": non valido senza \"p-key\"." -#: ../clients/cli/connections.c:4168 ../clients/cli/connections.c:5173 +#: ../clients/cli/connections.c:4244 ../clients/cli/connections.c:5249 msgid "SSID: " msgstr "SSID: " -#: ../clients/cli/connections.c:4171 ../clients/cli/connections.c:5176 +#: ../clients/cli/connections.c:4247 ../clients/cli/connections.c:5252 msgid "Error: 'ssid' is required." -msgstr "Errore: è richiesto «ssid»." +msgstr "Errore: è richiesto \"ssid\"." -#: ../clients/cli/connections.c:4235 +#: ../clients/cli/connections.c:4311 msgid "WiMAX NSP name: " msgstr "Nome NSP WiMAX: " -#: ../clients/cli/connections.c:4238 +#: ../clients/cli/connections.c:4314 msgid "Error: 'nsp' is required." -msgstr "Errore: è richiesto «nsp»." +msgstr "Errore: è richiesto \"nsp\"." -#: ../clients/cli/connections.c:4290 +#: ../clients/cli/connections.c:4366 msgid "PPPoE username: " msgstr "Nome utente PPPoE:" -#: ../clients/cli/connections.c:4293 +#: ../clients/cli/connections.c:4369 ../clients/cli/connections.c:5319 msgid "Error: 'username' is required." -msgstr "Errore: è richiesto «username»." +msgstr "Errore: è richiesto \"username\"." -#: ../clients/cli/connections.c:4362 +#: ../clients/cli/connections.c:4438 msgid "APN: " msgstr "APN: " -#: ../clients/cli/connections.c:4365 +#: ../clients/cli/connections.c:4441 msgid "Error: 'apn' is required." -msgstr "Errore: è richiesto «apn»." +msgstr "Errore: è richiesto \"apn\"." -#: ../clients/cli/connections.c:4423 +#: ../clients/cli/connections.c:4499 msgid "Bluetooth device address: " msgstr "Indirizzo dispositivo Bluetooth: " -#: ../clients/cli/connections.c:4426 +#: ../clients/cli/connections.c:4502 msgid "Error: 'addr' is required." -msgstr "Errore: è richiesto «addr»." +msgstr "Errore: è richiesto \"addr\"." -#: ../clients/cli/connections.c:4467 +#: ../clients/cli/connections.c:4543 #, c-format msgid "Error: 'bt-type': '%s' not valid; use [%s, %s (%s), %s]." -msgstr "Errore: «bt-type»: «%s» non valido; usare [%s, %s (%s), %s]." +msgstr "Errore: \"bt-type\": \"%s\" non valido; usare [%s, %s (%s), %s]." -#: ../clients/cli/connections.c:4511 +#: ../clients/cli/connections.c:4587 msgid "VLAN parent device or connection UUID: " msgstr "Dispositivo genitore VLAN o UUID di connessione:" -#: ../clients/cli/connections.c:4514 +#: ../clients/cli/connections.c:4590 msgid "Error: 'dev' is required." -msgstr "Errore: è richiesto «dev»." +msgstr "Errore: è richiesto \"dev\"." -#: ../clients/cli/connections.c:4518 +#: ../clients/cli/connections.c:4594 msgid "VLAN ID <0-4095>: " msgstr "ID VLAN <0-4095>: " -#: ../clients/cli/connections.c:4521 +#: ../clients/cli/connections.c:4597 msgid "Error: 'id' is required." -msgstr "Errore: è richiesto «id»." +msgstr "Errore: è richiesto \"id\"." -#: ../clients/cli/connections.c:4527 +#: ../clients/cli/connections.c:4603 #, c-format msgid "Error: 'id': '%s' is not valid; use <0-4095>." -msgstr "Errore: «id»: «%s» non è valido; usare <0-4095>." +msgstr "Errore: \"id\": \"%s\" non è valido; usare <0-4095>." -#: ../clients/cli/connections.c:4537 +#: ../clients/cli/connections.c:4613 #, c-format msgid "Error: 'dev': '%s' is neither UUID, interface name, nor MAC." msgstr "" -"Errore: «dev»: «%s» non è né uno UUID né il nome di un'interfaccia né un MAC." +"Errore: \"dev\": \"%s\" non è né uno UUID né il nome di un'interfaccia né un " +"MAC." -#: ../clients/cli/connections.c:4671 +#: ../clients/cli/connections.c:4747 #, c-format msgid "Error: 'mode': %s." -msgstr "Errore: «mode»: %s" +msgstr "Errore: \"mode\": %s" -#: ../clients/cli/connections.c:4680 +#: ../clients/cli/connections.c:4756 #, c-format msgid "Error: 'primary': '%s' is not a valid interface name." -msgstr "Errore: «primary»: «%s» non è un nome valido di interfaccia." +msgstr "Errore: \"primary\": \"%s\" non è un nome valido di interfaccia." -#: ../clients/cli/connections.c:4732 ../clients/cli/connections.c:4830 -#: ../clients/cli/connections.c:5032 +#: ../clients/cli/connections.c:4808 ../clients/cli/connections.c:4906 +#: ../clients/cli/connections.c:5108 msgid "Error: 'master' is required." -msgstr "Errore: è richiesto «master»." +msgstr "Errore: è richiesto \"master\"." -#: ../clients/cli/connections.c:4738 ../clients/cli/connections.c:4836 -#: ../clients/cli/connections.c:5038 +#: ../clients/cli/connections.c:4814 ../clients/cli/connections.c:4912 +#: ../clients/cli/connections.c:5114 #, c-format msgid "Warning: master='%s' doesn't refer to any existing profile.\n" -msgstr "Attenzione: master=«%s» non si riferisce ad alcun profilo esistente.\n" +msgstr "" +"Attenzione: master=\"%s\" non si riferisce ad alcun profilo esistente.\n" -#: ../clients/cli/connections.c:4741 ../clients/cli/connections.c:4844 -#: ../clients/cli/connections.c:5041 +#: ../clients/cli/connections.c:4817 ../clients/cli/connections.c:4920 +#: ../clients/cli/connections.c:5117 #, c-format msgid "" "Warning: 'type' is currently ignored. We only support ethernet slaves for " "now.\n" msgstr "" -"Attenzione: «type» è attualmente ignorato. Al momento sono supportati " +"Attenzione: \"type\" è attualmente ignorato. Al momento sono supportati " "solamente slave Ethernet.\n" -#: ../clients/cli/connections.c:4938 +#: ../clients/cli/connections.c:5014 #, c-format msgid "Error: 'stp': %s." -msgstr "Errore: «stp»: %s." +msgstr "Errore: \"stp\": %s." -#: ../clients/cli/connections.c:5068 +#: ../clients/cli/connections.c:5144 #, c-format msgid "Error: 'hairpin': %s." -msgstr "Errore: «hairpin»: %s." +msgstr "Errore: \"hairpin\": %s." -#: ../clients/cli/connections.c:5121 +#: ../clients/cli/connections.c:5197 msgid "Error: 'vpn-type' is required." -msgstr "Errore: è richiesto «vpn-type»." +msgstr "Errore: è richiesto \"vpn-type\"." -#: ../clients/cli/connections.c:5128 +#: ../clients/cli/connections.c:5204 #, c-format msgid "Warning: 'vpn-type': %s not known.\n" -msgstr "Attenzione: «vpn-type»: %s sconosciuto.\n" +msgstr "Attenzione: \"vpn-type\": %s sconosciuto.\n" -#: ../clients/cli/connections.c:5189 +#: ../clients/cli/connections.c:5265 #, c-format msgid "Error: 'channel': '%s' is not valid; use <1-13>." -msgstr "Errore: «channel»: «%s» non è valido; usare <1-13>." +msgstr "Errore: \"channel\": \"%s\" non è valido; usare <1-13>." + +#: ../clients/cli/connections.c:5316 +msgid "Username: " +msgstr "Nome utente: " + +#: ../clients/cli/connections.c:5325 +#, c-format +msgid "Protocol %s" +msgstr "Protocollo %s" + +#: ../clients/cli/connections.c:5328 +msgid "Error: 'protocol' is required." +msgstr "Errore: è richiesto \"protocollo\"." -#: ../clients/cli/connections.c:5221 +#: ../clients/cli/connections.c:5369 #, c-format msgid "Error: '%s' is not a valid connection type." -msgstr "Errore: «%s» non è tipo di connessione valido." +msgstr "Errore: \"%s\" non è tipo di connessione valido." -#: ../clients/cli/connections.c:5265 +#: ../clients/cli/connections.c:5413 #, c-format msgid "Error: IPv4 gateway specified without IPv4 addresses" msgstr "Errore: gateway IPv4 specificato senza indirizzo IPv4" -#: ../clients/cli/connections.c:5269 +#: ../clients/cli/connections.c:5417 #, c-format msgid "Error: multiple IPv4 gateways specified" msgstr "Errore: molteplici gateway IPv4 specificati" -#: ../clients/cli/connections.c:5273 +#: ../clients/cli/connections.c:5421 #, c-format msgid "Error: Invalid IPv4 gateway '%s'" -msgstr "Errore: gateway IPv4 «%s» non valido" +msgstr "Errore: gateway IPv4 \"%s\" non valido" -#: ../clients/cli/connections.c:5298 +#: ../clients/cli/connections.c:5446 #, c-format msgid "Error: IPv6 gateway specified without IPv6 addresses" msgstr "Errore: gateway IPv6 specificato senza indirizzo IPv6" -#: ../clients/cli/connections.c:5302 +#: ../clients/cli/connections.c:5450 #, c-format msgid "Error: multiple IPv6 gateways specified" msgstr "Errore: molteplici gateway IPv6 specificati" -#: ../clients/cli/connections.c:5306 +#: ../clients/cli/connections.c:5454 #, c-format msgid "Error: Invalid IPv6 gateway '%s'" -msgstr "Errore: gateway IPv6 «%s» non valido" +msgstr "Errore: gateway IPv6 \"%s\" non valido" -#: ../clients/cli/connections.c:5366 +#: ../clients/cli/connections.c:5514 #, c-format msgid "Error: Failed to add '%s' connection: %s" -msgstr "Errore: aggiunta della connessione «%s» non riuscita: %s" +msgstr "Errore: aggiunta della connessione \"%s\" non riuscita: %s" -#: ../clients/cli/connections.c:5371 +#: ../clients/cli/connections.c:5519 #, c-format msgid "Connection '%s' (%s) successfully added.\n" -msgstr "Connessione «%s» (%s) aggiunta con successo.\n" +msgstr "Connessione \"%s\" (%s) aggiunta con successo.\n" -#: ../clients/cli/connections.c:5591 +#: ../clients/cli/connections.c:5757 #, c-format msgid "Error: 'type' argument is required." -msgstr "Errore: è richiesto l'argomento «type»." +msgstr "Errore: è richiesto l'argomento \"type\"." -#: ../clients/cli/connections.c:5599 +#: ../clients/cli/connections.c:5765 #, c-format msgid "Error: invalid connection type; %s." msgstr "Errore: tipo di connessione non valido; %s." -#: ../clients/cli/connections.c:5608 +#: ../clients/cli/connections.c:5774 #, c-format msgid "Error: 'autoconnect': %s." -msgstr "Errore: «autoconnect»: %s." +msgstr "Errore: \"autoconnect\": %s." -#: ../clients/cli/connections.c:5618 +#: ../clients/cli/connections.c:5784 #, c-format msgid "Error: 'save': %s." -msgstr "Errore: «save»: %s." +msgstr "Errore: \"save\": %s." -#: ../clients/cli/connections.c:5634 +#: ../clients/cli/connections.c:5801 msgid "Interface name [*]: " msgstr "Nome interfaccia [*]: " -#: ../clients/cli/connections.c:5639 +#: ../clients/cli/connections.c:5806 #, c-format msgid "Error: 'ifname' argument is required." -msgstr "Errore: è richiesto l'argomento «ifname»." +msgstr "Errore: è richiesto l'argomento \"ifname\"." + +#: ../clients/cli/connections.c:5808 +#, c-format +msgid "Error: mandatory 'ifname' not seen before '%s'." +msgstr "Errore: \"ifname\" obbligatorio non trovato prima di \"%s\"." -#: ../clients/cli/connections.c:5646 +#: ../clients/cli/connections.c:5817 #, c-format msgid "Error: 'ifname': '%s' is not a valid interface nor '*'." -msgstr "Errore: «ifname»: «%s» e «*» non sono interfacce valide." +msgstr "Errore: \"ifname\": \"%s\" e \"*\" non sono interfacce valide." -#: ../clients/cli/connections.c:6422 +#: ../clients/cli/connections.c:6712 #, c-format msgid "['%s' setting values]\n" -msgstr "[impostazione valori di «%s»]\n" +msgstr "[impostazione valori di \"%s\"]\n" #. TRANSLATORS: do not translate command names and keywords before :: #. * However, you should translate terms enclosed in <>. #. -#: ../clients/cli/connections.c:6504 +#: ../clients/cli/connections.c:6794 #, c-format msgid "" "---[ Main menu ]---\n" @@ -2302,7 +2388,7 @@ msgstr "" "mmcli <opzione-conf> <val> :: Configurazione di nmcli\n" "quit :: Esce da nmcli\n" -#: ../clients/cli/connections.c:6531 +#: ../clients/cli/connections.c:6821 #, c-format msgid "" "goto <setting>[.<prop>] | <prop> :: enter setting/property for editing\n" @@ -2322,7 +2408,7 @@ msgstr "" " nmcli connection> goto secondaries\n" " nmcli> goto ipv4.addresses\n" -#: ../clients/cli/connections.c:6538 +#: ../clients/cli/connections.c:6828 #, c-format msgid "" "remove <setting>[.<prop>] :: remove setting or reset property value\n" @@ -2343,7 +2429,7 @@ msgstr "" "Esempi: nmcli> remove wifi-sec\n" " nmcli> remove eth.mtu\n" -#: ../clients/cli/connections.c:6545 +#: ../clients/cli/connections.c:6835 #, c-format msgid "" "set [<setting>.<prop> <value>] :: set property value\n" @@ -2358,7 +2444,7 @@ msgstr "" "\n" "Esempio: nmcli> set con.id La mia connessione\n" -#: ../clients/cli/connections.c:6550 +#: ../clients/cli/connections.c:6840 #, c-format msgid "" "describe [<setting>.<prop>] :: describe property\n" @@ -2373,7 +2459,7 @@ msgstr "" "impostazioni e proprietà di NM, consultare la pagina di manuale nm-" "settings(5).\n" -#: ../clients/cli/connections.c:6555 +#: ../clients/cli/connections.c:6845 #, c-format msgid "" "print [all] :: print setting or connection values\n" @@ -2388,7 +2474,7 @@ msgstr "" "\n" "Esempio: nmcli ipv4> print all\n" -#: ../clients/cli/connections.c:6560 +#: ../clients/cli/connections.c:6850 #, c-format msgid "" "verify [all | fix] :: verify setting or connection validity\n" @@ -2413,7 +2499,7 @@ msgstr "" " nmcli> verify fix\n" " nmcli bond> verify\n" -#: ../clients/cli/connections.c:6569 +#: ../clients/cli/connections.c:6859 #, c-format msgid "" "save [persistent|temporary] :: save the connection\n" @@ -2431,8 +2517,8 @@ msgstr "" "save [persistent|temporary] :: Salva la connessione\n" "\n" "Invia il profilo della connessione a NetworkManager per salvarla in modo\n" -"permanente o per tenerla in memoria. «save» senza alcun argomento indica\n" -"«save persistent».\n" +"permanente o per tenerla in memoria. \"save\" senza alcun argomento indica\n" +"\"save persistent\".\n" "Una volta salvato permanentemente il profilo, le impostazioni vengono " "mantenute\n" "ai successivi riavvii. Ulteriori modifiche possono essere anch'esse " @@ -2443,7 +2529,7 @@ msgstr "" "eliminare\n" "definitivamente il profilo.\n" -#: ../clients/cli/connections.c:6580 +#: ../clients/cli/connections.c:6870 #, c-format msgid "" "activate [<ifname>] [/<ap>|<nsp>] :: activate the connection\n" @@ -2464,7 +2550,7 @@ msgstr "" "/<ap>|<nsp> - AP (Wi-Fi) o NSP (WiMAX) (iniziare con / quando " "<ifname> non è specificato)\n" -#: ../clients/cli/connections.c:6587 ../clients/cli/connections.c:6745 +#: ../clients/cli/connections.c:6877 ../clients/cli/connections.c:7035 #, c-format msgid "" "back :: go to upper menu level\n" @@ -2473,7 +2559,7 @@ msgstr "" "back :: Va al livello superiore del menù\n" "\n" -#: ../clients/cli/connections.c:6590 +#: ../clients/cli/connections.c:6880 #, c-format msgid "" "help/? [<command>] :: help for the nmcli commands\n" @@ -2482,7 +2568,7 @@ msgstr "" "help/? [<comando>] :: Aiuto per i comandi nmcli\n" "\n" -#: ../clients/cli/connections.c:6593 +#: ../clients/cli/connections.c:6883 #, c-format msgid "" "nmcli [<conf-option> <value>] :: nmcli configuration\n" @@ -2527,7 +2613,7 @@ msgstr "" " nmcli> nmcli save-confirmation no\n" " nmcli> nmcli prompt-color 3\n" -#: ../clients/cli/connections.c:6614 ../clients/cli/connections.c:6751 +#: ../clients/cli/connections.c:6904 ../clients/cli/connections.c:7041 #, c-format msgid "" "quit :: exit nmcli\n" @@ -2541,16 +2627,16 @@ msgstr "" "salvata,\n" "viene richiesto di confermare l'azione.\n" -#: ../clients/cli/connections.c:6619 ../clients/cli/connections.c:6756 -#: ../clients/cli/connections.c:7167 ../clients/cli/connections.c:8083 +#: ../clients/cli/connections.c:6909 ../clients/cli/connections.c:7046 +#: ../clients/cli/connections.c:7469 ../clients/cli/connections.c:8391 #, c-format msgid "Unknown command: '%s'\n" -msgstr "Comando sconosciuto «%s»\n" +msgstr "Comando sconosciuto \"%s\"\n" #. TRANSLATORS: do not translate command names and keywords before :: #. * However, you should translate terms enclosed in <>. #. -#: ../clients/cli/connections.c:6685 +#: ../clients/cli/connections.c:6975 #, c-format msgid "" "---[ Property menu ]---\n" @@ -2580,7 +2666,7 @@ msgstr "" " comando\n" "quit :: Esce da nmcli\n" -#: ../clients/cli/connections.c:6710 +#: ../clients/cli/connections.c:7000 #, c-format msgid "" "set [<value>] :: set new value\n" @@ -2591,7 +2677,7 @@ msgstr "" "\n" "Questo comando imposta il <valore> fornito a questa proprietà .\n" -#: ../clients/cli/connections.c:6714 +#: ../clients/cli/connections.c:7004 #, c-format msgid "" "add [<value>] :: append new value to the property\n" @@ -2604,9 +2690,9 @@ msgstr "" "\n" "Questo comando aggiunge il <valore> fornito a questa proprietà , se essa è di " "tipo contenitore. Per proprietà a valore singolo rimpiazza il valore (come " -"il comando «set»).\n" +"il comando \"set\").\n" -#: ../clients/cli/connections.c:6720 +#: ../clients/cli/connections.c:7010 #, c-format msgid "" "change :: change current value\n" @@ -2617,7 +2703,7 @@ msgstr "" "\n" "Visualizza il valore attuale e consente di modificarlo.\n" -#: ../clients/cli/connections.c:6724 +#: ../clients/cli/connections.c:7014 #, c-format msgid "" "remove [<value>|<index>|<option name>] :: delete the value\n" @@ -2653,7 +2739,7 @@ msgstr "" " nmcli bond.options> remove downdelay\n" "\n" -#: ../clients/cli/connections.c:6735 +#: ../clients/cli/connections.c:7025 #, c-format msgid "" "describe :: describe property\n" @@ -2668,7 +2754,7 @@ msgstr "" "impostazioni e proprietà di NM, consultare la pagina di manuale nm-" "settings(5).\n" -#: ../clients/cli/connections.c:6740 +#: ../clients/cli/connections.c:7030 #, c-format msgid "" "print [property|setting|connection] :: print property (setting, connection) " @@ -2684,7 +2770,7 @@ msgstr "" "possibile\n" "visualizzare i valori per l'impostazione o la connessione.\n" -#: ../clients/cli/connections.c:6748 +#: ../clients/cli/connections.c:7038 #, c-format msgid "" "help/? [<command>] :: help for nmcli commands\n" @@ -2693,772 +2779,815 @@ msgstr "" "help/? [<comando>] :: Aiuto per i comandi di nmcli\n" "\n" -#: ../clients/cli/connections.c:6846 +#: ../clients/cli/connections.c:7136 #, c-format msgid "Error: Connection activation failed.\n" msgstr "Errore: attivazione connessione non riuscita.\n" -#: ../clients/cli/connections.c:6929 +#: ../clients/cli/connections.c:7219 #, c-format msgid "Error: setting '%s' is mandatory and cannot be removed.\n" -msgstr "Errore: l'impostazione «%s» è obbligatoria e non può essere rimossa.\n" +msgstr "" +"Errore: l'impostazione \"%s\" è obbligatoria e non può essere rimossa.\n" #. TRANSLATORS: status line in nmcli connection editor -#: ../clients/cli/connections.c:6947 +#: ../clients/cli/connections.c:7237 #, c-format msgid "[ Type: %s | Name: %s | UUID: %s | Dirty: %s | Temp: %s ]\n" msgstr "[ Tipo: %s | Nome: %s | UUID: %s | Dirty: %s | Temp: %s ]\n" -#: ../clients/cli/connections.c:6983 +#: ../clients/cli/connections.c:7273 #, c-format msgid "The connection is not saved. Do you really want to quit? %s" msgstr "La connessione non è stata salvata. Uscire veramente? %s" -#: ../clients/cli/connections.c:7028 +#: ../clients/cli/connections.c:7321 #, c-format msgid "" "The connection profile has been removed from another client. You may type " "'save' in the main menu to restore it.\n" msgstr "" "Il profilo della connessione è stato rimosso da un altro client. È possibile " -"digitare «save» nel menù principale per ripristinarla.\n" +"digitare \"save\" nel menù principale per ripristinarla.\n" -#: ../clients/cli/connections.c:7050 ../clients/cli/connections.c:7471 -#: ../clients/cli/connections.c:7526 +#: ../clients/cli/connections.c:7346 ../clients/cli/connections.c:7772 +#: ../clients/cli/connections.c:7830 +#, c-format +msgid "Allowed values for '%s' property: %s\n" +msgstr "Valori consentiti per la proprietà \"%s\": %s\n" + +#: ../clients/cli/connections.c:7350 ../clients/cli/connections.c:7776 +#: ../clients/cli/connections.c:7834 #, c-format msgid "Enter '%s' value: " -msgstr "Inserire il valore per «%s»:" +msgstr "Inserire il valore per \"%s\":" -#: ../clients/cli/connections.c:7065 ../clients/cli/connections.c:7087 -#: ../clients/cli/connections.c:7475 ../clients/cli/connections.c:7531 +#: ../clients/cli/connections.c:7365 ../clients/cli/connections.c:7387 +#: ../clients/cli/connections.c:7780 ../clients/cli/connections.c:7839 #, c-format msgid "Error: failed to set '%s' property: %s\n" -msgstr "Errore: impostazione della proprietà «%s» non riuscita: %s\n" +msgstr "Errore: impostazione della proprietà \"%s\" non riuscita: %s\n" -#: ../clients/cli/connections.c:7081 +#: ../clients/cli/connections.c:7381 #, c-format msgid "Edit '%s' value: " -msgstr "Modifica valore di «%s»: " +msgstr "Modifica valore di \"%s\": " -#: ../clients/cli/connections.c:7110 +#: ../clients/cli/connections.c:7410 #, c-format msgid "Error: %s\n" msgstr "Errore: %s\n" -#: ../clients/cli/connections.c:7116 ../clients/cli/connections.c:7610 -#: ../clients/cli/connections.c:7651 +#: ../clients/cli/connections.c:7416 ../clients/cli/connections.c:7918 +#: ../clients/cli/connections.c:7959 #, c-format msgid "Error: failed to remove value of '%s': %s\n" -msgstr "Errore: rimozione del valore di «%s» non riuscita: %s\n" +msgstr "Errore: rimozione del valore di \"%s\" non riuscita: %s\n" -#: ../clients/cli/connections.c:7137 +#: ../clients/cli/connections.c:7437 #, c-format msgid "Unknown command argument: '%s'\n" -msgstr "Argomento sconosciuto del comando: «%s»\n" +msgstr "Argomento sconosciuto del comando: \"%s\"\n" -#: ../clients/cli/connections.c:7263 +#: ../clients/cli/connections.c:7565 #, c-format msgid "Available settings: %s\n" msgstr "Impostazioni disponibili: %s\n" -#: ../clients/cli/connections.c:7272 +#: ../clients/cli/connections.c:7574 #, c-format msgid "Error: invalid setting name; %s\n" msgstr "Errore: nome impostazione non valido; %s\n" -#: ../clients/cli/connections.c:7289 +#: ../clients/cli/connections.c:7591 #, c-format msgid "Available properties: %s\n" msgstr "Proprietà disponibili: %s\n" -#: ../clients/cli/connections.c:7297 +#: ../clients/cli/connections.c:7599 #, c-format msgid "Error: property %s\n" msgstr "Errore: proprietà %s\n" -#: ../clients/cli/connections.c:7338 +#: ../clients/cli/connections.c:7640 #, c-format msgid "" "Saving the connection with 'autoconnect=yes'. That might result in an " "immediate activation of the connection.\n" "Do you still want to save? %s" msgstr "" -"Viene salvata la connessione con «autoconnect=yes»: potrebbe attivare la " +"Viene salvata la connessione con \"autoconnect=yes\": potrebbe attivare la " "connessione immediatamente.\n" "Salvarla veramente? %s" -#: ../clients/cli/connections.c:7413 +#: ../clients/cli/connections.c:7715 #, c-format msgid "You may edit the following settings: %s\n" msgstr "È possibile modificare le seguenti impostazioni: %s\n" -#: ../clients/cli/connections.c:7440 +#: ../clients/cli/connections.c:7742 #, c-format msgid "" "The connection profile has been removed from another client. You may type " "'save' to restore it.\n" msgstr "" "Il profilo della connessione è stato rimosso da un altro client. È possibile " -"digitare «save» per ripristinarla.\n" +"digitare \"save\" per ripristinarla.\n" -#: ../clients/cli/connections.c:7469 ../clients/cli/connections.c:7524 -#, c-format -msgid "Allowed values for '%s' property: %s\n" -msgstr "Valori consentiti per la proprietà «%s»: %s\n" - -#: ../clients/cli/connections.c:7479 ../clients/cli/connections.c:7693 +#: ../clients/cli/connections.c:7784 ../clients/cli/connections.c:8001 #, c-format msgid "Error: no setting selected; valid are [%s]\n" msgstr "Errore: selezione non impostata; valori validi sono [%s]\n" -#: ../clients/cli/connections.c:7480 +#: ../clients/cli/connections.c:7785 #, c-format msgid "use 'goto <setting>' first, or 'set <setting>.<property>'\n" -msgstr "Prima usare «goto <impostazione>» o «set <impostazione>.<proprietà >»\n" +msgstr "" +"Prima usare \"goto <impostazione>\" o \"set <impostazione>.<proprietà >\"\n" -#: ../clients/cli/connections.c:7494 ../clients/cli/connections.c:7630 -#: ../clients/cli/connections.c:7710 +#: ../clients/cli/connections.c:7799 ../clients/cli/connections.c:7938 +#: ../clients/cli/connections.c:8018 #, c-format msgid "Error: invalid setting argument '%s'; valid are [%s]\n" msgstr "" -"Errore: argomento «%s» dell'impostazione non valido; valori validi sono " +"Errore: argomento \"%s\" dell'impostazione non valido; valori validi sono " "[%s]\n" -#: ../clients/cli/connections.c:7504 +#: ../clients/cli/connections.c:7809 #, c-format msgid "Error: missing setting for '%s' property\n" -msgstr "Errore: manca l'impostazione per la proprietà «%s»\n" +msgstr "Errore: manca l'impostazione per la proprietà \"%s\"\n" -#: ../clients/cli/connections.c:7511 +#: ../clients/cli/connections.c:7816 #, c-format msgid "Error: invalid property: %s\n" -msgstr "Errore: proprità non valida: %s\n" +msgstr "Errore: proprietà non valida: %s\n" -#: ../clients/cli/connections.c:7558 +#: ../clients/cli/connections.c:7866 #, c-format msgid "Error: unknown setting '%s'\n" -msgstr "Errore: impostazione «%s» sconosciuta\n" +msgstr "Errore: impostazione \"%s\" sconosciuta\n" -#: ../clients/cli/connections.c:7571 +#: ../clients/cli/connections.c:7879 #, c-format msgid "You may edit the following properties: %s\n" msgstr "È possibile modificare le seguenti proprietà : %s\n" -#: ../clients/cli/connections.c:7615 +#: ../clients/cli/connections.c:7923 #, c-format msgid "Error: no argument given; valid are [%s]\n" msgstr "Errore: nessun argomento fornito; argomenti validi sono [%s]\n" -#: ../clients/cli/connections.c:7628 +#: ../clients/cli/connections.c:7936 #, c-format msgid "Setting '%s' is not present in the connection.\n" -msgstr "L'impostazione «%s» non è presente nella connessione.\n" +msgstr "L'impostazione \"%s\" non è presente nella connessione.\n" -#: ../clients/cli/connections.c:7669 +#: ../clients/cli/connections.c:7977 #, c-format msgid "Error: %s properties, nor it is a setting name.\n" msgstr "Errore: proprietà %s, non è nemmeno il nome di un'impostazione.\n" -#: ../clients/cli/connections.c:7694 +#: ../clients/cli/connections.c:8002 #, c-format msgid "use 'goto <setting>' first, or 'describe <setting>.<property>'\n" msgstr "" -"Prima usare «goto <impostazione>» o «describe <impostazione>.<proprietà >»\n" +"Prima usare \"goto <impostazione>\" o \"describe <impostazione>.<proprietà >" +"\"\n" -#: ../clients/cli/connections.c:7735 +#: ../clients/cli/connections.c:8043 #, c-format msgid "Error: invalid property: %s, neither a valid setting name.\n" msgstr "" "Errore: proprietà non valida: %s, non è nemmeno il nome valido di " "un'impostazione.\n" -#: ../clients/cli/connections.c:7764 +#: ../clients/cli/connections.c:8072 #, c-format msgid "Error: unknown setting: '%s'\n" -msgstr "Errore: impostazione sconosciuta: «%s»\n" +msgstr "Errore: impostazione sconosciuta: \"%s\"\n" -#: ../clients/cli/connections.c:7769 +#: ../clients/cli/connections.c:8077 #, c-format msgid "Error: '%s' setting not present in the connection\n" -msgstr "Errore: impostazione «%s» non presente nella connessione\n" +msgstr "Errore: impostazione \"%s\" non presente nella connessione\n" -#: ../clients/cli/connections.c:7794 +#: ../clients/cli/connections.c:8102 #, c-format msgid "Error: invalid property: %s%s\n" msgstr "Errore: proprietà non valida: %s%s\n" -#: ../clients/cli/connections.c:7796 +#: ../clients/cli/connections.c:8104 msgid ", neither a valid setting name" msgstr ", non è nemmeno il nome valido di un'impostazione" -#: ../clients/cli/connections.c:7813 +#: ../clients/cli/connections.c:8121 #, c-format msgid "Invalid verify option: %s\n" msgstr "Opzione di verifica non valida: %s\n" -#: ../clients/cli/connections.c:7821 +#: ../clients/cli/connections.c:8129 #, c-format msgid "Verify setting '%s': %s\n" -msgstr "Verifica dell'impostazione «%s»: %s\n" +msgstr "Verifica dell'impostazione \"%s\": %s\n" -#: ../clients/cli/connections.c:7836 +#: ../clients/cli/connections.c:8144 #, c-format msgid "Verify connection: %s\n" msgstr "Verifica della connessione: %s\n" -#: ../clients/cli/connections.c:7839 +#: ../clients/cli/connections.c:8147 #, c-format msgid "The error cannot be fixed automatically.\n" msgstr "L'errore non può essere corretto automaticamente.\n" -#: ../clients/cli/connections.c:7856 +#: ../clients/cli/connections.c:8164 #, c-format msgid "Error: invalid argument '%s'\n" -msgstr "Errore: parametro «%s» non valido\n" +msgstr "Errore: parametro \"%s\" non valido\n" -#: ../clients/cli/connections.c:7889 +#: ../clients/cli/connections.c:8197 #, c-format msgid "Error: Failed to save '%s' (%s) connection: %s\n" -msgstr "Errore: salvataggio della connessione «%s» (%s) non riuscita: %s\n" +msgstr "Errore: salvataggio della connessione \"%s\" (%s) non riuscita: %s\n" -#: ../clients/cli/connections.c:7896 +#: ../clients/cli/connections.c:8204 #, c-format msgid "Connection '%s' (%s) successfully saved.\n" -msgstr "Connessione «%s» (%s) salvata con successo.\n" +msgstr "Connessione \"%s\" (%s) salvata con successo.\n" -#: ../clients/cli/connections.c:7897 +#: ../clients/cli/connections.c:8205 #, c-format msgid "Connection '%s' (%s) successfully updated.\n" -msgstr "Connessione «%s» (%s) aggiornata con successo.\n" +msgstr "Connessione \"%s\" (%s) aggiornata con successo.\n" -#: ../clients/cli/connections.c:7930 +#: ../clients/cli/connections.c:8238 #, c-format msgid "Error: connection verification failed: %s\n" msgstr "Errore: verifica della connessione non riuscita: %s\n" -#: ../clients/cli/connections.c:7931 +#: ../clients/cli/connections.c:8239 msgid "(unknown error)" msgstr "(errore sconosciuto)" -#: ../clients/cli/connections.c:7932 +#: ../clients/cli/connections.c:8240 #, c-format msgid "You may try running 'verify fix' to fix errors.\n" -msgstr "Provare a eseguire «verify fix» per correggere gli errori.\n" +msgstr "Provare a eseguire \"verify fix\" per correggere gli errori.\n" -#: ../clients/cli/connections.c:7954 +#: ../clients/cli/connections.c:8262 #, c-format msgid "Error: connection is not saved. Type 'save' first.\n" -msgstr "Errore: la connessione non è stata salvata. Digitare «save».\n" +msgstr "Errore: la connessione non è stata salvata. Digitare \"save\".\n" -#: ../clients/cli/connections.c:7958 +#: ../clients/cli/connections.c:8266 #, c-format msgid "Error: connection is not valid: %s\n" msgstr "Errore: la connessione non è valida: %s\n" -#: ../clients/cli/connections.c:7968 +#: ../clients/cli/connections.c:8276 #, c-format msgid "Error: Cannot activate connection: %s.\n" msgstr "Errore: impossibile attivare la connessione: %s.\n" -#: ../clients/cli/connections.c:7978 +#: ../clients/cli/connections.c:8286 #, c-format msgid "Error: Failed to activate '%s' (%s) connection: %s\n" -msgstr "Errore: attivazione della connessione «%s» (%s) non riuscita: %s\n" +msgstr "Errore: attivazione della connessione \"%s\" (%s) non riuscita: %s\n" -#: ../clients/cli/connections.c:7984 +#: ../clients/cli/connections.c:8292 #, c-format msgid "Monitoring connection activation (press any key to continue)\n" msgstr "" "Monitoraggio attivazione connessione (premere un tasto per continuare)\n" -#: ../clients/cli/connections.c:8022 +#: ../clients/cli/connections.c:8330 #, c-format msgid "Error: status-line: %s\n" msgstr "Errore: status-line: %s\n" -#: ../clients/cli/connections.c:8030 +#: ../clients/cli/connections.c:8338 #, c-format msgid "Error: save-confirmation: %s\n" msgstr "Errore: save-confirmation: %s\n" -#: ../clients/cli/connections.c:8038 +#: ../clients/cli/connections.c:8346 #, c-format msgid "Error: show-secrets: %s\n" msgstr "Errore: show-secrets: %s\n" -#: ../clients/cli/connections.c:8046 +#: ../clients/cli/connections.c:8354 #, c-format msgid "Error: bad color number: '%s'; use <0-8>\n" -msgstr "Errore: codice colore errato: «%s»; usare <0-8>\n" +msgstr "Errore: codice colore errato: \"%s\"; usare <0-8>\n" -#: ../clients/cli/connections.c:8058 +#: ../clients/cli/connections.c:8366 #, c-format msgid "Current nmcli configuration:\n" msgstr "Configurazione di nmcli attuale:\n" -#: ../clients/cli/connections.c:8068 +#: ../clients/cli/connections.c:8376 #, c-format msgid "Invalid configuration option '%s'; allowed [%s]\n" -msgstr "Opzione di configurazione «%s» non valida; consentito [%s]\n" +msgstr "Opzione di configurazione \"%s\" non valida; consentito [%s]\n" -#: ../clients/cli/connections.c:8315 +#: ../clients/cli/connections.c:8631 #, c-format msgid "Error: only one of 'id', uuid, or 'path' can be provided." -msgstr "Errore: solo uno tra «id», uuid o «path» può essere fornito." +msgstr "Errore: solo uno tra \"id\", uuid o \"path\" può essere fornito." -#: ../clients/cli/connections.c:8327 ../clients/cli/connections.c:8514 -#: ../clients/cli/connections.c:8521 +#: ../clients/cli/connections.c:8643 ../clients/cli/connections.c:8830 +#: ../clients/cli/connections.c:8837 #, c-format msgid "Error: Unknown connection '%s'." -msgstr "Errore: connessione «%s» sconosciuta." +msgstr "Errore: connessione \"%s\" sconosciuta." -#: ../clients/cli/connections.c:8345 +#: ../clients/cli/connections.c:8661 #, c-format msgid "Warning: editing existing connection '%s'; 'type' argument is ignored\n" msgstr "" -"Attenzione: modifica della connessione esistente «%s»; l'argomento «type» " -"viene ignorato\n" +"Attenzione: modifica della connessione esistente \"%s\"; l'argomento \"type" +"\" viene ignorato\n" -#: ../clients/cli/connections.c:8348 +#: ../clients/cli/connections.c:8664 #, c-format msgid "" "Warning: editing existing connection '%s'; 'con-name' argument is ignored\n" msgstr "" -"Attenzione: modifica della connessione esistente «%s»; l'argomento «con-" -"name» viene ignorato\n" +"Attenzione: modifica della connessione esistente \"%s\"; l'argomento \"con-" +"name\" viene ignorato\n" -#: ../clients/cli/connections.c:8362 +#: ../clients/cli/connections.c:8678 #, c-format msgid "Valid connection types: %s\n" msgstr "Tipi di connessione validi: %s\n" -#: ../clients/cli/connections.c:8364 +#: ../clients/cli/connections.c:8680 #, c-format msgid "Error: invalid connection type; %s\n" msgstr "Errore: tipo di connessione non valido; %s\n" -#: ../clients/cli/connections.c:8403 +#: ../clients/cli/connections.c:8719 #, c-format msgid "===| nmcli interactive connection editor |===" msgstr "===| Editor interattivo di connessione nmcli |===" -#: ../clients/cli/connections.c:8406 +#: ../clients/cli/connections.c:8722 #, c-format msgid "Editing existing '%s' connection: '%s'" -msgstr "Modifica della connessione esistente «%s»: «%s»" +msgstr "Modifica della connessione esistente \"%s\": \"%s\"" -#: ../clients/cli/connections.c:8408 +#: ../clients/cli/connections.c:8724 #, c-format msgid "Adding a new '%s' connection" -msgstr "Aggiunta di una nuova connessione «%s»" +msgstr "Aggiunta di una nuova connessione \"%s\"" -#: ../clients/cli/connections.c:8410 +#: ../clients/cli/connections.c:8726 #, c-format msgid "Type 'help' or '?' for available commands." -msgstr "Digitare «help» o «?» per i comandi disponibili." +msgstr "Digitare \"help\" o \"?\" per i comandi disponibili." -#: ../clients/cli/connections.c:8412 +#: ../clients/cli/connections.c:8728 #, c-format msgid "Type 'describe [<setting>.<prop>]' for detailed property description." msgstr "" -"Digitare «describe [<impostazione>.<prop>]» per informazioni dettagliate " +"Digitare \"describe [<impostazione>.<prop>]\" per informazioni dettagliate " "sulla proprietà ." -#: ../clients/cli/connections.c:8450 +#: ../clients/cli/connections.c:8766 #, c-format msgid "Error: Failed to modify connection '%s': %s" -msgstr "Errore: modifica della connessione «%s» non riuscita: %s" +msgstr "Errore: modifica della connessione \"%s\" non riuscita: %s" -#: ../clients/cli/connections.c:8457 +#: ../clients/cli/connections.c:8773 #, c-format msgid "Connection '%s' (%s) successfully modified.\n" -msgstr "Connessione «%s» (%s) modificata con successo.\n" +msgstr "Connessione \"%s\" (%s) modificata con successo.\n" -#: ../clients/cli/connections.c:8489 +#: ../clients/cli/connections.c:8805 #, c-format msgid "Error: No arguments provided." msgstr "Errore: non è stato fornito alcun argomento." -#: ../clients/cli/connections.c:8508 +#: ../clients/cli/connections.c:8824 #, c-format msgid "Error: connection ID is missing." msgstr "Errore: manca l'ID della connessione." -#: ../clients/cli/connections.c:8530 ../clients/cli/connections.c:8543 +#: ../clients/cli/connections.c:8846 ../clients/cli/connections.c:8859 #, c-format msgid "Error: <setting>.<property> argument is missing." msgstr "Errore: manca l'argomento <impostazione>.<proprietà >." -#: ../clients/cli/connections.c:8548 +#: ../clients/cli/connections.c:8864 #, c-format msgid "Error: value for '%s' is missing." -msgstr "Errore: manca il valore per «%s»" +msgstr "Errore: manca il valore per \"%s\"" -#: ../clients/cli/connections.c:8566 +#: ../clients/cli/connections.c:8882 #, c-format msgid "Error: invalid <setting>.<property> '%s'." -msgstr "Errore: <impostazione>.<proprietà > «%s» non valida." +msgstr "Errore: <impostazione>.<proprietà > \"%s\" non valida." -#: ../clients/cli/connections.c:8574 +#: ../clients/cli/connections.c:8890 #, c-format msgid "Error: invalid or not allowed setting '%s': %s." -msgstr "Errore: impostazione «%s» non valida o non consentita: %s." +msgstr "Errore: impostazione \"%s\" non valida o non consentita: %s." -#: ../clients/cli/connections.c:8595 +#: ../clients/cli/connections.c:8911 #, c-format msgid "Error: invalid property '%s': %s." -msgstr "Errore: proprietà «%s» non valida: %s." +msgstr "Errore: proprietà \"%s\" non valida: %s." -#: ../clients/cli/connections.c:8606 +#: ../clients/cli/connections.c:8922 #, c-format msgid "Error: failed to modify %s.%s: %s." msgstr "Errore: modifica di %s.%s non riuscita: %s." -#: ../clients/cli/connections.c:8624 +#: ../clients/cli/connections.c:8940 #, c-format msgid "Error: failed to remove a value from %s.%s: %s." msgstr "Errore: rimozione di un valore da %s.%s non riuscita: %s." -#: ../clients/cli/connections.c:8661 +#: ../clients/cli/connections.c:8971 +#, c-format +msgid "Error: not all connections deleted." +msgstr "Errore: non tutte le connessioni sono state eliminate." + +#: ../clients/cli/connections.c:8972 #, c-format msgid "Error: Connection deletion failed: %s" msgstr "Errore: eliminazione connessione non riuscita: %s" -#: ../clients/cli/connections.c:8725 +#: ../clients/cli/connections.c:9034 #, c-format -msgid "Error: unknown connection: %s\n" -msgstr "Errore: connessione sconosciuta: %s\n" +msgid "Error: unknown connection '%s'\n" +msgstr "Errore: connessione sconosciuta \"%s\"\n" + +#: ../clients/cli/connections.c:9048 +#, c-format +msgid "Error: no connection provided." +msgstr "Errore: nessuna connessione fornita." #. truncate trailing ", " -#: ../clients/cli/connections.c:8762 +#: ../clients/cli/connections.c:9073 #, c-format msgid "Error: cannot delete unknown connection(s): %s." msgstr "Errore: impossibile eliminare connessioni sconosciute: %s." -#: ../clients/cli/connections.c:8785 +#: ../clients/cli/connections.c:9097 #, c-format msgid "Error: failed to reload connections: %s." msgstr "Errore: ricaricamento della connessione non riuscito: %s." -#: ../clients/cli/connections.c:8824 +#: ../clients/cli/connections.c:9136 #, c-format msgid "Error: failed to load connection: %s." msgstr "Errore: caricamento connessione non riuscita: %s." -#: ../clients/cli/connections.c:8832 +#: ../clients/cli/connections.c:9144 #, c-format msgid "Could not load file '%s'\n" -msgstr "Impossibile caricare il file «%s»\n" +msgstr "Impossibile caricare il file \"%s\"\n" -#: ../clients/cli/connections.c:9008 +#: ../clients/cli/connections.c:9323 #, c-format msgid "Error: '%s' is not valid 'connection' command." -msgstr "Errore: «%s» non è un comando «connection» valido." +msgstr "Errore: \"%s\" non è un comando \"connection\" valido." #. define some prompts #: ../clients/cli/devices.c:38 msgid "Interface: " msgstr "Interfaccia:" +#: ../clients/cli/devices.c:39 +msgid "Interface(s): " +msgstr "Interfacce: " + #. 3 -#. 17 -#: ../clients/cli/devices.c:46 ../clients/cli/devices.c:75 +#. 19 +#: ../clients/cli/devices.c:47 ../clients/cli/devices.c:78 msgid "CONNECTION" msgstr "CONNESSIONE" #. 4 -#. 18 -#: ../clients/cli/devices.c:47 ../clients/cli/devices.c:76 +#. 20 +#: ../clients/cli/devices.c:48 ../clients/cli/devices.c:79 msgid "CON-UUID" msgstr "UUID-CON" #. 2 -#: ../clients/cli/devices.c:60 +#: ../clients/cli/devices.c:61 +msgid "NM-TYPE" +msgstr "TIPO-NM" + +#. 3 +#: ../clients/cli/devices.c:62 msgid "VENDOR" msgstr "VENDOR" -#. 3 -#: ../clients/cli/devices.c:61 +#. 4 +#: ../clients/cli/devices.c:63 msgid "PRODUCT" msgstr "PRODOTTO" -#. 4 -#: ../clients/cli/devices.c:62 +#. 5 +#: ../clients/cli/devices.c:64 msgid "DRIVER" msgstr "DRIVER" -#. 5 -#: ../clients/cli/devices.c:63 +#. 6 +#: ../clients/cli/devices.c:65 msgid "DRIVER-VERSION" msgstr "VERSIONE-DRIVER" -#. 6 -#: ../clients/cli/devices.c:64 +#. 7 +#: ../clients/cli/devices.c:66 msgid "FIRMWARE-VERSION" msgstr "VERSIONE-FIRMWARE" -#. 7 -#: ../clients/cli/devices.c:65 +#. 8 +#: ../clients/cli/devices.c:67 msgid "HWADDR" msgstr "HWADDR" -#. 8 -#: ../clients/cli/devices.c:66 ../clients/tui/nmt-page-ethernet.c:86 +#. 9 +#: ../clients/cli/devices.c:68 ../clients/tui/nmt-page-ethernet.c:86 #: ../clients/tui/nmt-page-infiniband.c:97 ../clients/tui/nmt-page-vlan.c:131 #: ../clients/tui/nmt-page-wifi.c:373 msgid "MTU" msgstr "MTU" -#. 10 -#: ../clients/cli/devices.c:68 +#. 11 +#: ../clients/cli/devices.c:70 msgid "REASON" msgstr "MOTIVO" -#. 11 -#: ../clients/cli/devices.c:69 +#. 12 +#: ../clients/cli/devices.c:71 msgid "UDI" msgstr "UDI" -#. 12 -#: ../clients/cli/devices.c:70 +#. 13 +#: ../clients/cli/devices.c:72 msgid "IP-IFACE" msgstr "IP-IFACE" -#. 13 +#. 14 #. 2 -#: ../clients/cli/devices.c:71 ../clients/cli/devices.c:99 +#: ../clients/cli/devices.c:73 ../clients/cli/devices.c:104 msgid "IS-SOFTWARE" msgstr "IS-SOFTWARE" -#. 14 -#: ../clients/cli/devices.c:72 +#. 15 +#: ../clients/cli/devices.c:74 msgid "NM-MANAGED" msgstr "NM-MANAGED" -#. 16 -#: ../clients/cli/devices.c:74 +#. 17 +#: ../clients/cli/devices.c:76 msgid "FIRMWARE-MISSING" msgstr "FIRMWARE-MANCANTE" +#. 18 +#: ../clients/cli/devices.c:77 +msgid "PHYS-PORT-ID" +msgstr "ID-PORT-FIS" + +#. 22 +#: ../clients/cli/devices.c:81 +msgid "METERED" +msgstr "METERED" + #. 0 -#: ../clients/cli/devices.c:87 +#: ../clients/cli/devices.c:92 msgid "AVAILABLE-CONNECTION-PATHS" msgstr "PERC-CONNESSIONI-DISPONIBILI" #. 1 -#: ../clients/cli/devices.c:88 +#: ../clients/cli/devices.c:93 msgid "AVAILABLE-CONNECTIONS" msgstr "CONNESSIONI-DISPONIBILI" #. 0 -#: ../clients/cli/devices.c:97 +#: ../clients/cli/devices.c:102 msgid "CARRIER-DETECT" msgstr "RILEVAMENTO-PORTANTE" #. 1 -#: ../clients/cli/devices.c:98 +#: ../clients/cli/devices.c:103 msgid "SPEED" msgstr "VELOCITÀ" #. 0 -#: ../clients/cli/devices.c:108 +#: ../clients/cli/devices.c:113 msgid "CARRIER" msgstr "PORTANTE" #. 0 -#: ../clients/cli/devices.c:117 ../clients/cli/devices.c:548 +#: ../clients/cli/devices.c:122 ../clients/cli/devices.c:557 msgid "WEP" msgstr "WEP" #. 1 -#: ../clients/cli/devices.c:118 +#: ../clients/cli/devices.c:123 msgid "WPA" msgstr "WPA" #. 2 -#: ../clients/cli/devices.c:119 ../clients/cli/devices.c:556 +#: ../clients/cli/devices.c:124 ../clients/cli/devices.c:565 msgid "WPA2" msgstr "WPA2" #. 3 -#: ../clients/cli/devices.c:120 +#: ../clients/cli/devices.c:125 msgid "TKIP" msgstr "TKIP" #. 4 -#: ../clients/cli/devices.c:121 +#: ../clients/cli/devices.c:126 msgid "CCMP" msgstr "CCMP" #. 5 #. 2 -#: ../clients/cli/devices.c:122 ../clients/cli/devices.c:222 +#: ../clients/cli/devices.c:127 ../clients/cli/devices.c:229 msgid "AP" msgstr "AP" #. 6 -#: ../clients/cli/devices.c:123 +#: ../clients/cli/devices.c:128 msgid "ADHOC" msgstr "ADHOC" +#. 7 +#: ../clients/cli/devices.c:129 +msgid "2GHZ" +msgstr "2GHZ" + +#. 8 +#: ../clients/cli/devices.c:130 +msgid "5GHZ" +msgstr "5GHZ" + #. 0 -#: ../clients/cli/devices.c:132 +#: ../clients/cli/devices.c:139 msgid "CTR-FREQ" msgstr "FREQ-CTR" #. 1 -#: ../clients/cli/devices.c:133 +#: ../clients/cli/devices.c:140 msgid "RSSI" msgstr "RSSI" #. 2 -#: ../clients/cli/devices.c:134 +#: ../clients/cli/devices.c:141 msgid "CINR" msgstr "CINR" #. 3 -#: ../clients/cli/devices.c:135 +#: ../clients/cli/devices.c:142 msgid "TX-POW" msgstr "TX-POW" #. 4 -#: ../clients/cli/devices.c:136 +#: ../clients/cli/devices.c:143 msgid "BSID" msgstr "BSID" #. 0 -#: ../clients/cli/devices.c:145 ../clients/tui/nmt-page-wifi.c:227 +#: ../clients/cli/devices.c:152 ../clients/tui/nmt-page-wifi.c:227 msgid "SSID" msgstr "SSID" #. 1 -#: ../clients/cli/devices.c:146 +#: ../clients/cli/devices.c:153 msgid "SSID-HEX" msgstr "SSID-HEX" #. 2 -#: ../clients/cli/devices.c:147 ../clients/tui/nmt-page-wifi.c:361 +#: ../clients/cli/devices.c:154 ../clients/tui/nmt-page-wifi.c:361 msgid "BSSID" msgstr "BSSID" #. 3 -#: ../clients/cli/devices.c:148 +#: ../clients/cli/devices.c:155 msgid "MODE" msgstr "MODALITÀ" #. 4 -#: ../clients/cli/devices.c:149 +#: ../clients/cli/devices.c:156 msgid "CHAN" msgstr "CHAN" #. 5 -#: ../clients/cli/devices.c:150 +#: ../clients/cli/devices.c:157 msgid "FREQ" msgstr "FREQ" #. 6 -#: ../clients/cli/devices.c:151 +#: ../clients/cli/devices.c:158 msgid "RATE" msgstr "VELOCITÀ" #. 7 #. 1 -#: ../clients/cli/devices.c:152 ../clients/cli/devices.c:172 +#: ../clients/cli/devices.c:159 ../clients/cli/devices.c:179 msgid "SIGNAL" msgstr "SEGNALE" #. 8 -#: ../clients/cli/devices.c:153 +#: ../clients/cli/devices.c:160 msgid "BARS" msgstr "BARS" #. 9 -#: ../clients/cli/devices.c:154 +#: ../clients/cli/devices.c:161 msgid "SECURITY" msgstr "SICUREZZA" #. 10 -#: ../clients/cli/devices.c:155 +#: ../clients/cli/devices.c:162 msgid "WPA-FLAGS" msgstr "FLAG-WPA" #. 11 -#: ../clients/cli/devices.c:156 +#: ../clients/cli/devices.c:163 msgid "RSN-FLAGS" msgstr "FLAG-RSN" #. 14 -#: ../clients/cli/devices.c:159 +#: ../clients/cli/devices.c:166 msgid "*" msgstr "*" #. 0 #. 5 -#: ../clients/cli/devices.c:171 ../clients/cli/devices.c:225 +#: ../clients/cli/devices.c:178 ../clients/cli/devices.c:232 msgid "NSP" msgstr "NSP" #. 0 -#: ../clients/cli/devices.c:186 +#: ../clients/cli/devices.c:193 msgid "SLAVES" msgstr "SLAVE" #. 0 -#: ../clients/cli/devices.c:195 +#: ../clients/cli/devices.c:202 msgid "PARENT" msgstr "GENITORE" #. 1 -#: ../clients/cli/devices.c:196 +#: ../clients/cli/devices.c:203 msgid "ID" msgstr "ID" #. 0 -#: ../clients/cli/devices.c:205 ../clients/cli/devices.c:220 +#: ../clients/cli/devices.c:212 ../clients/cli/devices.c:227 msgid "CAPABILITIES" msgstr "CAPACITÀ" #. 1 -#: ../clients/cli/devices.c:221 +#: ../clients/cli/devices.c:228 msgid "WIFI-PROPERTIES" msgstr "PROPRIETÀ-WIFI" #. 3 -#: ../clients/cli/devices.c:223 +#: ../clients/cli/devices.c:230 msgid "WIRED-PROPERTIES" msgstr "PROPRIETÀ-VIA-CAVO" #. 4 -#: ../clients/cli/devices.c:224 +#: ../clients/cli/devices.c:231 msgid "WIMAX-PROPERTIES" msgstr "PROPRIETÀ-WIMAX" #. 10 -#: ../clients/cli/devices.c:230 ../clients/tui/nmt-page-bond.c:354 +#: ../clients/cli/devices.c:237 ../clients/tui/nmt-page-bond.c:354 msgid "BOND" msgstr "BOND" #. 11 -#: ../clients/cli/devices.c:231 ../clients/tui/nmt-page-team.c:148 +#: ../clients/cli/devices.c:238 ../clients/tui/nmt-page-team.c:148 msgid "TEAM" msgstr "TEAM" #. 12 -#: ../clients/cli/devices.c:232 ../clients/tui/nmt-page-bridge.c:77 +#: ../clients/cli/devices.c:239 ../clients/tui/nmt-page-bridge.c:77 msgid "BRIDGE" msgstr "BRIDGE" #. 14 -#: ../clients/cli/devices.c:234 +#: ../clients/cli/devices.c:241 msgid "BLUETOOTH" msgstr "BLUETOOTH" #. 15 -#: ../clients/cli/devices.c:235 +#: ../clients/cli/devices.c:242 msgid "CONNECTIONS" msgstr "CONNESSIONI" -#: ../clients/cli/devices.c:259 +#: ../clients/cli/devices.c:266 #, c-format msgid "" "Usage: nmcli device { COMMAND | help }\n" @@ -3473,17 +3602,18 @@ msgid "" "\n" " connect <ifname>\n" "\n" -" disconnect <ifname>\n" +" disconnect <ifname> ...\n" "\n" -" delete <ifname>\n" +" delete <ifname> ...\n" "\n" " wifi [list [ifname <ifname>] [bssid <BSSID>]]\n" "\n" " wifi connect <(B)SSID> [password <password>] [wep-key-type key|phrase] " "[ifname <ifname>]\n" -" [bssid <BSSID>] [name <name>] [private yes|no]\n" +" [bssid <BSSID>] [name <name>] [private yes|no] " +"[hidden yes|no]\n" "\n" -" wifi rescan [[ifname] <ifname>]\n" +" wifi rescan [ifname <ifname>] [[ssid <SSID to scan>] ...]\n" "\n" " wimax [list [ifname <ifname>] [nsp <name>]]\n" "\n" @@ -3508,14 +3638,14 @@ msgstr "" "\n" " wifi connect <(B)SSID> [password <password>] [wep-key-type key|phrase]\n" " [ifname <nomeif>] [bssid <BSSID>] [name <nome>]\n" -" [private yes|no]\n" +" [private yes|no] [hidden yes|no]\n" "\n" -" wifi rescan [[ifname] <nomeif>]\n" +" wifi rescan [ifname <nomeif>] [[ssid <SSID da analizzare] ...]\n" "\n" " wimax [list [ifname <nomeif>] [nsp <nome>]]\n" "\n" -#: ../clients/cli/devices.c:283 +#: ../clients/cli/devices.c:290 #, c-format msgid "" "Usage: nmcli device status { help }\n" @@ -3541,12 +3671,12 @@ msgstr "" " STATE - stato del device\n" " CONNESSIONE - connessione attivata sul device (se disponibile)\n" "Le colonne visualizzate possono essere modificate tramite l'opzione globale\n" -"«--fields». Il comando predefinito è «status»: «mmcli device» equivale " +"\"--fields\". Il comando predefinito è \"status\": \"mmcli device\" equivale " "quindi a\n" -"«nmcli device status».\n" +"\"nmcli device status\".\n" "\n" -#: ../clients/cli/devices.c:298 +#: ../clients/cli/devices.c:305 #, c-format msgid "" "Usage: nmcli device show { ARGUMENTS | help }\n" @@ -3565,7 +3695,7 @@ msgstr "" "Elenca i dettagli per i device o per uno specifico\n" "\n" -#: ../clients/cli/devices.c:309 +#: ../clients/cli/devices.c:316 #, c-format msgid "" "Usage: nmcli device connect { ARGUMENTS | help }\n" @@ -3587,50 +3717,52 @@ msgstr "" "Considera anche connessioni che non sono state impostate come automatiche.\n" "\n" -#: ../clients/cli/devices.c:321 +#: ../clients/cli/devices.c:328 #, c-format msgid "" "Usage: nmcli device disconnect { ARGUMENTS | help }\n" "\n" -"ARGUMENTS := <ifname>\n" +"ARGUMENTS := <ifname> ...\n" "\n" -"Disconnect the device.\n" +"Disconnect devices.\n" "The command disconnects the device and prevents it from auto-activating\n" "further connections without user/manual intervention.\n" "\n" msgstr "" "Uso: nmcli device disconnect { ARGOMENTI | help }\n" "\n" -"ARGOMENTI := <nomeif>\n" +"ARGOMENTI := <nomeif> ...\n" "\n" -"Disconnette il device.\n" -"Il comando disconnette il device e fa in modo che non possa attivare più\n" +"Disconnette dispositivi.\n" +"Il comando disconnette il dispositivo e fa in modo che non possa attivare " +"più\n" "automaticamente connessione senza un intervento dell'utente o manuale.\n" "\n" -#: ../clients/cli/devices.c:333 +#: ../clients/cli/devices.c:340 #, c-format msgid "" "Usage: nmcli device delete { ARGUMENTS | help }\n" "\n" -"ARGUMENTS := <ifname>\n" +"ARGUMENTS := <ifname> ...\n" "\n" -"Deletes the software device.\n" -"The command removes the interface. It only works for software devices\n" +"Delete the software devices.\n" +"The command removes the interfaces. It only works for software devices\n" "(like bonds, bridges, etc.). Hardware devices cannot be deleted by the\n" "command.\n" "\n" msgstr "" "Uso: mmcli device delete { ARGOMENTI | help }\n" "\n" -"ARGOMENTI := <nomeif>\n" +"ARGOMENTI := <nomeif> ...\n" "\n" -"Elimina il dispositivo software.\n" -"Il comando rimuove l'interfaccia e funziona solamente con dispositivi\n" -"software. Dispositivi hardware non possono essere eliminati dal comando.\n" +"Elimina i dispositivi software.\n" +"Il comando rimuove le interfacce e funziona solamente con dispositivi\n" +"software (come bond, bridge, ...). Dispositivi hardware non possono essere\n" +"eliminati dal comando.\n" "\n" -#: ../clients/cli/devices.c:346 +#: ../clients/cli/devices.c:353 #, c-format msgid "" "Usage: nmcli device wifi { ARGUMENTS | help }\n" @@ -3644,7 +3776,8 @@ msgid "" "\n" "ARGUMENTS := connect <(B)SSID> [password <password>] [wep-key-type key|" "phrase] [ifname <ifname>]\n" -" [bssid <BSSID>] [name <name>] [private yes|no]\n" +" [bssid <BSSID>] [name <name>] [private yes|no] [hidden " +"yes|no]\n" "\n" "Connect to a Wi-Fi network specified by SSID or BSSID. The command creates\n" "a new connection and then activates it on a device. This is a command-line\n" @@ -3655,14 +3788,17 @@ msgid "" "only open, WEP and WPA-PSK networks are supported at the moment. It is also\n" "assumed that IP configuration is obtained via DHCP.\n" "\n" -"ARGUMENTS := rescan [[ifname] <ifname>]\n" +"ARGUMENTS := rescan [ifname <ifname>] [[ssid <SSID to scan>] ...]\n" "\n" "Request that NetworkManager immediately re-scan for available access " "points.\n" "NetworkManager scans Wi-Fi networks periodically, but in some cases it " "might\n" -"be useful to start scanning manually. Note that this command does not show\n" -"the APs, use 'nmcli device wifi list' for that.\n" +"be useful to start scanning manually. 'ssid' allows scanning for a specific\n" +"SSID, which is useful for APs with hidden SSIDs. More 'ssid' parameters can " +"be\n" +"given. Note that this command does not show the APs,\n" +"use 'nmcli device wifi list' for that.\n" "\n" msgstr "" "Uso: nmcli device wifi { ARGOMENTI | help }\n" @@ -3671,7 +3807,7 @@ msgstr "" "\n" "ARGOMENTI := [list [ifname <nomeif>] [bssid <BSSID>]]\n" "\n" -"Elenca gli access point Wi-Fi disponibili. Le opzioni «ifname» e «nsp» " +"Elenca gli access point Wi-Fi disponibili. Le opzioni \"ifname\" e \"bssid\" " "possono\n" "essere usate per elencare gli access point per un'interfaccia o con un " "BSSID\n" @@ -3681,31 +3817,36 @@ msgstr "" "phrase]\n" " [ifname <nomeif>] [bssid <BSSID>] [name " "<nome>]\n" -" [private yes|no]\n" +" [private yes|no] [hidden yes|no]\n" "\n" "Connette a una rete Wi-Fi specificata da un SSID o BSSID. Il comando crea " "una\n" -"nuova connessione e la attiva su un device. Ciò equivale a fare clic su un\n" +"nuova connessione e la attiva su un dispositivo. Ciò equivale a fare clic su " +"un\n" "SSID tramite un programma grafico. Il comando crea sempre una nuova " "connessione\n" "e quindi è più che altro utile per collegarsi a nuove reti Wi-Fi. Se esiste " "già \n" -"una connessione per la rete, è consigliato attivare il profilo esiste in " -"questo\n" -"modo: nmcli con up id <nome>.\n" +"una connessione per la rete, è consigliato attivare il profilo esistente in\n" +"questo modo: nmcli con up id <nome>.\n" "Notare che, al momento, sono supportate solamente reti aperte, WEP e WPA-" "PSK.\n" "La configurazione IP si assume venga effettuata tramite DHCP.\n" "\n" -"ARGOMENTI := rescan [[ifname] <nomeif>]\n" +"ARGOMENTI := rescan [[ifname] <nomeif>] [[ssid <SSID da analizzare] ...]\n" "\n" "Richiede una nuova scansione immediata di access point.\n" "NetworkManager analizza le reti Wi-Fi periodicamente, ma in alcuni casi\n" -"potrebbe essere utile avviare una scansione manualmente. Questo comando non\n" -"mostra gli access point, usare «nmcli device wifi list» per fare ciò.\n" +"potrebbe essere utile avviare una scansione manualmente. L'argomento \"ssid" +"\"\n" +"consente di cercare un SSID specifico, utile per access point nascosti (più " +"di\n" +"un parametro \"ssid\" può essere specificato). Questo comando non mostra " +"gli\n" +"access point, usare \"nmcli device wifi list\" per fare ciò.\n" "\n" -#: ../clients/cli/devices.c:379 +#: ../clients/cli/devices.c:388 #, c-format msgid "" "Usage: nmcli device wimax { ARGUMENTS | help }\n" @@ -3724,300 +3865,361 @@ msgstr "" "\n" "ARGOMENTI := [list [ifname <nomeif>] [nsp <nome>]]\n" "\n" -"Elenca gli NSP WiMAX disponibili. Le opzioni «ifname» e «nsp» possono " +"Elenca gli NSP WiMAX disponibili. Le opzioni \"ifname\" e \"nsp\" possono " "essere\n" "usate per elencare le reti per un'interfaccia o con un NSP specifico.\n" "\n" -#: ../clients/cli/devices.c:468 ../clients/cli/devices.c:659 +#: ../clients/cli/devices.c:477 ../clients/cli/devices.c:668 msgid "(none)" msgstr "(nessuno)" -#: ../clients/cli/devices.c:536 +#: ../clients/cli/devices.c:545 #, c-format msgid "%u MHz" msgstr "%u MHz" -#: ../clients/cli/devices.c:537 +#: ../clients/cli/devices.c:546 #, c-format msgid "%u Mbit/s" msgstr "%u Mbit/s" -#: ../clients/cli/devices.c:552 +#: ../clients/cli/devices.c:561 msgid "WPA1" msgstr "WPA1" -#: ../clients/cli/devices.c:561 +#: ../clients/cli/devices.c:570 msgid "802.1X" msgstr "802.1X" -#: ../clients/cli/devices.c:577 +#: ../clients/cli/devices.c:586 msgid "Ad-Hoc" msgstr "Ad-Hoc" -#: ../clients/cli/devices.c:578 +#: ../clients/cli/devices.c:587 msgid "Infra" msgstr "Infra" -#: ../clients/cli/devices.c:579 +#: ../clients/cli/devices.c:588 msgid "N/A" msgstr "N/D" -#: ../clients/cli/devices.c:610 +#: ../clients/cli/devices.c:619 msgid "Home" msgstr "Home" -#: ../clients/cli/devices.c:613 +#: ../clients/cli/devices.c:622 msgid "Partner" msgstr "Partner" -#: ../clients/cli/devices.c:616 +#: ../clients/cli/devices.c:625 msgid "Roaming" msgstr "Roaming" -#: ../clients/cli/devices.c:774 +#: ../clients/cli/devices.c:783 msgid "Device details" msgstr "Informazioni dispositivo" -#: ../clients/cli/devices.c:786 +#: ../clients/cli/devices.c:795 #, c-format msgid "Error: 'device show': %s" -msgstr "Errore: «device show»: %s" +msgstr "Errore: \"device show\": %s" -#: ../clients/cli/devices.c:837 ../clients/cli/devices.c:840 +#: ../clients/cli/devices.c:847 ../clients/cli/devices.c:850 msgid "(unknown)" msgstr "(sconosciuto)" -#: ../clients/cli/devices.c:878 +#: ../clients/cli/devices.c:891 #, c-format msgid "%u Mb/s" msgstr "%u Mb/s" -#: ../clients/cli/devices.c:964 +#: ../clients/cli/devices.c:981 msgid "on" msgstr "on" -#: ../clients/cli/devices.c:964 +#: ../clients/cli/devices.c:981 msgid "off" msgstr "off" -#: ../clients/cli/devices.c:1238 +#: ../clients/cli/devices.c:1255 #, c-format msgid "Error: 'device status': %s" -msgstr "Errore: «device status»: %s" +msgstr "Errore: \"device status\": %s" #. Add headers -#: ../clients/cli/devices.c:1245 +#: ../clients/cli/devices.c:1262 msgid "Status of devices" msgstr "Stato dispositivi" -#: ../clients/cli/devices.c:1276 +#: ../clients/cli/devices.c:1293 #, c-format msgid "Error: invalid extra argument '%s'." -msgstr "Errore: parametro extra «%s» non valido." +msgstr "Errore: parametro extra \"%s\" non valido." -#: ../clients/cli/devices.c:1293 ../clients/cli/devices.c:1591 -#: ../clients/cli/devices.c:1741 ../clients/cli/devices.c:1828 -#: ../clients/cli/devices.c:1961 ../clients/cli/devices.c:2622 +#: ../clients/cli/devices.c:1310 ../clients/cli/devices.c:1608 +#: ../clients/cli/devices.c:2080 ../clients/cli/devices.c:2847 #, c-format msgid "Error: Device '%s' not found." -msgstr "Errore: dispositivo «%s» non trovato." +msgstr "Errore: dispositivo \"%s\" non trovato." -#: ../clients/cli/devices.c:1371 +#: ../clients/cli/devices.c:1388 #, c-format msgid "Device '%s' successfully activated with '%s'.\n" -msgstr "Dispositivo «%s» attivato con successo con «%s».\n" +msgstr "Dispositivo \"%s\" attivato con successo con \"%s\".\n" -#: ../clients/cli/devices.c:1377 +#: ../clients/cli/devices.c:1394 #, c-format msgid "Error: Connection activation failed: (%d) %s.\n" msgstr "Errore: attivazione connessione non riuscita: (%d) %s.\n" -#: ../clients/cli/devices.c:1411 +#: ../clients/cli/devices.c:1428 #, c-format msgid "Error: Failed to add/activate new connection: %s" msgstr "Errore: aggiunta/attivazione nuova connessione non riuscita: %s" -#: ../clients/cli/devices.c:1420 +#: ../clients/cli/devices.c:1437 #, c-format msgid "Error: Failed to add/activate new connection: Unknown error" msgstr "" "Errore: aggiunta/attivazione nuova connessione non riuscita: errore " "sconosciuto" -#: ../clients/cli/devices.c:1431 +#: ../clients/cli/devices.c:1448 #, c-format msgid "Connection with UUID '%s' created and activated on device '%s'\n" -msgstr "Connessione con UUID «%s» creata e attivata sul dispositivo «%s»\n" +msgstr "Connessione con UUID \"%s\" creata e attivata sul dispositivo \"%s\"\n" -#: ../clients/cli/devices.c:1495 +#: ../clients/cli/devices.c:1512 #, c-format msgid "Error: Device activation failed: %s" msgstr "Errore: attivazione device non riuscita: %s" -#: ../clients/cli/devices.c:1504 +#: ../clients/cli/devices.c:1521 #, c-format msgid "Error: Device activation failed: device was disconnected" msgstr "Errore: attivazione dispositivo non riuscita: disconnesso" -#: ../clients/cli/devices.c:1519 +#: ../clients/cli/devices.c:1536 #, c-format msgid "Device '%s' has been connected.\n" -msgstr "Il dispositivo «%s» è stato collegato.\n" +msgstr "Il dispositivo \"%s\" è stato collegato.\n" -#: ../clients/cli/devices.c:1560 ../clients/cli/devices.c:1569 -#: ../clients/cli/devices.c:1710 ../clients/cli/devices.c:1719 -#: ../clients/cli/devices.c:1798 ../clients/cli/devices.c:1806 +#: ../clients/cli/devices.c:1577 ../clients/cli/devices.c:1586 +#: ../clients/cli/devices.c:1787 ../clients/cli/devices.c:1902 #, c-format msgid "Error: No interface specified." msgstr "Errore: nessuna interfaccia specificata." -#: ../clients/cli/devices.c:1575 ../clients/cli/devices.c:1725 -#: ../clients/cli/devices.c:1812 +#: ../clients/cli/devices.c:1592 #, c-format msgid "Error: extra argument not allowed: '%s'." -msgstr "Errore: parametri extra non consentiti: «%s»." +msgstr "Errore: parametri extra non consentiti: \"%s\"." -#: ../clients/cli/devices.c:1639 ../clients/cli/devices.c:1650 +#: ../clients/cli/devices.c:1676 ../clients/cli/devices.c:1691 +#: ../clients/cli/devices.c:1755 #, c-format msgid "Device '%s' successfully disconnected.\n" -msgstr "Dispositivo «%s» scollegato con successo.\n" +msgstr "Dispositivo \"%s\" scollegato con successo.\n" + +#: ../clients/cli/devices.c:1679 +#, c-format +msgid "Device '%s' successfully removed.\n" +msgstr "Dispositivo \"%s\" rimosso con successo.\n" -#: ../clients/cli/devices.c:1664 +#: ../clients/cli/devices.c:1739 #, c-format -msgid "Error: Device '%s' (%s) disconnecting failed: %s" -msgstr "Errore: scollegamento dispositivo «%s» (%s) non riuscito: %s" +msgid "Error: not all devices disconnected." +msgstr "Errore: non tutte i dispositivi sono stati scollegati." -#: ../clients/cli/devices.c:1679 +#: ../clients/cli/devices.c:1740 +#, c-format +msgid "Error: Device '%s' (%s) disconnecting failed: %s\n" +msgstr "Errore: scollegamento dispositivo \"%s\" (%s) non riuscito: %s\n" + +#: ../clients/cli/devices.c:1807 ../clients/cli/devices.c:1929 +#, c-format +msgid "Warning: argument '%s' is duplicated.\n" +msgstr "Attenzione: argomento \"%s\" duplicato.\n" + +#: ../clients/cli/devices.c:1809 ../clients/cli/devices.c:1931 +#, c-format +msgid "Error: Device '%s' not found.\n" +msgstr "Errore: dispositivo \"%s\" non trovato.\n" + +#: ../clients/cli/devices.c:1810 ../clients/cli/devices.c:1932 +#, c-format +msgid "Error: not all devices found." +msgstr "Errore: non tutti i dispositivi sono stati trovati." + +#: ../clients/cli/devices.c:1820 ../clients/cli/devices.c:1942 #, c-format -msgid "Device '%s' has been disconnected.\n" -msgstr "Il dispositivo «%s» è stato scollegato con successo.\n" +msgid "Error: no valid device provided." +msgstr "Errore: nessun dispositivo valido fornito." -#: ../clients/cli/devices.c:1770 +#: ../clients/cli/devices.c:1864 #, c-format -msgid "Error: Device '%s' (%s) deletion failed: %s" -msgstr "Errore: eliminazione dispositivo «%s» (%s) non riuscita: %s" +msgid "Error: not all devices deleted." +msgstr "Errore: non tutti i dispositivi sono stati eliminati." -#: ../clients/cli/devices.c:1834 +#: ../clients/cli/devices.c:1865 #, c-format -msgid "Error: Device '%s' is a hardware device. It can't be deleted." +msgid "Error: Device '%s' (%s) deletion failed: %s\n" +msgstr "Errore: eliminazione dispositivo \"%s\" (%s) non riuscita: %s\n" + +#: ../clients/cli/devices.c:1923 +#, c-format +msgid "Error: Device '%s' is a hardware device. It can't be deleted.\n" msgstr "" -"Errore: il dispositivo «%s» è un dispositivo hardware: non può essere " -"eliminato." +"Errore: il dispositivo \"%s\" è un dispositivo hardware: non può essere " +"eliminato.\n" + +#: ../clients/cli/devices.c:1925 +#, c-format +msgid "Error: not all devices valid." +msgstr "Errore: non tutti i dispositivi sono validi." -#: ../clients/cli/devices.c:1904 +#: ../clients/cli/devices.c:2023 msgid "Wi-Fi scan list" msgstr "Elenco analisi Wi-Fi" -#: ../clients/cli/devices.c:1942 +#: ../clients/cli/devices.c:2061 #, c-format msgid "Error: 'device wifi': %s" -msgstr "Errore: «device wifi»: %s" +msgstr "Errore: \"device wifi\": %s" -#: ../clients/cli/devices.c:1984 ../clients/cli/devices.c:2059 +#: ../clients/cli/devices.c:2103 ../clients/cli/devices.c:2184 #, c-format msgid "Error: Access point with bssid '%s' not found." -msgstr "Errore: punto di accesso con bssid «%s» non trovato." +msgstr "Errore: punto di accesso con bssid \"%s\" non trovato." -#: ../clients/cli/devices.c:2008 ../clients/cli/devices.c:2325 -#: ../clients/cli/devices.c:2489 +#: ../clients/cli/devices.c:2130 +#, c-format +msgid "" +"Error: Device '%s' was not recognized as a Wi-Fi device, check " +"NetworkManager Wi-Fi plugin." +msgstr "" +"Errore: il dispositivo \"%s\" non è stato riconosciuto come un dispositivo " +"Wi-Fi, verificare il plugin Wi-Fi di NetworkManager." + +#: ../clients/cli/devices.c:2132 ../clients/cli/devices.c:2464 +#: ../clients/cli/devices.c:2695 #, c-format msgid "Error: Device '%s' is not a Wi-Fi device." -msgstr "Errore: il dispositivo «%s» non è un dispositivo Wi-Fi." +msgstr "Errore: il dispositivo \"%s\" non è un dispositivo Wi-Fi." -#: ../clients/cli/devices.c:2218 +#: ../clients/cli/devices.c:2344 msgid "SSID or BSSID: " msgstr "SSID o BSSID: " -#: ../clients/cli/devices.c:2223 +#: ../clients/cli/devices.c:2349 #, c-format msgid "Error: SSID or BSSID are missing." msgstr "Errore: SSID o BSSID mancante." -#: ../clients/cli/devices.c:2247 +#: ../clients/cli/devices.c:2373 #, c-format msgid "Error: bssid argument value '%s' is not a valid BSSID." -msgstr "Errore: il valore «%s» di bssid non è un BSSID valido." +msgstr "Errore: il valore \"%s\" di bssid non è un BSSID valido." -#: ../clients/cli/devices.c:2271 +#: ../clients/cli/devices.c:2397 #, c-format msgid "" "Error: wep-key-type argument value '%s' is invalid, use 'key' or 'phrase'." msgstr "" -"Errore: il valore «%s» di wep-key-type non è valido, usare «key» o «phrase»." +"Errore: il valore \"%s\" di wep-key-type non è valido, usare \"key\" o " +"\"phrase\"." -#: ../clients/cli/devices.c:2291 +#: ../clients/cli/devices.c:2417 ../clients/cli/devices.c:2430 #, c-format msgid "Error: %s: %s." msgstr "Errore: %s: %s." -#: ../clients/cli/devices.c:2306 +#: ../clients/cli/devices.c:2445 #, c-format msgid "Error: BSSID to connect to (%s) differs from bssid argument (%s)." msgstr "Error: BSSID a cui connettersi (%s) diverso dall'argomento bssid (%s)." -#: ../clients/cli/devices.c:2312 +#: ../clients/cli/devices.c:2451 #, c-format msgid "Error: Parameter '%s' is neither SSID nor BSSID." -msgstr "Errore: il parametro «%s» non è né SSID né BSSID." +msgstr "Errore: il parametro \"%s\" non è né SSID né BSSID." -#: ../clients/cli/devices.c:2327 ../clients/cli/devices.c:2491 +#: ../clients/cli/devices.c:2466 ../clients/cli/devices.c:2697 #, c-format msgid "Error: No Wi-Fi device found." msgstr "Errore: nessun dispositivo Wi-Fi trovato." -#: ../clients/cli/devices.c:2345 +#: ../clients/cli/devices.c:2486 +#, c-format +msgid "Error: Failed to scan hidden SSID: %s." +msgstr "Errore: analisi dello SSID nascosto non riuscita: %s" + +#: ../clients/cli/devices.c:2511 #, c-format msgid "Error: No network with SSID '%s' found." -msgstr "Errore: rete con SSID «%s» non trovata." +msgstr "Errore: rete con SSID \"%s\" non trovata." -#: ../clients/cli/devices.c:2347 +#: ../clients/cli/devices.c:2513 #, c-format msgid "Error: No access point with BSSID '%s' found." -msgstr "Errore: punto di accesso con BSSID «%s» non trovato." +msgstr "Errore: punto di accesso con BSSID \"%s\" non trovato." + +#: ../clients/cli/devices.c:2555 +#, c-format +msgid "" +"Warning: '%s' should be SSID for hidden APs; but it looks like a BSSID.\n" +msgstr "" +"Attenzione: \"%s\" dovrebbe essere lo SSID per AP nascosti, ma sembra un " +"BSSID.\n" -#: ../clients/cli/devices.c:2386 +#: ../clients/cli/devices.c:2569 msgid "Password: " msgstr "Password: " -#: ../clients/cli/devices.c:2518 +#: ../clients/cli/devices.c:2664 +#, c-format +msgid "Error: '%s' cannot repeat." +msgstr "Errore: impossibile ripetere \"%s\"." + +#: ../clients/cli/devices.c:2743 #, c-format msgid "Error: 'device wifi' command '%s' is not valid." -msgstr "Errore: il comando «device wifi» «%s» non è valido." +msgstr "Errore: il comando \"device wifi\" \"%s\" non è valido." -#: ../clients/cli/devices.c:2565 +#: ../clients/cli/devices.c:2790 msgid "WiMAX NSP list" msgstr "Elenco NSP WiMAX" -#: ../clients/cli/devices.c:2602 +#: ../clients/cli/devices.c:2827 #, c-format msgid "Error: 'device wimax': %s" -msgstr "Errore: «device wimax»: %s" +msgstr "Errore: \"device wimax\": %s" -#: ../clients/cli/devices.c:2645 +#: ../clients/cli/devices.c:2870 #, c-format msgid "Error: NSP with name '%s' not found." -msgstr "Errore: NSP con nome «%s» non trovato." +msgstr "Errore: NSP con nome \"%s\" non trovato." -#: ../clients/cli/devices.c:2658 +#: ../clients/cli/devices.c:2883 #, c-format msgid "Error: Device '%s' is not a WiMAX device." -msgstr "Errore: il dispositivo «%s» non è un dispositivo WiMAX." +msgstr "Errore: il dispositivo \"%s\" non è un dispositivo WiMAX." -#: ../clients/cli/devices.c:2702 +#: ../clients/cli/devices.c:2927 #, c-format msgid "Error: Access point with nsp '%s' not found." -msgstr "Errore: punto di accesso con nsp «%s» non trovato." +msgstr "Errore: punto di accesso con nsp \"%s\" non trovato." -#: ../clients/cli/devices.c:2739 +#: ../clients/cli/devices.c:2964 #, c-format msgid "Error: 'device wimax' command '%s' is not valid." -msgstr "Errore: il comando «device wimax» «%s» non è valido." +msgstr "Errore: il comando \"device wimax\" \"%s\" non è valido." -#: ../clients/cli/devices.c:2912 +#: ../clients/cli/devices.c:3140 #, c-format msgid "Error: 'dev' command '%s' is not valid." -msgstr "Errore: il comando «dev» «%s» non è valido." +msgstr "Errore: il comando \"dev\" \"%s\" non è valido." #: ../clients/cli/general.c:35 msgid "RUNNING" @@ -4133,7 +4335,8 @@ msgstr "" "Uso: mmcli general status { help }\n" "\n" "Mostra lo stato generale di NetworkManager.\n" -"L'azione predefinita è «status»: «mmcli gen» equivale a «mmcli gen status»\n" +"L'azione predefinita è \"status\": \"mmcli gen\" equivale a \"mmcli gen " +"status\"\n" "\n" #: ../clients/cli/general.c:112 @@ -4264,7 +4467,7 @@ msgstr "" "ARGOMENTI := [check]\n" "\n" "Ottiene lo stato di connettività della rete.\n" -"L'argomento opzionale «check» fa ricontrollare la connettività .\n" +"L'argomento opzionale \"check\" fa ricontrollare la connettività .\n" "\n" #: ../clients/cli/general.c:183 @@ -4435,7 +4638,7 @@ msgstr "autorizzazione" #: ../clients/cli/general.c:454 #, c-format msgid "Error: 'general permissions': %s" -msgstr "Errore: «general permissions»: %s" +msgstr "Errore: \"general permissions\": %s" #: ../clients/cli/general.c:468 msgid "NetworkManager permissions" @@ -4444,7 +4647,7 @@ msgstr "Permessi NetworkManager" #: ../clients/cli/general.c:509 #, c-format msgid "Error: 'general logging': %s" -msgstr "Errore: «general logging»: %s" +msgstr "Errore: \"general logging\": %s" #: ../clients/cli/general.c:524 msgid "NetworkManager logging" @@ -4463,18 +4666,18 @@ msgstr "Errore: impostazione della registrazione non riuscita: %s" #: ../clients/cli/general.c:668 #, c-format msgid "Error: 'general' command '%s' is not valid." -msgstr "Errore: comando «general» «%s» non valido." +msgstr "Errore: comando \"general\" \"%s\" non valido." #: ../clients/cli/general.c:686 #, c-format msgid "Error: '--fields' value '%s' is not valid here (allowed field: %s)" msgstr "" -"Errore: qui il valore «--fields» «%s» non è valido (campo consentito: %s)" +"Errore: qui il valore \"--fields\" \"%s\" non è valido (campo consentito: %s)" #: ../clients/cli/general.c:711 #, c-format msgid "Error: invalid '%s' argument: '%s' (use on/off)." -msgstr "Errore: argomento «%s» non valido: «%s» (usare on/off)" +msgstr "Errore: argomento \"%s\" non valido: \"%s\" (usare on/off)" #: ../clients/cli/general.c:722 msgid "Connectivity" @@ -4487,12 +4690,12 @@ msgstr "Rete" #: ../clients/cli/general.c:762 #, c-format msgid "Error: 'networking connectivity' command '%s' is not valid." -msgstr "Errore: il comando «networking connectivity» «%s» non è valido." +msgstr "Errore: il comando \"networking connectivity\" \"%s\" non è valido." #: ../clients/cli/general.c:778 #, c-format msgid "Error: 'networking' command '%s' is not valid." -msgstr "Errore: il comando «networking» «%s» non è valido." +msgstr "Errore: il comando \"networking\" \"%s\" non è valido." #: ../clients/cli/general.c:807 ../clients/cli/general.c:827 msgid "Radio switches" @@ -4516,7 +4719,7 @@ msgstr "Interruttore WiMAX" #: ../clients/cli/general.c:890 #, c-format msgid "Error: 'radio' command '%s' is not valid." -msgstr "Errore: il comando «radio» «%s» non è valido." +msgstr "Errore: il comando \"radio\" \"%s\" non è valido." #: ../clients/cli/nmcli.c:86 #, c-format @@ -4580,48 +4783,48 @@ msgstr "" #: ../clients/cli/nmcli.c:142 #, c-format msgid "Error: Object '%s' is unknown, try 'nmcli help'." -msgstr "Errore: l'oggetto «%s» è sconosciuto, provare «nmcli help»." +msgstr "Errore: l'oggetto \"%s\" è sconosciuto, provare \"nmcli help\"." #: ../clients/cli/nmcli.c:172 #, c-format msgid "Error: Option '--terse' is specified the second time." -msgstr "Errore: l'opzione «--terse» è stata specificata una seconda volta." +msgstr "Errore: l'opzione \"--terse\" è stata specificata una seconda volta." #: ../clients/cli/nmcli.c:177 #, c-format msgid "Error: Option '--terse' is mutually exclusive with '--pretty'." -msgstr "Errore: l'opzione «--terse» si esclude con «--pretty»." +msgstr "Errore: l'opzione \"--terse\" si esclude con \"--pretty\"." #: ../clients/cli/nmcli.c:185 #, c-format msgid "Error: Option '--pretty' is specified the second time." -msgstr "Errore: l'opzione «--pretty» è stata specificata una seconda volta." +msgstr "Errore: l'opzione \"--pretty\" è stata specificata una seconda volta." #: ../clients/cli/nmcli.c:190 #, c-format msgid "Error: Option '--pretty' is mutually exclusive with '--terse'." -msgstr "Errore: l'opzione «--pretty» si esclude con «--terse»." +msgstr "Errore: l'opzione \"--pretty\" si esclude con \"--terse\"." #: ../clients/cli/nmcli.c:200 ../clients/cli/nmcli.c:216 #: ../clients/cli/nmcli.c:245 #, c-format msgid "Error: missing argument for '%s' option." -msgstr "Errore: manca l'argomento per l'opzione «%s»." +msgstr "Errore: manca l'argomento per l'opzione \"%s\"." #: ../clients/cli/nmcli.c:209 ../clients/cli/nmcli.c:225 #, c-format msgid "Error: '%s' is not valid argument for '%s' option." -msgstr "Errore: \"%s\" non è un argomento valido per l'opzione «%s»." +msgstr "Errore: \"%s\" non è un argomento valido per l'opzione \"%s\"." #: ../clients/cli/nmcli.c:232 #, c-format msgid "Error: fields for '%s' options are missing." -msgstr "Errore: mancano i campi per le opzioni «%s»." +msgstr "Errore: mancano i campi per le opzioni \"%s\"." #: ../clients/cli/nmcli.c:250 #, c-format msgid "Error: '%s' is not a valid timeout for '%s' option." -msgstr "Errore: «%s» non è un timeout valido per l'opzione «%s»." +msgstr "Errore: \"%s\" non è un timeout valido per l'opzione \"%s\"." #: ../clients/cli/nmcli.c:257 #, c-format @@ -4631,7 +4834,7 @@ msgstr "Strumento nmcli, versione %s\n" #: ../clients/cli/nmcli.c:263 #, c-format msgid "Error: Option '%s' is unknown, try 'nmcli -help'." -msgstr "Errore: l'opzione «%s» è sconosciuta, provare «nmcli -help»." +msgstr "Errore: l'opzione \"%s\" è sconosciuta, provare \"nmcli -help\"." #: ../clients/cli/nmcli.c:346 ../clients/cli/nmcli.c:356 #, c-format @@ -4676,228 +4879,266 @@ msgstr "Errore di autenticazione: %s\n" msgid "Warning: polkit agent initialization failed: %s\n" msgstr "Attenzione: inizializzazione agente polkit non riuscita: %s\n" -#: ../clients/cli/settings.c:670 +#: ../clients/cli/settings.c:685 #, c-format msgid "%d (key)" msgstr "%d (chiave)" -#: ../clients/cli/settings.c:672 +#: ../clients/cli/settings.c:687 #, c-format msgid "%d (passphrase)" msgstr "%d (passphrase)" -#: ../clients/cli/settings.c:675 ../clients/cli/settings.c:756 +#: ../clients/cli/settings.c:690 ../clients/cli/settings.c:774 #, c-format msgid "%d (unknown)" msgstr "%d (sconosciuto)" -#: ../clients/cli/settings.c:704 +#: ../clients/cli/settings.c:719 msgid "0 (NONE)" msgstr "0 (NESSUNO)" -#: ../clients/cli/settings.c:710 +#: ../clients/cli/settings.c:725 msgid "REORDER_HEADERS, " msgstr "REORDER_HEADERS, " -#: ../clients/cli/settings.c:712 +#: ../clients/cli/settings.c:727 msgid "GVRP, " msgstr "GVRP, " -#: ../clients/cli/settings.c:714 +#: ../clients/cli/settings.c:729 msgid "LOOSE_BINDING, " msgstr "LOOSE_BINDING, " -#: ../clients/cli/settings.c:750 +#: ../clients/cli/settings.c:768 #, c-format msgid "%d (disabled)" msgstr "%d (disabilitato)" -#: ../clients/cli/settings.c:752 +#: ../clients/cli/settings.c:770 #, c-format msgid "%d (enabled, prefer public IP)" msgstr "%d (abilitato, preferire IP pubblico)" -#: ../clients/cli/settings.c:754 +#: ../clients/cli/settings.c:772 #, c-format msgid "%d (enabled, prefer temporary IP)" msgstr "%d (abilitato, preferire IP temporaneo)" -#: ../clients/cli/settings.c:766 +#: ../clients/cli/settings.c:786 +#, c-format +msgid "%d (no)" +msgstr "%d (no)" + +#: ../clients/cli/settings.c:788 +#, c-format +msgid "%d (yes)" +msgstr "%d (sì)" + +#: ../clients/cli/settings.c:791 +#, c-format +msgid "%d (default)" +msgstr "%d (predefinito)" + +#: ../clients/cli/settings.c:804 msgid "0 (none)" msgstr "0 (nessuno)" -#: ../clients/cli/settings.c:772 +#: ../clients/cli/settings.c:810 msgid "agent-owned, " msgstr "proprietà agente, " -#: ../clients/cli/settings.c:774 +#: ../clients/cli/settings.c:812 msgid "not saved, " msgstr "non salvato, " -#: ../clients/cli/settings.c:776 +#: ../clients/cli/settings.c:814 msgid "not required, " msgstr "non richiesto, " -#: ../clients/cli/settings.c:1059 +#: ../clients/cli/settings.c:1105 msgid "0 (disabled)" msgstr "0 (disabilitato)" -#: ../clients/cli/settings.c:1065 +#: ../clients/cli/settings.c:1111 msgid "enabled, " msgstr "abilitato," -#: ../clients/cli/settings.c:1067 +#: ../clients/cli/settings.c:1113 msgid "advertise, " msgstr "pubblicizza, " -#: ../clients/cli/settings.c:1069 +#: ../clients/cli/settings.c:1115 msgid "willing, " msgstr "disponibile, " -#: ../clients/cli/settings.c:1097 +#: ../clients/cli/settings.c:1143 msgid "-1 (unset)" msgstr "-1 (non impostato)" -#: ../clients/cli/settings.c:1194 ../clients/cli/settings.c:1481 -#: ../clients/cli/settings.c:1523 +#: ../clients/cli/settings.c:1240 ../clients/cli/settings.c:1517 +#: ../clients/cli/settings.c:1619 msgid "auto" msgstr "auto" -#: ../clients/cli/settings.c:1207 +#: ../clients/cli/settings.c:1253 msgid "default" msgstr "predefinito" -#: ../clients/cli/settings.c:1651 +#: ../clients/cli/settings.c:1563 +#, c-format +msgid "" +"invalid option '%s', use a combination of [%s] or 'ignore', 'default' or " +"'none'" +msgstr "" +"opzione \"%s\" non valida, usare una combinazione di [%s] o \"ignore\", " +"\"default\" oppure \"none\"" + +#: ../clients/cli/settings.c:1574 +msgid "'default' and 'ignore' are incompatible with other flags" +msgstr "\"default\" e \"ignore\" sono incompatibili con altri flag" + +#: ../clients/cli/settings.c:1750 #, c-format msgid "Do you also want to set '%s' to '%s'? [yes]: " -msgstr "Impostare anche «%s» a «%s»? [yes]: " +msgstr "Impostare anche \"%s\" a \"%s\"? [yes]: " -#: ../clients/cli/settings.c:1653 +#: ../clients/cli/settings.c:1752 #, c-format msgid "Do you also want to clear '%s'? [yes]: " -msgstr "Cancellare anche «%s»? [yes]: " +msgstr "Cancellare anche \"%s\"? [yes]: " -#: ../clients/cli/settings.c:1814 +#: ../clients/cli/settings.c:1913 #, c-format msgid "" "Warning: %s.%s set to '%s', but it might be ignored in infrastructure mode\n" msgstr "" -"Attenzione: %s.%s impostata a «%s», ma potrebbe essere ignorata in modalità " -"infrastructure\n" +"Attenzione: %s.%s impostata a \"%s\", ma potrebbe essere ignorata in " +"modalità infrastructure\n" -#: ../clients/cli/settings.c:1833 +#: ../clients/cli/settings.c:1932 #, c-format msgid "Warning: setting %s.%s requires removing ipv4 and ipv6 settings\n" msgstr "" "Attenzione: l'impostazione %s.%s richiede la rimozione delle impostazione " "ipv4 e ipv6\n" -#: ../clients/cli/settings.c:1835 +#: ../clients/cli/settings.c:1934 msgid "Do you want to remove them? [yes] " msgstr "Rimuoverli ora? [sì] " -#: ../clients/cli/settings.c:1931 ../clients/cli/settings.c:2253 -#: ../clients/cli/settings.c:4365 +#: ../clients/cli/settings.c:2030 ../clients/cli/settings.c:2425 +#: ../clients/cli/settings.c:4548 #, c-format msgid "'%s' is not valid" -msgstr "«%s» non è valido" +msgstr "\"%s\" non è valido" -#: ../clients/cli/settings.c:1954 +#: ../clients/cli/settings.c:2053 #, c-format msgid "'%d' is not valid; use <%d-%d>" -msgstr "«%d» non è valido; usare <%d-%d>" +msgstr "\"%d\" non è valido; usare <%d-%d>" -#: ../clients/cli/settings.c:1976 +#: ../clients/cli/settings.c:2075 #, c-format msgid "'%lld' is not valid; use <%lld-%lld>" -msgstr "«%lld» non è valido; usare <%lld-%lld>" +msgstr "\"%lld\" non è valido; usare <%lld-%lld>" -#: ../clients/cli/settings.c:1998 +#: ../clients/cli/settings.c:2097 #, c-format msgid "'%u' is not valid; use <%u-%u>" -msgstr "«%u» non è valido; usare <%u-%u>" +msgstr "\"%u\" non è valido; usare <%u-%u>" + +#: ../clients/cli/settings.c:2136 +#, c-format +msgid "'%u' flags are not valid; use combination of %s" +msgstr "\"%u\" flag non sono validi, usare una combinazione di %s" -#: ../clients/cli/settings.c:2064 +#: ../clients/cli/settings.c:2203 #, c-format msgid "'%s' is not valid; use <option>=<value>" -msgstr "«%s» non è valido; usare <opzione>=<valore>" +msgstr "\"%s\" non è valido; usare <opzione>=<valore>" -#: ../clients/cli/settings.c:2098 +#: ../clients/cli/settings.c:2237 #, c-format msgid "index '%s' is not valid" -msgstr "l'indice «%s» non è valido" +msgstr "l'indice \"%s\" non è valido" -#: ../clients/cli/settings.c:2103 ../clients/cli/settings.c:2128 +#: ../clients/cli/settings.c:2242 ../clients/cli/settings.c:2267 msgid "no item to remove" msgstr "nessun elemento da rimuovere" -#: ../clients/cli/settings.c:2107 ../clients/cli/settings.c:2132 +#: ../clients/cli/settings.c:2246 ../clients/cli/settings.c:2271 #, c-format msgid "index '%d' is not in range <0-%d>" -msgstr "l'indice «%d» non è nell'intervallo <0-%d>" +msgstr "l'indice \"%d\" non è nell'intervallo <0-%d>" -#: ../clients/cli/settings.c:2147 +#: ../clients/cli/settings.c:2286 #, c-format msgid "invalid option '%s'" -msgstr "opzione «%s» non valida" +msgstr "opzione \"%s\" non valida" -#: ../clients/cli/settings.c:2149 +#: ../clients/cli/settings.c:2288 msgid "missing option" msgstr "opzione mancante" -#: ../clients/cli/settings.c:2179 ../clients/cli/settings.c:2199 -#: ../clients/cli/settings.c:2219 +#: ../clients/cli/settings.c:2315 ../clients/cli/settings.c:2335 +#: ../clients/cli/settings.c:2355 ../clients/cli/settings.c:2375 #, c-format msgid "'%s' is not a valid number (or out of range)" -msgstr "«%s» non è un numero valido (o non è nell'intervallo)" +msgstr "\"%s\" non è un numero valido (o non è nell'intervallo)" + +#: ../clients/cli/settings.c:2409 +#, c-format +msgid "'%s' is not a valid value; use -1, 0 or 1" +msgstr "\"%s\" non è valore valido; usare -1, 0 o 1" -#: ../clients/cli/settings.c:2269 +#: ../clients/cli/settings.c:2441 #, c-format msgid "'%s' is not a valid Ethernet MAC" -msgstr "«%s» non è un MAC Ethernet valido" +msgstr "\"%s\" non è un MAC Ethernet valido" -#: ../clients/cli/settings.c:2294 ../libnm-core/nm-setting-connection.c:795 +#: ../clients/cli/settings.c:2466 ../libnm-core/nm-setting-connection.c:836 #: ../libnm-core/nm-setting-infiniband.c:256 #: ../libnm-util/nm-setting-connection.c:835 #: ../libnm-util/nm-setting-infiniband.c:270 #, c-format msgid "'%s' is not a valid interface name" -msgstr "«%s» non è un nome valido di interfaccia" +msgstr "\"%s\" non è un nome valido di interfaccia" -#: ../clients/cli/settings.c:2318 +#: ../clients/cli/settings.c:2490 #, c-format msgid "'%s' is not a valid flag number; use <0-%d>" -msgstr "«%s» non è un numero di flag valido; usare <0-%d>" +msgstr "\"%s\" non è un numero di flag valido; usare <0-%d>" -#: ../clients/cli/settings.c:2330 +#: ../clients/cli/settings.c:2502 #, c-format msgid "Warning: '%s' sum is higher than all flags => all flags set\n" msgstr "" -"Attenzione: la somma «%s» è maggiore di tutti i flag => tutti i flag " +"Attenzione: la somma \"%s\" è maggiore di tutti i flag => tutti i flag " "impostati\n" -#: ../clients/cli/settings.c:2371 +#: ../clients/cli/settings.c:2543 #, c-format msgid "'%s' is not a valid hex character" -msgstr "«%s» non è un carattere hex valido" +msgstr "\"%s\" non è un carattere hex valido" -#: ../clients/cli/settings.c:2401 +#: ../clients/cli/settings.c:2573 #, c-format msgid "'%s' is not a valid MAC" -msgstr "«%s» non è un MAC valido" +msgstr "\"%s\" non è un MAC valido" -#: ../clients/cli/settings.c:2438 ../libnm-core/nm-setting-connection.c:784 +#: ../clients/cli/settings.c:2599 ../libnm-core/nm-setting-connection.c:825 #: ../libnm-util/nm-setting-connection.c:792 #, c-format msgid "'%s' is not a valid UUID" -msgstr "«%s» non è uno UUID valido" +msgstr "\"%s\" non è uno UUID valido" -#: ../clients/cli/settings.c:2505 +#: ../clients/cli/settings.c:2666 #, c-format msgid "the property doesn't contain permission '%s'" -msgstr "la proprietà non contiene il permesso «%s»" +msgstr "la proprietà non contiene il permesso \"%s\"" -#: ../clients/cli/settings.c:2517 +#: ../clients/cli/settings.c:2678 msgid "" "Enter a list of user permissions. This is a list of user names formatted " "as:\n" @@ -4913,37 +5154,37 @@ msgstr "" "\n" "Esempio: mario carlo alice\n" -#: ../clients/cli/settings.c:2536 +#: ../clients/cli/settings.c:2697 #, c-format msgid "'%s' is not valid master; use ifname or connection UUID" -msgstr "«%s» non è un master valido, usare ifname o lo UUID di connessione" +msgstr "\"%s\" non è un master valido, usare ifname o lo UUID di connessione" -#: ../clients/cli/settings.c:2580 +#: ../clients/cli/settings.c:2741 #, c-format msgid "Warning: %s is not an UUID of any existing connection profile\n" msgstr "Attenzione: %s non è uno UUID di un profilo di connessione esistente\n" -#: ../clients/cli/settings.c:2584 ../clients/cli/settings.c:2600 +#: ../clients/cli/settings.c:2745 ../clients/cli/settings.c:2761 #, c-format msgid "'%s' is not a VPN connection profile" -msgstr "«%s» non è un profilo di una connessione VPN" +msgstr "\"%s\" non è un profilo di una connessione VPN" -#: ../clients/cli/settings.c:2593 +#: ../clients/cli/settings.c:2754 #, c-format msgid "'%s' is not a name of any exiting profile" -msgstr "«%s» non è il nome di un profilo esistente" +msgstr "\"%s\" non è il nome di un profilo esistente" -#: ../clients/cli/settings.c:2627 +#: ../clients/cli/settings.c:2788 #, c-format msgid "the value '%s' is not a valid UUID" -msgstr "il valore «%s» non è uno UUID valido" +msgstr "il valore \"%s\" non è uno UUID valido" -#: ../clients/cli/settings.c:2634 +#: ../clients/cli/settings.c:2795 #, c-format msgid "the property doesn't contain UUID '%s'" -msgstr "la proprietà non contiene lo UUID «%s»" +msgstr "la proprietà non contiene lo UUID \"%s\"" -#: ../clients/cli/settings.c:2646 +#: ../clients/cli/settings.c:2807 msgid "" "Enter secondary connections that should be activated when this connection " "is\n" @@ -4955,7 +5196,7 @@ msgid "" "\n" "Example: private-openvpn, fe6ba5d8-c2fc-4aae-b2e3-97efddd8d9a7\n" msgstr "" -"Digitare la connessione secondaria da attivare quando questa connessione\n" +"Inserire la connessione secondaria da attivare quando questa connessione\n" "è attivata. Le connessioni possono essere specificate per UUID o ID (nome).\n" "nmcli trasforma automaticamente i nomi in UUID. NetworkManager attualmente\n" "supporta solamente VPN come connessioni secondarie.\n" @@ -4963,16 +5204,31 @@ msgstr "" "\n" "Esempio: private-openvpn, fe6ba5d8-c2fc-4aae-b2e3-97efddd8d9a7\n" -#: ../clients/cli/settings.c:2723 +#: ../clients/cli/settings.c:2874 +msgid "" +"Enter a value which indicates whether the connection is subject to a data\n" +"quota, usage costs or other limitations. Accepted options are:\n" +"'true','yes','on' to set the connection as metered\n" +"'false','no','off' to set the connection as not metered\n" +"'unknown' to let NetworkManager choose a value using some heuristics\n" +msgstr "" +"Inserire un valore che indica se la connessione è vincolata da un limite\n" +"di dati, di costi o di altra natura. Le opzioni accettate sono:\n" +"\"true\", \"yes\", \"on\" per impostare la connessione come limitata\n" +"\"false\", \"no\", \"off\" per impostare la connessione come non limitata\n" +"\"unknown\" per consentire a NetworkManager di scegliere un valore in base\n" +"a delle euristiche\n" + +#: ../clients/cli/settings.c:2948 msgid "private key password not provided" msgstr "password della chiave privata non fornita" -#: ../clients/cli/settings.c:2750 +#: ../clients/cli/settings.c:2976 #, c-format msgid "the property doesn't contain EAP method '%s'" -msgstr "la proprietà non contiene il metodo EAP «%s»" +msgstr "la proprietà non contiene il metodo EAP \"%s\"" -#: ../clients/cli/settings.c:2765 +#: ../clients/cli/settings.c:2993 msgid "" "Enter file path to CA certificate (optionally prefixed with file://).\n" " [file://]<file path>\n" @@ -4984,13 +5240,13 @@ msgstr "" "nmcli non supporta i certificati passati come puri dati binari.\n" "Esempio: /home/mario/cacert.crt\n" -#: ../clients/cli/settings.c:2784 +#: ../clients/cli/settings.c:3012 #, c-format msgid "the property doesn't contain alternative subject match '%s'" msgstr "" -"la proprietà non contiene un oggetto alternativo che corrisponde a «%s»" +"la proprietà non contiene un oggetto alternativo che corrisponde a \"%s\"" -#: ../clients/cli/settings.c:2800 +#: ../clients/cli/settings.c:3028 msgid "" "Enter file path to client certificate (optionally prefixed with file://).\n" " [file://]<file path>\n" @@ -5003,7 +5259,7 @@ msgstr "" "nmcli non supporta i certificati passati come puri dati binari.\n" "Esempio: /home/mario/jara.crt\n" -#: ../clients/cli/settings.c:2812 +#: ../clients/cli/settings.c:3040 msgid "" "Enter file path to CA certificate for inner authentication (optionally " "prefixed\n" @@ -5018,14 +5274,14 @@ msgstr "" "nmcli non supporta i certificati passati come puri dati binari.\n" "Esempio: /home/mario/ca-zweite-phase.crt\n" -#: ../clients/cli/settings.c:2832 +#: ../clients/cli/settings.c:3060 #, c-format msgid "the property doesn't contain \"phase2\" alternative subject match '%s'" msgstr "" -"la proprietà non contiene un oggetto alternativo «phase2» che corrisponde a " -"«%s»" +"la proprietà non contiene un oggetto alternativo \"phase2\" che corrisponde " +"a \"%s\"" -#: ../clients/cli/settings.c:2848 +#: ../clients/cli/settings.c:3076 msgid "" "Enter file path to client certificate for inner authentication (optionally " "prefixed\n" @@ -5040,7 +5296,7 @@ msgstr "" "nmcli non supporta i certificati passati come puri dati binari.\n" "Esempio: /home/mario/jara-zweite-phase.crt\n" -#: ../clients/cli/settings.c:2868 +#: ../clients/cli/settings.c:3096 msgid "" "Enter path to a private key and the key password (if not set yet):\n" " [file://]<file path> [<password>]\n" @@ -5053,7 +5309,7 @@ msgstr "" "nmcli non supporta le chiavi private passate come puri dati binari.\n" "Esempio: /home/mario/jara-priv-key Passwordsicura\n" -#: ../clients/cli/settings.c:2939 +#: ../clients/cli/settings.c:3167 msgid "" "Enter bytes as a list of hexadecimal values.\n" "Two formats are accepted:\n" @@ -5074,7 +5330,7 @@ msgstr "" "Esempi: ab0455a6ea3a74C2\n" " ab 4 55 0xa6 ea 3a 74 C2\n" -#: ../clients/cli/settings.c:3042 +#: ../clients/cli/settings.c:3270 #, c-format msgid "" "Enter a list of bonding options formatted as:\n" @@ -5094,7 +5350,7 @@ msgstr "" "Digitare un elenco di opzioni strutturato in questo modo:\n" " opzione = <valore>, opzione = <valore>,... \n" "Opzioni valide sono: %s\n" -"«mode» può essere fornito come nome o numero:\n" +"\"mode\" può essere fornito come nome o numero:\n" "balance-rr = 0\n" "active-backup = 1\n" "balance-xor = 2\n" @@ -5105,32 +5361,32 @@ msgstr "" "\n" "Esempio: mode=2,miimon=120\n" -#: ../clients/cli/settings.c:3080 +#: ../clients/cli/settings.c:3301 #, c-format msgid "'%s' is not a valid InfiniBand MAC" -msgstr "«%s» non è un MAC InfiniBand valido" +msgstr "\"%s\" non è un MAC InfiniBand valido" -#: ../clients/cli/settings.c:3117 +#: ../clients/cli/settings.c:3338 #, c-format msgid "'%s' is not a valid IBoIP P_Key" -msgstr "«%s» non è una P_Key IBoIP valida" +msgstr "\"%s\" non è una P_Key IBoIP valida" -#: ../clients/cli/settings.c:3148 +#: ../clients/cli/settings.c:3369 #, c-format msgid "'%s' is not valid (the format is: ip[/prefix] [next-hop] [metric])" -msgstr "«%s» non è valido (il formato è: ip[/prefisso] [next-hop] [metrica])" +msgstr "\"%s\" non è valido (il formato è: ip[/prefisso] [next-hop] [metrica])" -#: ../clients/cli/settings.c:3196 ../clients/cli/settings.c:3215 +#: ../clients/cli/settings.c:3417 ../clients/cli/settings.c:3436 #, c-format msgid "invalid IPv4 address '%s'" -msgstr "indirizzo IPv4 «%s» non valido" +msgstr "indirizzo IPv4 \"%s\" non valido" -#: ../clients/cli/settings.c:3221 ../clients/cli/settings.c:3522 +#: ../clients/cli/settings.c:3442 ../clients/cli/settings.c:3712 #, c-format msgid "the property doesn't contain DNS server '%s'" -msgstr "la proprietà non contiene il server DNS «%s»" +msgstr "la proprietà non contiene il server DNS \"%s\"" -#: ../clients/cli/settings.c:3233 +#: ../clients/cli/settings.c:3454 msgid "" "Enter a list of IPv4 addresses of DNS servers.\n" "\n" @@ -5140,17 +5396,17 @@ msgstr "" "\n" "Esempio: 8.8.8.8, 8.8.4.4\n" -#: ../clients/cli/settings.c:3269 ../clients/cli/settings.c:3576 +#: ../clients/cli/settings.c:3490 ../clients/cli/settings.c:3766 #, c-format msgid "the property doesn't contain DNS search domain '%s'" -msgstr "la proprietà non contiene il dominio di ricerca DNS «%s»" +msgstr "la proprietà non contiene il dominio di ricerca DNS \"%s\"" -#: ../clients/cli/settings.c:3323 ../clients/cli/settings.c:3629 +#: ../clients/cli/settings.c:3544 ../clients/cli/settings.c:3819 #, c-format msgid "the property doesn't contain IP address '%s'" -msgstr "la proprietà non contiene l'indirizzo IP «%s»" +msgstr "la proprietà non contiene l'indirizzo IP \"%s\"" -#: ../clients/cli/settings.c:3336 +#: ../clients/cli/settings.c:3557 msgid "" "Enter a list of IPv4 addresses formatted as:\n" " ip[/prefix], ip[/prefix],...\n" @@ -5164,17 +5420,17 @@ msgstr "" "\n" "Esempio: 192.168.1.5/24, 10.0.0.11/24\n" -#: ../clients/cli/settings.c:3352 ../clients/cli/settings.c:3658 +#: ../clients/cli/settings.c:3573 ../clients/cli/settings.c:3848 #, c-format msgid "invalid gateway address '%s'" -msgstr "indirizzo gateway «%s» non valido" +msgstr "indirizzo gateway \"%s\" non valido" -#: ../clients/cli/settings.c:3407 ../clients/cli/settings.c:3713 +#: ../clients/cli/settings.c:3628 ../clients/cli/settings.c:3903 #, c-format msgid "the property doesn't contain route '%s'" -msgstr "la proprietà non contiene l'instradamento «%s»" +msgstr "la proprietà non contiene l'instradamento \"%s\"" -#: ../clients/cli/settings.c:3420 +#: ../clients/cli/settings.c:3641 msgid "" "Enter a list of IPv4 routes formatted as:\n" " ip[/prefix] [next-hop] [metric],...\n" @@ -5196,12 +5452,12 @@ msgstr "" "Esempio: 192.168.2.0/24 192.168.2.1 3, 10.1.0.0/16 10.0.0.254\n" " 10.1.2.0/24\n" -#: ../clients/cli/settings.c:3497 ../clients/cli/settings.c:3516 +#: ../clients/cli/settings.c:3687 ../clients/cli/settings.c:3706 #, c-format msgid "invalid IPv6 address '%s'" -msgstr "indirizzo IPv6 «%s» non valido" +msgstr "indirizzo IPv6 \"%s\" non valido" -#: ../clients/cli/settings.c:3534 +#: ../clients/cli/settings.c:3724 msgid "" "Enter a list of IPv6 addresses of DNS servers. If the IPv6 configuration " "method is 'auto' these DNS servers are appended to those (if any) returned " @@ -5213,16 +5469,16 @@ msgid "" "Example: 2607:f0d0:1002:51::4, 2607:f0d0:1002:51::1\n" msgstr "" "Digitare un elenco di indirizzi IPv6 di server DNS. Se il metodo di " -"configurazione IPv6 è «auto», questi server DNS vengono aggiunti a quelli " +"configurazione IPv6 è \"auto\", questi server DNS vengono aggiunti a quelli " "(se esistenti) forniti dalla configurazione automatica. I server DNS non " -"possono essere usati con i metodi di configurazione IPv6 «shared» o «link-" -"local», poiché non esiste una rete upstream. In tutti gli altri metodi di " +"possono essere usati con i metodi di configurazione IPv6 \"shared\" o \"link-" +"local\", poiché non esiste una rete upstream. In tutti gli altri metodi di " "configurazione IPv6, questi server DNS sono usati come i soli server DNS per " "la connessione.\n" "\n" "Esempio: 2607:f0d0:1002:51::4, 2607:f0d0:1002:51::1\n" -#: ../clients/cli/settings.c:3642 +#: ../clients/cli/settings.c:3832 msgid "" "Enter a list of IPv6 addresses formatted as:\n" " ip[/prefix], ip[/prefix],...\n" @@ -5236,7 +5492,7 @@ msgstr "" "\n" "Esempio: 2607:f0d0:1002:51::4/64, 1050:0:0:0:5:600:300c:326b\n" -#: ../clients/cli/settings.c:3726 +#: ../clients/cli/settings.c:3916 msgid "" "Enter a list of IPv6 routes formatted as:\n" " ip[/prefix] [next-hop] [metric],...\n" @@ -5252,35 +5508,35 @@ msgstr "" "Digitare un elenco di instradamenti IPv6 formattato in questo modo:\n" " ip/[prefisso] [next-hop] [metrica],... \n" "Se manca il prefisso, viene inteso come 128.\n" -"Se manca next-hop, viene inteso come «::».\n" +"Se manca next-hop, viene inteso come \"::\".\n" " Se manca la metrica, viene intesa come 0.\n" "\n" "Esempio: 2001:db8:beef:2::/64 2001:db8:beef::2, 2001:db8:beef:3::/64 2001:" "db8:beef::3 2\n" " abbe::/64 55\n" -#: ../clients/cli/settings.c:3743 ../libnm-core/nm-setting-gsm.c:317 -#: ../libnm-util/nm-setting-gsm.c:374 +#: ../clients/cli/settings.c:3933 ../libnm-core/nm-setting-gsm.c:308 +#: ../libnm-util/nm-setting-gsm.c:365 #, c-format msgid "'%s' is not a number" -msgstr "«%s» non è un numero" +msgstr "\"%s\" non è un numero" -#: ../clients/cli/settings.c:3750 +#: ../clients/cli/settings.c:3940 #, c-format msgid "'%s' is not valid; use 0, 1, or 2" -msgstr "«%s» non è valido; usare 0, 1 o 2" +msgstr "\"%s\" non è valido; usare 0, 1 o 2" -#: ../clients/cli/settings.c:3767 +#: ../clients/cli/settings.c:3957 #, c-format msgid "'%s' is not a valid channel; use <1-13>" -msgstr "«%s» non è un canale valido; usare <1-13>" +msgstr "\"%s\" non è un canale valido; usare <1-13>" -#: ../clients/cli/settings.c:3804 +#: ../clients/cli/settings.c:3994 #, c-format msgid "'%s' is not valid; use [e, o, n]" -msgstr "«%s» non è valido; usare [e, o, n]" +msgstr "\"%s\" non è valido; usare [e, o, n]" -#: ../clients/cli/settings.c:3832 +#: ../clients/cli/settings.c:4022 msgid "" "nmcli can accepts both direct JSON configuration data and a file name " "containing the configuration. In the latter case the file is read and the " @@ -5298,16 +5554,16 @@ msgstr "" "\"roundrobin\"}, \"ports\": {\"eth1\": {}, \"eth2\": {}} }\n" " set team.config /etc/mio-team.conf\n" -#: ../clients/cli/settings.c:3872 +#: ../clients/cli/settings.c:4062 msgid "no priority to remove" msgstr "nessuna priorità da rimuovere" -#: ../clients/cli/settings.c:3876 +#: ../clients/cli/settings.c:4066 #, c-format msgid "index '%d' is not in the range of <0-%d>" -msgstr "l'indice «%d» non è nell'intervallo <0-%d>" +msgstr "l'indice \"%d\" non è nell'intervallo <0-%d>" -#: ../clients/cli/settings.c:3915 +#: ../clients/cli/settings.c:4105 #, c-format msgid "" "Warning: only one mapping at a time is supported; taking the first one (%s)\n" @@ -5315,33 +5571,31 @@ msgstr "" "Attenzione: solo una associazione alla volta è supportata, viene considerata " "solo la prima (%s)\n" -#: ../clients/cli/settings.c:3922 +#: ../clients/cli/settings.c:4112 #, c-format msgid "the property doesn't contain mapping '%s'" -msgstr "la proprietà non contiene la mappatura «%s»" +msgstr "la proprietà non contiene la mappatura \"%s\"" -#: ../clients/cli/settings.c:4031 ../clients/cli/settings.c:4194 -#: ../libnm-core/nm-setting-wired.c:607 -#: ../libnm-core/nm-setting-wireless.c:785 -#: ../libnm-core/nm-setting-wireless.c:797 -#: ../libnm-util/nm-setting-wired.c:650 +#: ../clients/cli/settings.c:4221 ../clients/cli/settings.c:4377 +#: ../libnm-core/nm-setting-wired.c:646 ../libnm-core/nm-setting-wireless.c:784 +#: ../libnm-core/nm-setting-wireless.c:796 ../libnm-util/nm-setting-wired.c:647 #: ../libnm-util/nm-setting-wireless.c:842 #: ../libnm-util/nm-setting-wireless.c:856 #, c-format msgid "'%s' is not a valid MAC address" -msgstr "«%s» non è un indirizzo MAC valido" +msgstr "\"%s\" non è un indirizzo MAC valido" -#: ../clients/cli/settings.c:4037 ../clients/cli/settings.c:4200 +#: ../clients/cli/settings.c:4227 ../clients/cli/settings.c:4383 #, c-format msgid "the property doesn't contain MAC address '%s'" -msgstr "la proprietà non contiene l'indirizzo MAC «%s»" +msgstr "la proprietà non contiene l'indirizzo MAC \"%s\"" -#: ../clients/cli/settings.c:4056 +#: ../clients/cli/settings.c:4246 #, c-format msgid "'%s' is not valid; 2 or 3 strings should be provided" -msgstr "«%s» non è valido; dovrebbero essere fornite 2 o 3 stringhe" +msgstr "\"%s\" non è valido; dovrebbero essere fornite 2 o 3 stringhe" -#: ../clients/cli/settings.c:4070 +#: ../clients/cli/settings.c:4260 msgid "" "Enter a list of subchannels (comma or space separated).\n" "\n" @@ -5351,7 +5605,7 @@ msgstr "" "\n" "Esempio: 0.0.0e20 0.0.0e21 0.0.0e22\n" -#: ../clients/cli/settings.c:4120 +#: ../clients/cli/settings.c:4303 #, c-format msgid "" "Enter a list of S/390 options formatted as:\n" @@ -5362,57 +5616,57 @@ msgstr "" " opzione = <valore>, opzione = <valore>,... \n" "Opzioni valide sono: %s\n" -#: ../clients/cli/settings.c:4166 +#: ../clients/cli/settings.c:4349 #, c-format msgid "'%s' is not a valid channel" -msgstr "«%s» non è un canale valido" +msgstr "\"%s\" non è un canale valido" -#: ../clients/cli/settings.c:4172 +#: ../clients/cli/settings.c:4355 #, c-format msgid "'%ld' is not a valid channel" -msgstr "«%ld» non è un canale valido" +msgstr "\"%ld\" non è un canale valido" -#: ../clients/cli/settings.c:4259 ../clients/cli/settings.c:4297 -#: ../clients/cli/settings.c:4335 +#: ../clients/cli/settings.c:4442 ../clients/cli/settings.c:4480 +#: ../clients/cli/settings.c:4518 #, c-format msgid "the property doesn't contain protocol '%s'" -msgstr "la proprietà non contiene il protocollo «%s»" +msgstr "la proprietà non contiene il protocollo \"%s\"" -#: ../clients/cli/settings.c:4374 +#: ../clients/cli/settings.c:4557 #, c-format msgid "" "'%s' not compatible with %s '%s', please change the key or set the right %s " "first." msgstr "" -"«%s« non è compatibile con %s «%s», modificare la chiave o impostare per " +"\"%s\" non è compatibile con %s \"%s\", modificare la chiave o impostare per " "prima cosa il corretto %s." -#: ../clients/cli/settings.c:4382 +#: ../clients/cli/settings.c:4565 #, c-format msgid "WEP key is guessed to be of '%s'\n" -msgstr "La chiave WEP è ipotizzata essere di «%s»\n" +msgstr "La chiave WEP è ipotizzata essere di \"%s\"\n" -#: ../clients/cli/settings.c:4384 +#: ../clients/cli/settings.c:4567 #, c-format msgid "WEP key index set to '%d'\n" -msgstr "Indice della chiave WEP impostato a «%d»\n" +msgstr "Indice della chiave WEP impostato a \"%d\"\n" -#: ../clients/cli/settings.c:4407 +#: ../clients/cli/settings.c:4590 #, c-format msgid "'%s' not among [0 (unknown), 1 (key), 2 (passphrase)]" -msgstr "«%s» non tra [0 (sconosciuto), 1 (chiave), 2 (passphrase)]" +msgstr "\"%s\" non tra [0 (sconosciuto), 1 (chiave), 2 (passphrase)]" -#: ../clients/cli/settings.c:4423 ../clients/cli/settings.c:4426 -#: ../clients/cli/settings.c:4429 ../clients/cli/settings.c:4432 +#: ../clients/cli/settings.c:4606 ../clients/cli/settings.c:4609 +#: ../clients/cli/settings.c:4612 ../clients/cli/settings.c:4615 #, c-format msgid "" "Warning: '%s' is not compatible with '%s' type, please change or delete the " "key.\n" msgstr "" -"Attenzione: «%s» non è compatibile con il tipo «%s», modificare o eliminare " -"la chiave.\n" +"Attenzione: \"%s\" non è compatibile con il tipo \"%s\", modificare o " +"eliminare la chiave.\n" -#: ../clients/cli/settings.c:4445 +#: ../clients/cli/settings.c:4628 #, c-format msgid "" "Enter the type of WEP keys. The accepted values are: 0 or unknown, 1 or key, " @@ -5421,142 +5675,150 @@ msgstr "" "Digitare il tipo di chiavi WEP. I valori accettati sono: 0 per sconosciuto, " "1 per chiave e 2 per passphrase.\n" -#: ../clients/cli/settings.c:4458 +#: ../clients/cli/settings.c:4641 #, c-format msgid "'%s' is not a valid PSK" -msgstr "«%s» non è una PSK valida" +msgstr "\"%s\" non è una PSK valida" -#: ../clients/cli/settings.c:4502 +#: ../clients/cli/settings.c:4685 #, c-format msgid "'%s' is not a valid DCB flag" -msgstr "«%s» non è un flag DCB valido" +msgstr "\"%s\" non è un flag DCB valido" -#: ../clients/cli/settings.c:4525 +#: ../clients/cli/settings.c:4708 #, c-format msgid "'%s' is not a DCB app priority" -msgstr "«%s» non è una priorità di applicazione DCB" +msgstr "\"%s\" non è una priorità di applicazione DCB" -#: ../clients/cli/settings.c:4551 +#: ../clients/cli/settings.c:4734 msgid "must contain 8 comma-separated numbers" msgstr "deve contenere 8 numeri separati da virgole" -#: ../clients/cli/settings.c:4568 +#: ../clients/cli/settings.c:4751 #, c-format msgid "'%s' not a number between 0 and %u (inclusive) or %u" -msgstr "«%s» non è un numero tra 0 e %u (inclusivo) o %u" +msgstr "\"%s\" non è un numero tra 0 e %u (inclusivo) o %u" -#: ../clients/cli/settings.c:4571 +#: ../clients/cli/settings.c:4754 #, c-format msgid "'%s' not a number between 0 and %u (inclusive)" -msgstr "«%s» non è un numero tra 0 e %u (inclusivo)" +msgstr "\"%s\" non è un numero tra 0 e %u (inclusivo)" -#: ../clients/cli/settings.c:4593 +#: ../clients/cli/settings.c:4776 #, c-format msgid "" "Warning: changes will have no effect until '%s' includes 1 (enabled)\n" "\n" msgstr "" -"Attenzione: le modifiche non avranno alcun effetto finché «%s» include 1 " +"Attenzione: le modifiche non avranno alcun effetto finché \"%s\" include 1 " "(abilitato)\n" "\n" -#: ../clients/cli/settings.c:4646 +#: ../clients/cli/settings.c:4829 #, c-format msgid "bandwidth percentages must total 100%%" msgstr "le percentuali della banda devono totalizzare 100%%" -#: ../clients/cli/settings.c:6340 +#: ../clients/cli/settings.c:6551 msgid "don't know how to get the property value" msgstr "impossibile determinare come recuperare il valore della proprietà " -#: ../clients/cli/settings.c:6393 ../clients/cli/settings.c:6433 +#: ../clients/cli/settings.c:6604 ../clients/cli/settings.c:6644 msgid "the property can't be changed" msgstr "la proprietà non può essere modificata" -#: ../clients/cli/settings.c:6516 +#: ../clients/cli/settings.c:6728 msgid "(not available)" msgstr "(non disponibile)" -#: ../clients/cli/settings.c:6541 +#: ../clients/cli/settings.c:6753 msgid "[NM property description]" msgstr "[Descrizione proprietà NM]" -#: ../clients/cli/settings.c:6546 +#: ../clients/cli/settings.c:6758 msgid "[nmcli specific description]" msgstr "[Descrizione specifica di nmcli]" #. ---------------------------------------------------------------------------- -#: ../clients/cli/settings.c:6595 +#: ../clients/cli/settings.c:6807 msgid "<hidden>" msgstr "<nascosta>" #: ../clients/cli/utils.c:127 #, c-format msgid "Error: value for '%s' argument is required." -msgstr "Errore: è richiesto il valore per l'argomento «%s»." +msgstr "Errore: è richiesto il valore per l'argomento \"%s\"." #: ../clients/cli/utils.c:152 #, c-format msgid "Error: Argument '%s' was expected, but '%s' provided." -msgstr "Errore: atteso l'argomento «%s», ma è stato fornito «%s»." +msgstr "Errore: atteso l'argomento \"%s\", ma è stato fornito \"%s\"." #: ../clients/cli/utils.c:155 #, c-format msgid "Error: Unexpected argument '%s'" -msgstr "Errore: argomento «%s» non atteso." +msgstr "Errore: argomento \"%s\" non atteso." #: ../clients/cli/utils.c:205 #, c-format msgid "Error converting IP4 address '0x%X' to text form" -msgstr "Errore nel convertire l'indirizzo IP4 «0x%X» in formato testuale" +msgstr "Errore nel convertire l'indirizzo IP4 \"0x%X\" in formato testuale" #: ../clients/cli/utils.c:233 #, c-format msgid "Error converting IP6 address '%s' to text form" -msgstr "Errore nel convertire l'indirizzo IP6 «%s» in formato testuale" +msgstr "Errore nel convertire l'indirizzo IP6 \"%s\" in formato testuale" -#: ../clients/cli/utils.c:410 +#. Translators: the first %s is the partial value entered by +#. * the user, the second %s a list of compatible values. +#. +#: ../clients/cli/utils.c:413 ../clients/cli/utils.c:444 #, c-format -msgid "'%s' is ambiguous (on x off)" -msgstr "«%s» è ambiguo (on x off)" +msgid "'%s' is ambiguous (%s)" +msgstr "\"%s\" è ambiguo (%s)" -#: ../clients/cli/utils.c:420 +#: ../clients/cli/utils.c:423 #, c-format msgid "'%s' is not valid; use [%s] or [%s]" -msgstr "«%s» non è valido; usare [%s] o [%s]" +msgstr "\"%s\" non è valido; usare [%s] o [%s]" + +#: ../clients/cli/utils.c:456 +#, c-format +msgid "'%s' is not valid; use [%s], [%s] or [%s]" +msgstr "\"%s\" non è valido; usare [%s], [%s] o [%s]" -#: ../clients/cli/utils.c:502 +#: ../clients/cli/utils.c:555 #, c-format msgid "'%s' is ambiguous (%s x %s)" -msgstr "«%s» è ambiguo (%s x %s)" +msgstr "\"%s\" è ambiguo (%s x %s)" -#: ../clients/cli/utils.c:514 +#: ../clients/cli/utils.c:567 #, c-format msgid "missing name, try one of [%s]" msgstr "manca il nome, provare uno tra [%s]" -#: ../clients/cli/utils.c:753 +#: ../clients/cli/utils.c:808 #, c-format msgid "field '%s' has to be alone" -msgstr "il campo «%s» deve essere isolato" +msgstr "il campo \"%s\" deve essere isolato" -#: ../clients/cli/utils.c:756 +#: ../clients/cli/utils.c:811 #, c-format msgid "invalid field '%s'; allowed fields: %s" -msgstr "campo «%s» non valido; campi consentiti: %s" +msgstr "campo \"%s\" non valido; campi consentiti: %s" -#: ../clients/cli/utils.c:813 +#: ../clients/cli/utils.c:868 msgid "Option '--terse' requires specifying '--fields'" -msgstr "Con l'opzione «--terse» è necessario specificare «--fields»" +msgstr "Con l'opzione \"--terse\" è necessario specificare \"--fields\"" -#: ../clients/cli/utils.c:817 +#: ../clients/cli/utils.c:872 #, c-format msgid "Option '--terse' requires specific '--fields' option values , not '%s'" msgstr "" -"L'opzione «--terse» richiede valori specifici dell'opzione «--fields», non " -"«%s»" +"L'opzione \"--terse\" richiede valori specifici dell'opzione \"--fields\", " +"non \"%s\"" -#: ../clients/cli/utils.c:1135 +#: ../clients/cli/utils.c:1190 #, c-format msgid "" "Warning: nmcli (%s) and NetworkManager (%s) versions don't match. Use --" @@ -5565,7 +5827,7 @@ msgstr "" "Attenzione: le versioni di nmcli (%s) e NetworkManager (%s) non " "corrispondono. Usare --nocheck per disabilitare questo avviso.\n" -#: ../clients/cli/utils.c:1144 +#: ../clients/cli/utils.c:1199 #, c-format msgid "" "Error: nmcli (%s) and NetworkManager (%s) versions don't match. Force " @@ -5630,7 +5892,7 @@ msgid "" "'%s'." msgstr "" "Password o chiavi di cifratura sono richieste per accedere alla rete " -"wireless «%s»." +"wireless \"%s\"." #: ../clients/common/nm-secret-agent-simple.c:348 msgid "Wired 802.1X authentication" @@ -5667,12 +5929,12 @@ msgstr "Password rete mobile a banda larga" #: ../clients/common/nm-secret-agent-simple.c:405 #, c-format msgid "A password is required to connect to '%s'." -msgstr "È richiesta una password per collegarsi a «%s»." +msgstr "È richiesta una password per collegarsi a \"%s\"." #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rConnessione in corso" +msgid "Connecting" +msgstr "Connessione in corso" #: ../clients/nm-online.c:149 msgid "" @@ -5756,7 +6018,7 @@ msgid "InfiniBand connection %d" msgstr "Connessione InfiniBand %d" #: ../clients/tui/nm-editor-utils.c:173 ../libnm-glib/nm-device.c:1799 -#: ../libnm/nm-device.c:1621 +#: ../libnm/nm-device.c:1644 msgid "Mobile Broadband" msgstr "Banda larga mobile" @@ -5774,9 +6036,9 @@ msgstr "DSL" msgid "DSL connection %d" msgstr "Connessione DSL %d" -#: ../clients/tui/nm-editor-utils.c:191 ../libnm-core/nm-connection.c:1565 +#: ../clients/tui/nm-editor-utils.c:191 ../libnm-core/nm-connection.c:1606 #: ../libnm-glib/nm-device.c:1803 ../libnm-util/nm-connection.c:1608 -#: ../libnm/nm-device.c:1625 ../src/settings/plugins/ifcfg-rh/reader.c:3933 +#: ../libnm/nm-device.c:1648 ../src/settings/plugins/ifcfg-rh/reader.c:4059 msgid "Bond" msgstr "Aggregata" @@ -5785,9 +6047,9 @@ msgstr "Aggregata" msgid "Bond connection %d" msgstr "Connessione aggregata %d" -#: ../clients/tui/nm-editor-utils.c:200 ../libnm-core/nm-connection.c:1569 +#: ../clients/tui/nm-editor-utils.c:200 ../libnm-core/nm-connection.c:1610 #: ../libnm-glib/nm-device.c:1807 ../libnm-util/nm-connection.c:1612 -#: ../libnm/nm-device.c:1629 ../src/settings/plugins/ifcfg-rh/reader.c:4224 +#: ../libnm/nm-device.c:1652 ../src/settings/plugins/ifcfg-rh/reader.c:4350 msgid "Bridge" msgstr "Bridge" @@ -5796,9 +6058,9 @@ msgstr "Bridge" msgid "Bridge connection %d" msgstr "Connessione bridge %d" -#: ../clients/tui/nm-editor-utils.c:209 ../libnm-core/nm-connection.c:1567 +#: ../clients/tui/nm-editor-utils.c:209 ../libnm-core/nm-connection.c:1608 #: ../libnm-glib/nm-device.c:1805 ../libnm-util/nm-connection.c:1610 -#: ../libnm/nm-device.c:1627 ../src/settings/plugins/ifcfg-rh/reader.c:4039 +#: ../libnm/nm-device.c:1650 ../src/settings/plugins/ifcfg-rh/reader.c:4165 msgid "Team" msgstr "Team" @@ -5847,12 +6109,12 @@ msgstr "Mostra" #: ../clients/tui/nmt-editor.c:99 #, c-format msgid "Could not create editor for connection '%s' of type '%s'." -msgstr "Impossibile creare l'editor per la connessione «%s» di tipo «%s»." +msgstr "Impossibile creare l'editor per la connessione \"%s\" di tipo \"%s\"." #: ../clients/tui/nmt-editor.c:103 #, c-format msgid "Could not create editor for invalid connection '%s'." -msgstr "Impossibile creare l'editor per la connessione non valida «%s»." +msgstr "Impossibile creare l'editor per la connessione non valida \"%s\"." #: ../clients/tui/nmt-editor.c:113 msgid "Edit Connection" @@ -6104,7 +6366,11 @@ msgstr "Instradamento" msgid "Never use this network for default route" msgstr "Non usare mai questa rete per l'instradamento predefinito" -#: ../clients/tui/nmt-page-ip4.c:184 +#: ../clients/tui/nmt-page-ip4.c:182 ../clients/tui/nmt-page-ip6.c:180 +msgid "Ignore automatically obtained routes" +msgstr "Ignora gli instradamenti ottenuti automaticamente" + +#: ../clients/tui/nmt-page-ip4.c:190 msgid "Require IPv4 addressing for this connection" msgstr "Richiede indirizzamento IPv4 per questa connessione" @@ -6120,7 +6386,7 @@ msgstr "Automatico (solo DHCP)" msgid "IPv6 CONFIGURATION" msgstr "CONFIGURAZIONE IPv6" -#: ../clients/tui/nmt-page-ip6.c:182 +#: ../clients/tui/nmt-page-ip6.c:188 msgid "Require IPv6 addressing for this connection" msgstr "Richiede indirizzamento IPv6 per questa connessione" @@ -6353,38 +6619,38 @@ msgstr "Aggiungi..." msgid "Remove" msgstr "Rimuovi" -#: ../clients/tui/nmtui-connect.c:90 +#: ../clients/tui/nmtui-connect.c:92 msgid "Activation failed" msgstr "Attivazione non riuscita" -#: ../clients/tui/nmtui-connect.c:145 +#: ../clients/tui/nmtui-connect.c:147 msgid "Connecting..." msgstr "Connessione..." -#: ../clients/tui/nmtui-connect.c:180 ../clients/tui/nmtui-connect.c:211 +#: ../clients/tui/nmtui-connect.c:182 ../clients/tui/nmtui-connect.c:213 #, c-format msgid "Could not activate connection: %s" msgstr "Impossibile attivare la connessione: %s" -#: ../clients/tui/nmtui-connect.c:271 ../clients/tui/nmtui-connect.c:320 +#: ../clients/tui/nmtui-connect.c:273 ../clients/tui/nmtui-connect.c:322 msgid "Activate" msgstr "Attiva" -#: ../clients/tui/nmtui-connect.c:273 +#: ../clients/tui/nmtui-connect.c:275 msgid "Deactivate" msgstr "Disattiva" -#: ../clients/tui/nmtui-connect.c:325 ../clients/tui/nmtui-edit.c:121 +#: ../clients/tui/nmtui-connect.c:327 ../clients/tui/nmtui-edit.c:121 #: ../clients/tui/nmtui.c:111 msgid "Quit" msgstr "Esci" -#: ../clients/tui/nmtui-connect.c:348 +#: ../clients/tui/nmtui-connect.c:350 #, c-format msgid "No such connection '%s'" -msgstr "Connessione «%s» non trovata" +msgstr "Connessione \"%s\" non trovata" -#: ../clients/tui/nmtui-connect.c:350 +#: ../clients/tui/nmtui-connect.c:352 msgid "Connection is already active" msgstr "La connessione è già attiva" @@ -6416,12 +6682,12 @@ msgstr "Impossibile eliminare la connessione: %s" #: ../clients/tui/nmtui-edit.c:506 #, c-format msgid "Could not delete connection '%s': %s" -msgstr "Impossibile eliminare la connessione «%s»: %s" +msgstr "Impossibile eliminare la connessione \"%s\": %s" #: ../clients/tui/nmtui-edit.c:528 #, c-format msgid "Are you sure you want to delete the connection '%s'?" -msgstr "Eliminare la connessione «%s»?" +msgstr "Eliminare la connessione \"%s\"?" #: ../clients/tui/nmtui-hostname.c:47 msgid "Set Hostname" @@ -6435,7 +6701,7 @@ msgstr "Nome host" #: ../clients/tui/nmtui-hostname.c:118 #, c-format msgid "Set hostname to '%s'" -msgstr "Nome host impostato a «%s»" +msgstr "Nome host impostato a \"%s\"" #: ../clients/tui/nmtui-hostname.c:120 #, c-format @@ -6491,7 +6757,7 @@ msgstr "NetworkManager non è in esecuzione." #: ../libnm-core/crypto.c:120 ../libnm-util/crypto.c:133 #, c-format msgid "PEM key file had no end tag '%s'." -msgstr "Il file di chiave PEM non ha il tag di chiusura «%s»." +msgstr "Il file di chiave PEM non ha il tag di chiusura \"%s\"." #: ../libnm-core/crypto.c:133 ../libnm-util/crypto.c:146 #, c-format @@ -6506,7 +6772,7 @@ msgstr "File PEM malformato: Proc-Type non è il primo tag." #: ../libnm-core/crypto.c:158 ../libnm-util/crypto.c:171 #, c-format msgid "Malformed PEM file: unknown Proc-Type tag '%s'." -msgstr "File PEM malformato: tag Proc-Type «%s» sconosciuto." +msgstr "File PEM malformato: tag Proc-Type \"%s\" sconosciuto." #: ../libnm-core/crypto.c:168 ../libnm-util/crypto.c:181 #, c-format @@ -6526,7 +6792,7 @@ msgstr "File PEM malformato: formato di IV nel tag DEK-Info non valido." #: ../libnm-core/crypto.c:201 ../libnm-util/crypto.c:214 #, c-format msgid "Malformed PEM file: unknown private key cipher '%s'." -msgstr "File PEM malformato: cifrario chiave privata «%s» sconosciuto." +msgstr "File PEM malformato: cifrario chiave privata \"%s\" sconosciuto." #: ../libnm-core/crypto.c:220 ../libnm-util/crypto.c:233 #, c-format @@ -6540,7 +6806,7 @@ msgstr "Tag di apertura PKCS#8 atteso non trovato." #: ../libnm-core/crypto.c:282 ../libnm-util/crypto.c:293 #, c-format msgid "Failed to find expected PKCS#8 end tag '%s'." -msgstr "Tag di chiusura PKCS#8 «%s» atteso non trovato." +msgstr "Tag di chiusura PKCS#8 \"%s\" atteso non trovato." #: ../libnm-core/crypto.c:301 ../libnm-util/crypto.c:312 msgid "Failed to decode PKCS#8 private key." @@ -6563,7 +6829,7 @@ msgstr "IV contiene cifre non esadecimali." #: ../libnm-util/crypto_nss.c:165 ../libnm-util/crypto_nss.c:326 #, c-format msgid "Private key cipher '%s' was unknown." -msgstr "Il cifrario di chiave privata «%s» è sconosciuto." +msgstr "Il cifrario di chiave privata \"%s\" è sconosciuto." #: ../libnm-core/crypto.c:496 ../libnm-util/crypto.c:518 #, c-format @@ -6578,12 +6844,12 @@ msgstr "È stata fornita la password, ma la chiave non era cifrata." #: ../libnm-core/crypto.c:557 ../libnm-util/crypto.c:573 #, c-format msgid "PEM certificate had no start tag '%s'." -msgstr "Il certificato PEM non ha il tag di apertura «%s»." +msgstr "Il certificato PEM non ha il tag di apertura \"%s\"." #: ../libnm-core/crypto.c:566 ../libnm-util/crypto.c:582 #, c-format msgid "PEM certificate had no end tag '%s'." -msgstr "Il certificato PEM non ha il tag di chiusura «%s»." +msgstr "Il certificato PEM non ha il tag di chiusura \"%s\"." #: ../libnm-core/crypto.c:584 ../libnm-util/crypto.c:600 #, c-format @@ -6798,68 +7064,65 @@ msgstr "Impossibile verificare il file PKCS#12: %d" msgid "Could not generate random data." msgstr "Impossibile generare dati casuali." -#: ../libnm-core/nm-connection.c:225 +#: ../libnm-core/nm-connection.c:226 msgid "wrong type; should be a list of strings." msgstr "tipo errato, dovrebbe essere un elenco di stringhe." -#: ../libnm-core/nm-connection.c:280 +#: ../libnm-core/nm-connection.c:281 msgid "unknown setting name" msgstr "nome impostazione sconosciuto" -#: ../libnm-core/nm-connection.c:802 +#: ../libnm-core/nm-connection.c:805 msgid "setting not found" msgstr "impostazione non trovata" -#: ../libnm-core/nm-connection.c:866 +#: ../libnm-core/nm-connection.c:869 msgid "setting not allowed in slave connection" msgstr "impostazione non consentita nella connessione slave" -#: ../libnm-core/nm-connection.c:877 +#: ../libnm-core/nm-connection.c:880 msgid "setting is required for non-slave connections" msgstr "l'impostazione è richiesta per connessioni non slave" -#: ../libnm-core/nm-connection.c:943 +#: ../libnm-core/nm-connection.c:946 msgid "Unexpected failure to verify the connection" msgstr "Errore inatteso nel verificare la connessione" -#: ../libnm-core/nm-connection.c:976 +#: ../libnm-core/nm-connection.c:979 msgid "Unexpected failure to normalize the connection" msgstr "Errore inatteso nel normalizzare la connessione" -#: ../libnm-core/nm-connection.c:1440 ../libnm-core/nm-setting-8021x.c:2273 -#: ../libnm-core/nm-setting-8021x.c:2290 ../libnm-core/nm-setting-8021x.c:2321 -#: ../libnm-core/nm-setting-8021x.c:2338 ../libnm-core/nm-setting-8021x.c:2380 -#: ../libnm-core/nm-setting-8021x.c:2392 ../libnm-core/nm-setting-8021x.c:2410 -#: ../libnm-core/nm-setting-8021x.c:2422 ../libnm-core/nm-setting-8021x.c:2446 -#: ../libnm-core/nm-setting-8021x.c:2628 ../libnm-core/nm-setting-adsl.c:190 +#: ../libnm-core/nm-connection.c:1480 ../libnm-core/nm-setting-8021x.c:2375 +#: ../libnm-core/nm-setting-8021x.c:2392 ../libnm-core/nm-setting-8021x.c:2423 +#: ../libnm-core/nm-setting-8021x.c:2440 ../libnm-core/nm-setting-8021x.c:2482 +#: ../libnm-core/nm-setting-8021x.c:2494 ../libnm-core/nm-setting-8021x.c:2512 +#: ../libnm-core/nm-setting-8021x.c:2524 ../libnm-core/nm-setting-8021x.c:2548 +#: ../libnm-core/nm-setting-8021x.c:2713 ../libnm-core/nm-setting-adsl.c:190 #: ../libnm-core/nm-setting-bluetooth.c:121 -#: ../libnm-core/nm-setting-bluetooth.c:139 -#: ../libnm-core/nm-setting-cdma.c:142 -#: ../libnm-core/nm-setting-connection.c:768 -#: ../libnm-core/nm-setting-connection.c:807 -#: ../libnm-core/nm-setting-connection.c:908 -#: ../libnm-core/nm-setting-ip-config.c:1841 -#: ../libnm-core/nm-setting-olpc-mesh.c:113 +#: ../libnm-core/nm-setting-bluetooth.c:139 ../libnm-core/nm-setting-cdma.c:142 +#: ../libnm-core/nm-setting-connection.c:809 +#: ../libnm-core/nm-setting-connection.c:848 +#: ../libnm-core/nm-setting-connection.c:961 +#: ../libnm-core/nm-setting-ip-config.c:1844 +#: ../libnm-core/nm-setting-olpc-mesh.c:112 #: ../libnm-core/nm-setting-pppoe.c:143 ../libnm-core/nm-setting-vpn.c:400 #: ../libnm-core/nm-setting-wimax.c:117 #: ../libnm-core/nm-setting-wireless-security.c:862 -#: ../libnm-core/nm-setting-wireless.c:694 ../libnm-util/nm-setting.c:1366 -#: ../libnm-util/nm-setting.c:1385 ../libnm-util/nm-setting.c:1403 -#: ../libnm-util/nm-setting-8021x.c:2284 ../libnm-util/nm-setting-8021x.c:2301 -#: ../libnm-util/nm-setting-8021x.c:2342 ../libnm-util/nm-setting-8021x.c:2359 -#: ../libnm-util/nm-setting-8021x.c:2411 ../libnm-util/nm-setting-8021x.c:2423 -#: ../libnm-util/nm-setting-8021x.c:2441 ../libnm-util/nm-setting-8021x.c:2453 -#: ../libnm-util/nm-setting-8021x.c:2477 ../libnm-util/nm-setting-8021x.c:2655 -#: ../libnm-util/nm-setting-adsl.c:210 -#: ../libnm-util/nm-setting-bluetooth.c:143 -#: ../libnm-util/nm-setting-bluetooth.c:161 -#: ../libnm-util/nm-setting-cdma.c:163 +#: ../libnm-core/nm-setting-wireless.c:693 ../libnm-util/nm-setting.c:1372 +#: ../libnm-util/nm-setting.c:1391 ../libnm-util/nm-setting.c:1409 +#: ../libnm-util/nm-setting-8021x.c:2326 ../libnm-util/nm-setting-8021x.c:2343 +#: ../libnm-util/nm-setting-8021x.c:2384 ../libnm-util/nm-setting-8021x.c:2401 +#: ../libnm-util/nm-setting-8021x.c:2453 ../libnm-util/nm-setting-8021x.c:2465 +#: ../libnm-util/nm-setting-8021x.c:2483 ../libnm-util/nm-setting-8021x.c:2495 +#: ../libnm-util/nm-setting-8021x.c:2519 ../libnm-util/nm-setting-8021x.c:2681 +#: ../libnm-util/nm-setting-adsl.c:210 ../libnm-util/nm-setting-bluetooth.c:143 +#: ../libnm-util/nm-setting-bluetooth.c:161 ../libnm-util/nm-setting-cdma.c:163 #: ../libnm-util/nm-setting-connection.c:769 #: ../libnm-util/nm-setting-connection.c:785 #: ../libnm-util/nm-setting-connection.c:846 #: ../libnm-util/nm-setting-ip4-config.c:852 -#: ../libnm-util/nm-setting-ip6-config.c:833 -#: ../libnm-util/nm-setting-ip6-config.c:897 +#: ../libnm-util/nm-setting-ip6-config.c:835 +#: ../libnm-util/nm-setting-ip6-config.c:898 #: ../libnm-util/nm-setting-olpc-mesh.c:124 #: ../libnm-util/nm-setting-pppoe.c:164 ../libnm-util/nm-setting-vpn.c:424 #: ../libnm-util/nm-setting-wimax.c:139 @@ -6868,180 +7131,347 @@ msgstr "Errore inatteso nel normalizzare la connessione" msgid "property is missing" msgstr "manca la proprietà " -#: ../libnm-core/nm-setting-8021x.c:579 ../libnm-util/nm-setting-8021x.c:598 +#: ../libnm-core/nm-keyfile-reader.c:141 +msgid "ignoring missing number" +msgstr "numero mancante ignorato" + +#: ../libnm-core/nm-keyfile-reader.c:150 +#, c-format +msgid "ignoring invalid number '%s'" +msgstr "numero non valido \"%s\" ignorato" + +#: ../libnm-core/nm-keyfile-reader.c:170 +#, c-format +msgid "ignoring invalid %s address: %s" +msgstr "indirizzo non valido %s ignorato: %s" + +#: ../libnm-core/nm-keyfile-reader.c:210 +#, c-format +msgid "ignoring invalid gateway '%s' for %s route" +msgstr "gateway non valido \"%s\" per l'instradamento %s ignorato" + +#: ../libnm-core/nm-keyfile-reader.c:230 +#, c-format +msgid "ignoring invalid %s route: %s" +msgstr "instradamento non valido %s ignorato: %s" + +#: ../libnm-core/nm-keyfile-reader.c:348 +#, c-format +msgid "unexpected character '%c' for address %s: '%s' (position %td)" +msgstr "carattere \"%c\" non atteso per l'indirizzo %s: \"%s\" (posizione %td)" + +#: ../libnm-core/nm-keyfile-reader.c:358 +#, c-format +msgid "unexpected character '%c' for %s: '%s' (position %td)" +msgstr "carattere \"%c\" non atteso per %s: \"%s\" (posizione %td)" + +#: ../libnm-core/nm-keyfile-reader.c:367 +#, c-format +msgid "unexpected character '%c' in prefix length for %s: '%s' (position %td)" +msgstr "" +"carattere \"%c\" non atteso nella lunghezza del prefisso per %s: \"%s" +"\" (posizione %td)" + +#: ../libnm-core/nm-keyfile-reader.c:378 +#, c-format +msgid "garbage at the end of value %s: '%s'" +msgstr "dati non necessari alla fine del valore %s: \"%s\"" + +#: ../libnm-core/nm-keyfile-reader.c:384 +#, c-format +msgid "deprecated semicolon at the end of value %s: '%s'" +msgstr "punto e virgola non più supportato alla fine del valore %s: \"%s\"" + +#: ../libnm-core/nm-keyfile-reader.c:399 +#, c-format +msgid "invalid prefix length for %s '%s', defaulting to %d" +msgstr "" +"lunghezza prefisso per %s \"%s\" non valida, usato valore predefinito %d" + +#: ../libnm-core/nm-keyfile-reader.c:406 +#, c-format +msgid "missing prefix length for %s '%s', defaulting to %d" +msgstr "lunghezza prefisso per %s \"%s\" mancante, usato valore predefinito %d" + +#: ../libnm-core/nm-keyfile-reader.c:509 +#, c-format +msgid "ignoring invalid DNS server IPv4 address '%s'" +msgstr "ignorato indirizzo server DNS IPv4 \"%s\" non valido" + +#: ../libnm-core/nm-keyfile-reader.c:548 +#, c-format +msgid "ignoring invalid DNS server IPv6 address '%s'" +msgstr "ignorato indirizzo server DNS IPv6 \"%s\" non valido" + +#: ../libnm-core/nm-keyfile-reader.c:611 ../libnm-core/nm-keyfile-reader.c:752 +#: ../libnm-core/nm-keyfile-reader.c:1423 +#, c-format +msgid "ignoring invalid byte element '%d' (not between 0 and 255 inclusive)" +msgstr "" +"ignorato elemento byte \"%d\" non valido (non nell'intervallo inclusivo " +"0-255)" + +#: ../libnm-core/nm-keyfile-reader.c:625 +msgid "ignoring invalid MAC address" +msgstr "ignorato indirizzo MAC non valido" + +#: ../libnm-core/nm-keyfile-reader.c:741 +msgid "ignoring invalid binary property" +msgstr "ignorata proprietà binaria non valida" + +#: ../libnm-core/nm-keyfile-reader.c:784 +msgid "ignoring invalid SSID" +msgstr "ignorato SSID non valido" + +#: ../libnm-core/nm-keyfile-reader.c:800 +msgid "ignoring invalid raw password" +msgstr "ignorata password raw non valida" + +#: ../libnm-core/nm-keyfile-reader.c:875 ../libnm-core/nm-keyfile-reader.c:1041 +#, c-format +msgid "certificate or key file '%s' does not exist" +msgstr "il certificato o il file chiave \"%s\" non esiste" + +#: ../libnm-core/nm-keyfile-reader.c:880 +#, c-format +msgid "invalid key/cert value path \"%s\"" +msgstr "valore percorso \"%s\" chiave/certificato non valido" + +#: ../libnm-core/nm-keyfile-reader.c:918 +msgid "invalid key/cert value data:;base64, is not base64" +msgstr "valore chiave/certificato data:;base64, non è base64" + +#: ../libnm-core/nm-keyfile-reader.c:931 +msgid "invalid key/cert value data:;base64,file://" +msgstr "valore chiave/certificato data:;base64,file:// non valido" + +#: ../libnm-core/nm-keyfile-reader.c:1078 +msgid "invalid key/cert value is not a valid blob" +msgstr "valore chiave/certificato non valido non è un blob valido" + +#: ../libnm-core/nm-keyfile-reader.c:1083 +msgid "invalid key/cert value" +msgstr "valore chiave/certificato non valido" + +#: ../libnm-core/nm-keyfile-reader.c:1130 +#, c-format +msgid "invalid parity value '%s'" +msgstr "valore di parità \"%s\" non valido" + +#: ../libnm-core/nm-keyfile-reader.c:1324 +#, c-format +msgid "error loading setting value: %s" +msgstr "errore nel caricare il valore d'impostazione: %s" + +#: ../libnm-core/nm-keyfile-reader.c:1356 +#, c-format +msgid "invalid negative value (%i)" +msgstr "valore negativo non valido (%i)" + +#: ../libnm-core/nm-keyfile-reader.c:1377 +#, c-format +msgid "invalid char value (%i)" +msgstr "valore carattere non valido (%i)" + +#: ../libnm-core/nm-keyfile-reader.c:1400 +#, c-format +msgid "invalid int64 value (%s)" +msgstr "valore int64 non valido (%s)" + +#: ../libnm-core/nm-keyfile-reader.c:1459 +#, c-format +msgid "too large FLAGS property '%s' (%llu)" +msgstr "FLAG troppo grandi per la proprietà \"%s\" (%llu)" + +#: ../libnm-core/nm-keyfile-reader.c:1472 +#, c-format +msgid "unhandled setting property type '%s'" +msgstr "tipo di proprietà d'impostazione \"%s\" non gestito" + +#: ../libnm-core/nm-keyfile-reader.c:1503 +#, c-format +msgid "invalid setting name '%s'" +msgstr "nome impostazione \"%s\" non valido" + +#: ../libnm-core/nm-setting-8021x.c:412 +msgid "data missing" +msgstr "dati mancanti" + +#: ../libnm-core/nm-setting-8021x.c:444 +msgid "binary data missing" +msgstr "dati binari mancanti" + +#: ../libnm-core/nm-setting-8021x.c:461 +msgid "file:// URI not NUL terminated" +msgstr "URI fil:// non termina con NUL" + +#: ../libnm-core/nm-setting-8021x.c:470 +msgid "file:// URI is empty" +msgstr "URI file:// vuoto" + +#: ../libnm-core/nm-setting-8021x.c:478 +msgid "file:// URI is not valid UTF-8" +msgstr "URI file:// non è UTF-8 valido" + +#: ../libnm-core/nm-setting-8021x.c:677 ../libnm-util/nm-setting-8021x.c:640 msgid "CA certificate must be in X.509 format" msgstr "Il certificato CA deve essere nel formato X.509" -#: ../libnm-core/nm-setting-8021x.c:894 ../libnm-core/nm-setting-8021x.c:1158 -#: ../libnm-core/nm-setting-8021x.c:1478 ../libnm-util/nm-setting-8021x.c:916 -#: ../libnm-util/nm-setting-8021x.c:1179 ../libnm-util/nm-setting-8021x.c:1502 +#: ../libnm-core/nm-setting-8021x.c:992 ../libnm-core/nm-setting-8021x.c:1256 +#: ../libnm-core/nm-setting-8021x.c:1576 ../libnm-util/nm-setting-8021x.c:958 +#: ../libnm-util/nm-setting-8021x.c:1221 ../libnm-util/nm-setting-8021x.c:1544 msgid "invalid certificate format" msgstr "formato del certificato non valido" -#: ../libnm-core/nm-setting-8021x.c:1761 ../libnm-util/nm-setting-8021x.c:1771 +#: ../libnm-core/nm-setting-8021x.c:1859 ../libnm-util/nm-setting-8021x.c:1813 msgid "invalid private key" msgstr "chiave privata non valida" -#: ../libnm-core/nm-setting-8021x.c:2071 ../libnm-util/nm-setting-8021x.c:2082 +#: ../libnm-core/nm-setting-8021x.c:2171 ../libnm-util/nm-setting-8021x.c:2124 msgid "invalid phase2 private key" msgstr "chiave privata phase2 non valida" -#: ../libnm-core/nm-setting-8021x.c:2280 ../libnm-core/nm-setting-8021x.c:2297 -#: ../libnm-core/nm-setting-8021x.c:2328 ../libnm-core/nm-setting-8021x.c:2345 -#: ../libnm-core/nm-setting-8021x.c:2386 ../libnm-core/nm-setting-8021x.c:2398 -#: ../libnm-core/nm-setting-8021x.c:2416 ../libnm-core/nm-setting-8021x.c:2428 -#: ../libnm-core/nm-setting-8021x.c:2453 ../libnm-core/nm-setting-adsl.c:197 -#: ../libnm-core/nm-setting-adsl.c:206 ../libnm-core/nm-setting-cdma.c:158 -#: ../libnm-core/nm-setting-cdma.c:167 -#: ../libnm-core/nm-setting-connection.c:775 -#: ../libnm-core/nm-setting-connection.c:818 -#: ../libnm-core/nm-setting-gsm.c:226 ../libnm-core/nm-setting-gsm.c:283 -#: ../libnm-core/nm-setting-gsm.c:292 -#: ../libnm-core/nm-setting-ip-config.c:1848 +#: ../libnm-core/nm-setting-8021x.c:2382 ../libnm-core/nm-setting-8021x.c:2399 +#: ../libnm-core/nm-setting-8021x.c:2430 ../libnm-core/nm-setting-8021x.c:2447 +#: ../libnm-core/nm-setting-8021x.c:2488 ../libnm-core/nm-setting-8021x.c:2500 +#: ../libnm-core/nm-setting-8021x.c:2518 ../libnm-core/nm-setting-8021x.c:2530 +#: ../libnm-core/nm-setting-8021x.c:2555 ../libnm-core/nm-setting-adsl.c:197 +#: ../libnm-core/nm-setting-cdma.c:158 +#: ../libnm-core/nm-setting-connection.c:816 +#: ../libnm-core/nm-setting-connection.c:859 ../libnm-core/nm-setting-gsm.c:226 +#: ../libnm-core/nm-setting-gsm.c:283 ../libnm-core/nm-setting-ip-config.c:1851 #: ../libnm-core/nm-setting-ip4-config.c:178 #: ../libnm-core/nm-setting-pppoe.c:150 ../libnm-core/nm-setting-pppoe.c:159 #: ../libnm-core/nm-setting-vpn.c:409 ../libnm-core/nm-setting-vpn.c:419 #: ../libnm-core/nm-setting-wimax.c:126 #: ../libnm-core/nm-setting-wireless-security.c:892 -#: ../libnm-core/nm-setting-wireless-security.c:900 -#: ../libnm-core/nm-setting-wireless-security.c:924 -#: ../libnm-util/nm-setting-8021x.c:2291 ../libnm-util/nm-setting-8021x.c:2308 -#: ../libnm-util/nm-setting-8021x.c:2349 ../libnm-util/nm-setting-8021x.c:2366 -#: ../libnm-util/nm-setting-8021x.c:2417 ../libnm-util/nm-setting-8021x.c:2429 -#: ../libnm-util/nm-setting-8021x.c:2447 ../libnm-util/nm-setting-8021x.c:2459 -#: ../libnm-util/nm-setting-8021x.c:2484 ../libnm-util/nm-setting-adsl.c:217 -#: ../libnm-util/nm-setting-adsl.c:226 ../libnm-util/nm-setting-cdma.c:179 -#: ../libnm-util/nm-setting-cdma.c:188 +#: ../libnm-core/nm-setting-wireless-security.c:916 +#: ../libnm-util/nm-setting-8021x.c:2333 ../libnm-util/nm-setting-8021x.c:2350 +#: ../libnm-util/nm-setting-8021x.c:2391 ../libnm-util/nm-setting-8021x.c:2408 +#: ../libnm-util/nm-setting-8021x.c:2459 ../libnm-util/nm-setting-8021x.c:2471 +#: ../libnm-util/nm-setting-8021x.c:2489 ../libnm-util/nm-setting-8021x.c:2501 +#: ../libnm-util/nm-setting-8021x.c:2526 ../libnm-util/nm-setting-adsl.c:217 +#: ../libnm-util/nm-setting-cdma.c:179 #: ../libnm-util/nm-setting-connection.c:776 -#: ../libnm-util/nm-setting-connection.c:853 -#: ../libnm-util/nm-setting-gsm.c:283 ../libnm-util/nm-setting-gsm.c:340 -#: ../libnm-util/nm-setting-gsm.c:349 -#: ../libnm-util/nm-setting-ip4-config.c:917 +#: ../libnm-util/nm-setting-connection.c:853 ../libnm-util/nm-setting-gsm.c:283 +#: ../libnm-util/nm-setting-gsm.c:340 ../libnm-util/nm-setting-ip4-config.c:917 #: ../libnm-util/nm-setting-ip4-config.c:926 #: ../libnm-util/nm-setting-pppoe.c:171 ../libnm-util/nm-setting-pppoe.c:180 #: ../libnm-util/nm-setting-vpn.c:433 ../libnm-util/nm-setting-vpn.c:443 #: ../libnm-util/nm-setting-wimax.c:148 #: ../libnm-util/nm-setting-wireless-security.c:922 -#: ../libnm-util/nm-setting-wireless-security.c:930 -#: ../libnm-util/nm-setting-wireless-security.c:954 +#: ../libnm-util/nm-setting-wireless-security.c:946 msgid "property is empty" msgstr "la proprietà è vuota" -#: ../libnm-core/nm-setting-8021x.c:2310 ../libnm-core/nm-setting-8021x.c:2358 -#: ../libnm-util/nm-setting-8021x.c:2319 ../libnm-util/nm-setting-8021x.c:2331 -#: ../libnm-util/nm-setting-8021x.c:2377 ../libnm-util/nm-setting-8021x.c:2389 +#: ../libnm-core/nm-setting-8021x.c:2412 ../libnm-core/nm-setting-8021x.c:2460 +#: ../libnm-util/nm-setting-8021x.c:2361 ../libnm-util/nm-setting-8021x.c:2373 +#: ../libnm-util/nm-setting-8021x.c:2419 ../libnm-util/nm-setting-8021x.c:2431 #, c-format msgid "has to match '%s' property for PKCS#12" -msgstr "deve corrispondere alla proprietà «%s» per PKCS#12" +msgstr "deve corrispondere alla proprietà \"%s\" per PKCS#12" -#: ../libnm-core/nm-setting-8021x.c:2603 ../libnm-core/nm-setting-8021x.c:2637 +#: ../libnm-core/nm-setting-8021x.c:2687 +#, c-format +msgid "certificate is invalid: %s" +msgstr "certificato non valido: %s" + +#: ../libnm-core/nm-setting-8021x.c:2722 #: ../libnm-core/nm-setting-bluetooth.c:130 #: ../libnm-core/nm-setting-infiniband.c:193 #: ../libnm-core/nm-setting-infiniband.c:208 #: ../libnm-core/nm-setting-ip4-config.c:169 -#: ../libnm-core/nm-setting-ip6-config.c:166 -#: ../libnm-core/nm-setting-olpc-mesh.c:142 -#: ../libnm-core/nm-setting-wimax.c:135 ../libnm-core/nm-setting-wired.c:621 -#: ../libnm-core/nm-setting-wired.c:631 -#: ../libnm-core/nm-setting-wireless-security.c:943 -#: ../libnm-core/nm-setting-wireless-security.c:952 -#: ../libnm-core/nm-setting-wireless-security.c:960 -#: ../libnm-core/nm-setting-wireless-security.c:968 -#: ../libnm-core/nm-setting-wireless-security.c:976 -#: ../libnm-core/nm-setting-wireless-security.c:985 -#: ../libnm-core/nm-setting-wireless-security.c:994 -#: ../libnm-core/nm-setting-wireless-security.c:1003 -#: ../libnm-core/nm-setting-wireless-security.c:1039 -#: ../libnm-core/nm-setting-wireless-security.c:1049 -#: ../libnm-core/nm-setting-wireless.c:755 -#: ../libnm-core/nm-setting-wireless.c:764 -#: ../libnm-core/nm-setting-wireless.c:773 ../libnm-util/nm-setting.c:1376 -#: ../libnm-util/nm-setting.c:1394 ../libnm-util/nm-setting.c:1413 -#: ../libnm-util/nm-setting-8021x.c:2630 ../libnm-util/nm-setting-8021x.c:2664 +#: ../libnm-core/nm-setting-ip6-config.c:165 +#: ../libnm-core/nm-setting-olpc-mesh.c:141 +#: ../libnm-core/nm-setting-wimax.c:135 ../libnm-core/nm-setting-wired.c:660 +#: ../libnm-core/nm-setting-wired.c:670 +#: ../libnm-core/nm-setting-wireless-security.c:935 +#: ../libnm-core/nm-setting-wireless-security.c:944 +#: ../libnm-core/nm-setting-wireless-security.c:953 +#: ../libnm-core/nm-setting-wireless-security.c:989 +#: ../libnm-core/nm-setting-wireless-security.c:999 +#: ../libnm-core/nm-setting-wireless.c:754 +#: ../libnm-core/nm-setting-wireless.c:763 +#: ../libnm-core/nm-setting-wireless.c:772 ../libnm-util/nm-setting.c:1382 +#: ../libnm-util/nm-setting.c:1400 ../libnm-util/nm-setting.c:1419 +#: ../libnm-util/nm-setting-8021x.c:2656 ../libnm-util/nm-setting-8021x.c:2690 #: ../libnm-util/nm-setting-bluetooth.c:152 #: ../libnm-util/nm-setting-infiniband.c:206 #: ../libnm-util/nm-setting-infiniband.c:222 #: ../libnm-util/nm-setting-ip4-config.c:908 -#: ../libnm-util/nm-setting-ip6-config.c:888 +#: ../libnm-util/nm-setting-ip6-config.c:889 #: ../libnm-util/nm-setting-olpc-mesh.c:152 -#: ../libnm-util/nm-setting-wimax.c:157 ../libnm-util/nm-setting-wired.c:662 -#: ../libnm-util/nm-setting-wired.c:671 -#: ../libnm-util/nm-setting-wireless-security.c:973 -#: ../libnm-util/nm-setting-wireless-security.c:982 -#: ../libnm-util/nm-setting-wireless-security.c:990 -#: ../libnm-util/nm-setting-wireless-security.c:998 -#: ../libnm-util/nm-setting-wireless-security.c:1006 -#: ../libnm-util/nm-setting-wireless-security.c:1015 -#: ../libnm-util/nm-setting-wireless-security.c:1024 -#: ../libnm-util/nm-setting-wireless-security.c:1033 -#: ../libnm-util/nm-setting-wireless-security.c:1069 -#: ../libnm-util/nm-setting-wireless-security.c:1079 +#: ../libnm-util/nm-setting-wimax.c:157 ../libnm-util/nm-setting-wired.c:659 +#: ../libnm-util/nm-setting-wired.c:668 +#: ../libnm-util/nm-setting-wireless-security.c:965 +#: ../libnm-util/nm-setting-wireless-security.c:974 +#: ../libnm-util/nm-setting-wireless-security.c:983 +#: ../libnm-util/nm-setting-wireless-security.c:1019 +#: ../libnm-util/nm-setting-wireless-security.c:1029 #: ../libnm-util/nm-setting-wireless.c:812 #: ../libnm-util/nm-setting-wireless.c:821 #: ../libnm-util/nm-setting-wireless.c:830 msgid "property is invalid" msgstr "la proprietà non è valida" -#: ../libnm-core/nm-setting-8021x.c:2662 ../libnm-core/nm-setting-8021x.c:2672 -#: ../libnm-core/nm-setting-8021x.c:2682 ../libnm-core/nm-setting-8021x.c:2692 -#: ../libnm-core/nm-setting-8021x.c:2702 ../libnm-core/nm-setting-adsl.c:218 -#: ../libnm-core/nm-setting-adsl.c:230 -#: ../libnm-core/nm-setting-bluetooth.c:147 +#: ../libnm-core/nm-setting-8021x.c:2747 ../libnm-core/nm-setting-8021x.c:2757 +#: ../libnm-core/nm-setting-8021x.c:2767 ../libnm-core/nm-setting-8021x.c:2777 +#: ../libnm-core/nm-setting-8021x.c:2787 ../libnm-core/nm-setting-adsl.c:209 +#: ../libnm-core/nm-setting-adsl.c:221 ../libnm-core/nm-setting-bluetooth.c:147 #: ../libnm-core/nm-setting-wireless-security.c:871 -#: ../libnm-util/nm-setting-8021x.c:2689 ../libnm-util/nm-setting-8021x.c:2699 -#: ../libnm-util/nm-setting-8021x.c:2709 ../libnm-util/nm-setting-8021x.c:2719 -#: ../libnm-util/nm-setting-8021x.c:2729 ../libnm-util/nm-setting-adsl.c:238 -#: ../libnm-util/nm-setting-adsl.c:250 -#: ../libnm-util/nm-setting-bluetooth.c:169 +#: ../libnm-util/nm-setting-8021x.c:2715 ../libnm-util/nm-setting-8021x.c:2725 +#: ../libnm-util/nm-setting-8021x.c:2735 ../libnm-util/nm-setting-8021x.c:2745 +#: ../libnm-util/nm-setting-8021x.c:2755 ../libnm-util/nm-setting-adsl.c:229 +#: ../libnm-util/nm-setting-adsl.c:241 ../libnm-util/nm-setting-bluetooth.c:169 #: ../libnm-util/nm-setting-wireless-security.c:901 #, c-format msgid "'%s' is not a valid value for the property" -msgstr "«%s» non è un valore valido per la proprietà " +msgstr "\"%s\" non è un valore valido per la proprietà " #: ../libnm-core/nm-setting-bluetooth.c:169 #, c-format msgid "'%s' connection requires '%s' or '%s' setting" -msgstr "la connessione «%s» richiede «%s» o l'impostazione «%s»" +msgstr "la connessione \"%s\" richiede \"%s\" o l'impostazione \"%s\"" #: ../libnm-core/nm-setting-bond.c:455 ../libnm-util/nm-setting-bond.c:503 #, c-format msgid "invalid option '%s' or its value '%s'" -msgstr "opzione «%s» o il suo valore «%s» non valido" +msgstr "opzione \"%s\" o il suo valore \"%s\" non valido" #: ../libnm-core/nm-setting-bond.c:474 ../libnm-util/nm-setting-bond.c:522 #, c-format msgid "only one of '%s' and '%s' can be set" -msgstr "solo uno tra «%s» e «%s» può essere impostato" +msgstr "solo uno tra \"%s\" e \"%s\" può essere impostato" #: ../libnm-core/nm-setting-bond.c:486 ../libnm-util/nm-setting-bond.c:533 #, c-format msgid "mandatory option '%s' is missing" -msgstr "manca l'opzione obbligatoria «%s»" +msgstr "manca l'opzione obbligatoria \"%s\"" #: ../libnm-core/nm-setting-bond.c:496 ../libnm-util/nm-setting-bond.c:542 #, c-format msgid "'%s' is not a valid value for '%s'" -msgstr "«%s» non è un valore valido per «%s»" +msgstr "\"%s\" non è un valore valido per \"%s\"" #: ../libnm-core/nm-setting-bond.c:510 ../libnm-util/nm-setting-bond.c:555 #, c-format msgid "'%s=%s' is incompatible with '%s > 0'" -msgstr "«%s=%s» non è compatibile con «%s > 0»" +msgstr "\"%s=%s\" non è compatibile con \"%s > 0\"" #: ../libnm-core/nm-setting-bond.c:523 ../libnm-util/nm-setting-bond.c:568 #, c-format msgid "'%s' is not a valid interface name for '%s' option" -msgstr "«%s» non è un nome valido di interfaccia per l'opzione «%s»" +msgstr "\"%s\" non è un nome valido di interfaccia per l'opzione \"%s\"" #: ../libnm-core/nm-setting-bond.c:533 ../libnm-util/nm-setting-bond.c:578 #, c-format msgid "'%s' option is only valid for '%s=%s'" -msgstr "l'opzione «%s» è valida solamente per «%s=%s»" +msgstr "l'opzione \"%s\" è valida solamente per \"%s=%s\"" #: ../libnm-core/nm-setting-bond.c:546 ../libnm-util/nm-setting-bond.c:591 #, c-format msgid "'%s=%s' is not a valid configuration for '%s'" -msgstr "«%s=%s» non è una configurazione valida per «%s»" +msgstr "\"%s=%s\" non è una configurazione valida per \"%s\"" #: ../libnm-core/nm-setting-bond.c:559 ../libnm-core/nm-setting-bond.c:568 #: ../libnm-core/nm-setting-bond.c:588 ../libnm-core/nm-setting-bond.c:624 @@ -7049,27 +7479,27 @@ msgstr "«%s=%s» non è una configurazione valida per «%s»" #: ../libnm-util/nm-setting-bond.c:633 ../libnm-util/nm-setting-bond.c:669 #, c-format msgid "'%s' option requires '%s' option to be set" -msgstr "l'opzione «%s» richiede l'impostazione dell'opzione «%s»" +msgstr "l'opzione \"%s\" richiede l'impostazione dell'opzione \"%s\"" #: ../libnm-core/nm-setting-bond.c:599 ../libnm-util/nm-setting-bond.c:644 #, c-format msgid "'%s' option is empty" -msgstr "l'opzione «%s» è vuota" +msgstr "l'opzione \"%s\" è vuota" #: ../libnm-core/nm-setting-bond.c:611 ../libnm-util/nm-setting-bond.c:656 #, c-format msgid "'%s' is not a valid IPv4 address for '%s' option" -msgstr "«%s» non è un indirizzo IPv4 valido per l'opzione «%s»" +msgstr "\"%s\" non è un indirizzo IPv4 valido per l'opzione \"%s\"" #: ../libnm-core/nm-setting-bond.c:638 ../libnm-util/nm-setting-bond.c:683 #, c-format msgid "'%s' option is only valid with mode '%s'" -msgstr "l'opzione «%s» è valida solamente con la modalità «%s»" +msgstr "l'opzione \"%s\" è valida solamente con la modalità \"%s\"" #: ../libnm-core/nm-setting-bond.c:653 #, c-format msgid "'%s' option should be string" -msgstr "l'opzione «%s» dovrebbe essere una stringa" +msgstr "l'opzione \"%s\" dovrebbe essere una stringa" #: ../libnm-core/nm-setting-bridge-port.c:125 #: ../libnm-core/nm-setting-bridge-port.c:137 @@ -7077,7 +7507,7 @@ msgstr "l'opzione «%s» dovrebbe essere una stringa" #: ../libnm-util/nm-setting-bridge-port.c:167 #, c-format msgid "'%d' is not a valid value for the property (should be <= %d)" -msgstr "«%d» non è un valore valido per la proprietà (dovrebbe essere <= %d)" +msgstr "\"%d\" non è un valore valido per la proprietà (dovrebbe essere <= %d)" #: ../libnm-core/nm-setting-bridge-port.c:155 #: ../libnm-core/nm-setting-team-port.c:98 @@ -7092,17 +7522,18 @@ msgid "" "A connection with a '%s' setting must have the slave-type set to '%s'. " "Instead it is '%s'" msgstr "" -"Una connessione con un'impostazione «%s» deve avere slave-type impostato a " -"«%s», invece è «%s»" +"Una connessione con un'impostazione \"%s\" deve avere slave-type impostato a " +"\"%s\", invece è \"%s\"" #: ../libnm-core/nm-setting-bridge.c:210 ../libnm-util/nm-setting-bridge.c:270 #, c-format msgid "value '%d' is out of range <%d-%d>" -msgstr "il valore «%d» non è nell'intervallo <%d-%d>" +msgstr "il valore \"%d\" non è nell'intervallo <%d-%d>" -#: ../libnm-core/nm-setting-bridge.c:227 ../libnm-core/nm-setting-wired.c:595 -#: ../libnm-core/nm-setting-wired.c:655 ../libnm-util/nm-setting-bridge.c:287 -#: ../libnm-util/nm-setting-wired.c:637 ../libnm-util/nm-setting-wired.c:695 +#: ../libnm-core/nm-setting-bridge.c:227 ../libnm-core/nm-setting-wired.c:634 +#: ../libnm-core/nm-setting-wired.c:694 ../libnm-core/nm-setting-wired.c:722 +#: ../libnm-util/nm-setting-bridge.c:287 ../libnm-util/nm-setting-wired.c:634 +#: ../libnm-util/nm-setting-wired.c:692 msgid "is not a valid MAC address" msgstr "non è un indirizzo MAC valido" @@ -7110,50 +7541,57 @@ msgstr "non è un indirizzo MAC valido" msgid "property is empty'" msgstr "la proprietà è vuota" -#: ../libnm-core/nm-setting-connection.c:747 +#: ../libnm-core/nm-setting-connection.c:788 #, c-format msgid "setting required for connection of type '%s'" -msgstr "impostazione richiesta per il tipo di connessione «%s»" +msgstr "impostazione richiesta per il tipo di connessione \"%s\"" -#: ../libnm-core/nm-setting-connection.c:828 +#: ../libnm-core/nm-setting-connection.c:869 #, c-format msgid "connection type '%s' is not valid" -msgstr "tipo di connessione «%s» non valido" +msgstr "tipo di connessione \"%s\" non valido" -#: ../libnm-core/nm-setting-connection.c:863 +#: ../libnm-core/nm-setting-connection.c:904 #: ../libnm-util/nm-setting-connection.c:878 #, c-format msgid "Unknown slave type '%s'" -msgstr "Tipo di slave «%s» sconosciuto" +msgstr "Tipo di slave \"%s\" sconosciuto" -#: ../libnm-core/nm-setting-connection.c:873 +#: ../libnm-core/nm-setting-connection.c:914 +#: ../libnm-util/nm-setting-connection.c:888 #, c-format msgid "Slave connections need a valid '%s' property" -msgstr "Le connessioni slave necessitano di una proprietà «%s» valida" +msgstr "Le connessioni slave necessitano di una proprietà \"%s\" valida" -#: ../libnm-core/nm-setting-connection.c:894 +#: ../libnm-core/nm-setting-connection.c:935 +#: ../libnm-util/nm-setting-connection.c:898 #, c-format msgid "Cannot set '%s' without '%s'" -msgstr "Impossibile impostare «%s» senza «%s»" +msgstr "Impossibile impostare \"%s\" senza \"%s\"" -#: ../libnm-core/nm-setting-connection.c:917 +#: ../libnm-core/nm-setting-connection.c:949 +#, c-format +msgid "metered value %d is not valid" +msgstr "il valore di limite %d non è valido" + +#: ../libnm-core/nm-setting-connection.c:970 #, c-format msgid "property type should be set to '%s'" -msgstr "il tipo della proprietà dovrebbe essere impostato a «%s»" +msgstr "il tipo della proprietà dovrebbe essere impostato a \"%s\"" -#: ../libnm-core/nm-setting-connection.c:932 +#: ../libnm-core/nm-setting-connection.c:985 #, c-format msgid "slave-type '%s' requires a '%s' setting in the connection" -msgstr "il tipo slave «%s» richiede un'impostazione «%s» nella connessione" +msgstr "il tipo slave \"%s\" richiede un'impostazione \"%s\" nella connessione" -#: ../libnm-core/nm-setting-connection.c:942 +#: ../libnm-core/nm-setting-connection.c:995 #, c-format msgid "" "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be " "set to '%s'" msgstr "" -"Rilevata una connessione slave con «%s» impostato e un tipo di porta «%s». " -"«%s» dovrebbe essere impostato a «%s»" +"Rilevata una connessione slave con \"%s\" impostato e un tipo di porta \"%s" +"\". \"%s\" dovrebbe essere impostato a \"%s\"" #: ../libnm-core/nm-setting-dcb.c:523 ../libnm-util/nm-setting-dcb.c:595 msgid "flags invalid" @@ -7188,17 +7626,17 @@ msgstr "manca la proprietà " #: ../libnm-core/nm-setting-gsm.c:239 ../libnm-util/nm-setting-gsm.c:296 #, c-format msgid "property value '%s' is empty or too long (>64)" -msgstr "il valore «%s» della proprietà è vuoto o troppo lungo (>64)" +msgstr "il valore \"%s\" della proprietà è vuoto o troppo lungo (>64)" #: ../libnm-core/nm-setting-gsm.c:271 ../libnm-util/nm-setting-gsm.c:328 #, c-format msgid "'%s' contains invalid char(s) (use [A-Za-z._-])" -msgstr "«%s» contiene caratteri non validi (usare [A-Za-z._-])" +msgstr "\"%s\" contiene caratteri non validi (usare [A-Za-z._-])" -#: ../libnm-core/nm-setting-gsm.c:306 ../libnm-util/nm-setting-gsm.c:363 +#: ../libnm-core/nm-setting-gsm.c:297 ../libnm-util/nm-setting-gsm.c:354 #, c-format msgid "'%s' length is invalid (should be 5 or 6 digits)" -msgstr "la lunghezza di «%s» non è valida (dovrebbe essere di 5 o 6 cifre)" +msgstr "la lunghezza di \"%s\" non è valida (dovrebbe essere di 5 o 6 cifre)" #: ../libnm-core/nm-setting-infiniband.c:218 #: ../libnm-util/nm-setting-infiniband.c:232 @@ -7224,76 +7662,85 @@ msgid "" "interface name of software infiniband device must be '%s' or unset (instead " "it is '%s')" msgstr "" -"il nome dell'interfaccia del dispositivo software infiniband deve essere " -"«%s» o non impostato (ora è «%s»)" +"il nome dell'interfaccia del dispositivo software infiniband deve essere \"%s" +"\" o non impostato (ora è \"%s\")" #: ../libnm-core/nm-setting-infiniband.c:287 #, c-format msgid "mtu for transport mode '%s' can be at most %d but it is %d" msgstr "" -"mtu per la modalità di trasporto «%s» deve essere al massimo %d, ma invece è " -"%d" +"mtu per la modalità di trasporto \"%s\" deve essere al massimo %d, ma invece " +"è %d" + +#: ../libnm-core/nm-setting-ip-config.c:77 +#, c-format +msgid "Missing IPv4 address" +msgstr "Indirizzo IPv4 mancante" + +#: ../libnm-core/nm-setting-ip-config.c:77 +#, c-format +msgid "Missing IPv6 address'" +msgstr "Indirizzo IPv6 mancante" -#: ../libnm-core/nm-setting-ip-config.c:79 +#: ../libnm-core/nm-setting-ip-config.c:82 #, c-format msgid "Invalid IPv4 address '%s'" -msgstr "Indirizzo IPv4 «%s» non valido" +msgstr "Indirizzo IPv4 \"%s\" non valido" -#: ../libnm-core/nm-setting-ip-config.c:79 +#: ../libnm-core/nm-setting-ip-config.c:82 #, c-format msgid "Invalid IPv6 address '%s" -msgstr "Indirizzo IPv6 «%s» non valido" +msgstr "Indirizzo IPv6 \"%s\" non valido" -#: ../libnm-core/nm-setting-ip-config.c:93 +#: ../libnm-core/nm-setting-ip-config.c:96 #, c-format msgid "Invalid IPv4 address prefix '%u'" -msgstr "Prefisso «%u» dell'indirizzo IPv4 non valido" +msgstr "Prefisso \"%u\" dell'indirizzo IPv4 non valido" -#: ../libnm-core/nm-setting-ip-config.c:93 +#: ../libnm-core/nm-setting-ip-config.c:96 #, c-format msgid "Invalid IPv6 address prefix '%u" -msgstr "Prefisso «%u» dell'indirizzo IPv6 non valido" +msgstr "Prefisso \"%u\" dell'indirizzo IPv6 non valido" -#: ../libnm-core/nm-setting-ip-config.c:111 +#: ../libnm-core/nm-setting-ip-config.c:114 #, c-format msgid "Invalid routing metric '%s'" -msgstr "Metrica di instradamento «%s» non valida" +msgstr "Metrica di instradamento \"%s\" non valida" -#: ../libnm-core/nm-setting-ip-config.c:1861 +#: ../libnm-core/nm-setting-ip-config.c:1864 #, c-format msgid "%d. DNS server address is invalid" msgstr "%d. Il server DNS non è valido" -#: ../libnm-core/nm-setting-ip-config.c:1877 +#: ../libnm-core/nm-setting-ip-config.c:1880 #, c-format msgid "%d. IP address is invalid" msgstr "%d. L'indirizzo IP non è valido" -#: ../libnm-core/nm-setting-ip-config.c:1889 +#: ../libnm-core/nm-setting-ip-config.c:1892 #, c-format msgid "%d. IP address has 'label' property with invalid type" -msgstr "%d. Proprietà «label» dell'indirizzo IP di tipo non valido" +msgstr "%d. Proprietà \"label\" dell'indirizzo IP di tipo non valido" -#: ../libnm-core/nm-setting-ip-config.c:1898 +#: ../libnm-core/nm-setting-ip-config.c:1901 #, c-format msgid "%d. IP address has invalid label '%s'" -msgstr "%d. Label «%s» dell'indirizzo IP non valida" +msgstr "%d. Label \"%s\" dell'indirizzo IP non valida" -#: ../libnm-core/nm-setting-ip-config.c:1912 +#: ../libnm-core/nm-setting-ip-config.c:1915 msgid "gateway cannot be set if there are no addresses configured" msgstr "impossibile impostare il gateway se non è configurato alcun indirizzo" -#: ../libnm-core/nm-setting-ip-config.c:1921 +#: ../libnm-core/nm-setting-ip-config.c:1924 msgid "gateway is invalid" msgstr "il gateway non è valido" -#: ../libnm-core/nm-setting-ip-config.c:1935 -#: ../libnm-util/nm-setting-ip4-config.c:966 +#: ../libnm-core/nm-setting-ip-config.c:1938 #, c-format msgid "%d. route is invalid" msgstr "%d. L'instradamento non è valido" -#: ../libnm-core/nm-setting-ip-config.c:1944 +#: ../libnm-core/nm-setting-ip-config.c:1947 #, c-format msgid "%d. route cannot be a default route" msgstr "%d. L'instradamento non può essere quello predefinito" @@ -7301,72 +7748,66 @@ msgstr "%d. L'instradamento non può essere quello predefinito" #: ../libnm-core/nm-setting-ip4-config.c:123 #: ../libnm-core/nm-setting-ip6-config.c:121 #: ../libnm-util/nm-setting-ip4-config.c:862 -#: ../libnm-util/nm-setting-ip6-config.c:843 +#: ../libnm-util/nm-setting-ip6-config.c:845 #, c-format msgid "this property cannot be empty for '%s=%s'" -msgstr "questa proprietà non può essere vuota per «%s=%s»" +msgstr "questa proprietà non può essere vuota per \"%s=%s\"" #: ../libnm-core/nm-setting-ip4-config.c:135 #: ../libnm-core/nm-setting-ip4-config.c:145 #: ../libnm-core/nm-setting-ip4-config.c:157 -#: ../libnm-core/nm-setting-ip6-config.c:134 -#: ../libnm-core/nm-setting-ip6-config.c:144 -#: ../libnm-core/nm-setting-ip6-config.c:154 +#: ../libnm-core/nm-setting-ip6-config.c:133 +#: ../libnm-core/nm-setting-ip6-config.c:143 +#: ../libnm-core/nm-setting-ip6-config.c:153 #: ../libnm-util/nm-setting-ip4-config.c:874 #: ../libnm-util/nm-setting-ip4-config.c:884 #: ../libnm-util/nm-setting-ip4-config.c:896 -#: ../libnm-util/nm-setting-ip6-config.c:856 -#: ../libnm-util/nm-setting-ip6-config.c:866 -#: ../libnm-util/nm-setting-ip6-config.c:876 +#: ../libnm-util/nm-setting-ip6-config.c:857 +#: ../libnm-util/nm-setting-ip6-config.c:867 +#: ../libnm-util/nm-setting-ip6-config.c:877 #, c-format msgid "this property is not allowed for '%s=%s'" -msgstr "questa proprietà non è consentita per «%s=%s»" - -#: ../libnm-core/nm-setting-ip6-config.c:133 -#: ../libnm-util/nm-setting-ip6-config.c:855 -#, c-format -msgid "'%s' not allowed for %s=%s" -msgstr "«%s» non consentito per %s=%s" +msgstr "questa proprietà non è consentita per \"%s=%s\"" -#: ../libnm-core/nm-setting-olpc-mesh.c:123 -#: ../libnm-core/nm-setting-wireless.c:704 +#: ../libnm-core/nm-setting-olpc-mesh.c:122 +#: ../libnm-core/nm-setting-wireless.c:703 #: ../libnm-util/nm-setting-olpc-mesh.c:133 #: ../libnm-util/nm-setting-wireless.c:761 msgid "SSID length is out of range <1-32> bytes" msgstr "lunghezza SSID non nell'intervallo di <1-32> byte" -#: ../libnm-core/nm-setting-olpc-mesh.c:132 -#: ../libnm-core/nm-setting-wireless.c:744 +#: ../libnm-core/nm-setting-olpc-mesh.c:131 +#: ../libnm-core/nm-setting-wireless.c:743 #: ../libnm-util/nm-setting-olpc-mesh.c:142 #: ../libnm-util/nm-setting-wireless.c:801 #, c-format msgid "'%d' is not a valid channel" -msgstr "«%d» non è un canale valido" +msgstr "\"%d\" non è un canale valido" #: ../libnm-core/nm-setting-ppp.c:367 ../libnm-util/nm-setting-ppp.c:389 #, c-format msgid "'%d' is out of valid range <128-16384>" -msgstr "«%d» non è nell'intervallo valido <128-16384>" +msgstr "\"%d\" non è nell'intervallo valido <128-16384>" #: ../libnm-core/nm-setting-ppp.c:380 ../libnm-util/nm-setting-ppp.c:402 #, c-format msgid "setting this property requires non-zero '%s' property" -msgstr "l'impostazione di questa proprietà richiede che «%s» non sia zero" +msgstr "l'impostazione di questa proprietà richiede che \"%s\" non sia zero" #: ../libnm-core/nm-setting-vlan.c:516 ../libnm-util/nm-setting-vlan.c:557 #, c-format msgid "'%s' value doesn't match '%s=%s'" -msgstr "il valore di «%s» non corrisponde a «%s=%s»" +msgstr "il valore di \"%s\" non corrisponde a \"%s=%s\"" #: ../libnm-core/nm-setting-vlan.c:527 ../libnm-util/nm-setting-vlan.c:568 #, c-format msgid "'%s' is neither an UUID nor an interface name" -msgstr "«%s» non è né uno UUID né il nome di un'interfaccia" +msgstr "\"%s\" non è né uno UUID né il nome di un'interfaccia" #: ../libnm-core/nm-setting-vlan.c:541 ../libnm-util/nm-setting-vlan.c:581 #, c-format msgid "property is not specified and neither is '%s:%s'" -msgstr "la proprietà non è specificata e nemmeno «%s:%s» lo è" +msgstr "la proprietà non è specificata e nemmeno \"%s:%s\" lo è" #: ../libnm-core/nm-setting-vlan.c:554 ../libnm-util/nm-setting-vlan.c:594 msgid "flags are invalid" @@ -7386,7 +7827,7 @@ msgstr "l'impostazione conteneva un segreto senza nome" msgid "secret value was empty" msgstr "valore del segreto vuoto" -#: ../libnm-core/nm-setting-vpn.c:526 ../libnm-core/nm-setting.c:1607 +#: ../libnm-core/nm-setting-vpn.c:526 ../libnm-core/nm-setting.c:1650 msgid "not a secret property" msgstr "non è una proprietà segreta" @@ -7397,110 +7838,116 @@ msgstr "il segreto non è di tipo corretto" #: ../libnm-core/nm-setting-vpn.c:567 #, c-format msgid "failed to convert value '%s' to uint" -msgstr "Conversione del valore «%s» in uint non riuscita" +msgstr "Conversione del valore \"%s\" in uint non riuscita" #: ../libnm-core/nm-setting-vpn.c:575 msgid "secret flags property not found" msgstr "flag segreto della proprietà non trovato" -#: ../libnm-core/nm-setting-wired.c:575 ../libnm-util/nm-setting-wired.c:617 +#: ../libnm-core/nm-setting-wired.c:614 ../libnm-util/nm-setting-wired.c:614 #, c-format msgid "'%s' is not a valid Ethernet port value" -msgstr "«%s» non è un valore valido per una porta Ethernet" +msgstr "\"%s\" non è un valore valido per una porta Ethernet" -#: ../libnm-core/nm-setting-wired.c:585 ../libnm-util/nm-setting-wired.c:627 +#: ../libnm-core/nm-setting-wired.c:624 ../libnm-util/nm-setting-wired.c:624 #, c-format msgid "'%s' is not a valid duplex value" -msgstr "«%s» non è un valore duplex valido" +msgstr "\"%s\" non è un valore duplex valido" -#: ../libnm-core/nm-setting-wired.c:644 ../libnm-util/nm-setting-wired.c:684 +#: ../libnm-core/nm-setting-wired.c:683 ../libnm-util/nm-setting-wired.c:681 #, c-format msgid "invalid '%s' or its value '%s'" -msgstr "«%s» o il suo valore «%s» non valido" +msgstr "\"%s\" o il suo valore \"%s\" non valido" + +#: ../libnm-core/nm-setting-wired.c:704 +msgid "Wake-on-LAN mode 'default' and 'ignore' are exclusive flags" +msgstr "Le modalità Wake-on-LAN \"default\" e \"ignore\" sono flag esclusivi" + +#: ../libnm-core/nm-setting-wired.c:713 +msgid "Wake-on-LAN password can only be used with magic packet mode" +msgstr "" +"La password per Wake-on-LAN può essere usata solo in modalità pacchetti " +"\"magic\"" #: ../libnm-core/nm-setting-wireless-security.c:883 #: ../libnm-util/nm-setting-wireless-security.c:913 #, c-format msgid "'%s' security requires '%s=%s'" -msgstr "la sicurezza «%s» richiede «%s=%s»" +msgstr "la sicurezza \"%s\" richiede \"%s=%s\"" -#: ../libnm-core/nm-setting-wireless-security.c:912 -#: ../libnm-util/nm-setting-wireless-security.c:942 +#: ../libnm-core/nm-setting-wireless-security.c:904 +#: ../libnm-util/nm-setting-wireless-security.c:934 #, c-format msgid "'%s' security requires '%s' setting presence" -msgstr "la sicurezza «%s» richiede l'impostazione «%s»" +msgstr "la sicurezza \"%s\" richiede l'impostazione \"%s\"" -#: ../libnm-core/nm-setting-wireless-security.c:933 -#: ../libnm-util/nm-setting-wireless-security.c:963 +#: ../libnm-core/nm-setting-wireless-security.c:925 +#: ../libnm-util/nm-setting-wireless-security.c:955 #, c-format msgid "'%d' value is out of range <0-3>" -msgstr "il valore «%d» non è nell'intervallo <0-3>" +msgstr "il valore \"%d\" non è nell'intervallo <0-3>" -#: ../libnm-core/nm-setting-wireless-security.c:1030 -#: ../libnm-util/nm-setting-wireless-security.c:1060 +#: ../libnm-core/nm-setting-wireless-security.c:980 +#: ../libnm-util/nm-setting-wireless-security.c:1010 #, c-format msgid "'%s' connections require '%s' in this property" -msgstr "le connessioni «%s» richiedono «%s» in questa proprietà " +msgstr "le connessioni \"%s\" richiedono \"%s\" in questa proprietà " -#: ../libnm-core/nm-setting-wireless-security.c:1060 -#: ../libnm-util/nm-setting-wireless-security.c:1090 +#: ../libnm-core/nm-setting-wireless-security.c:1010 +#: ../libnm-util/nm-setting-wireless-security.c:1040 #, c-format msgid "'%s' can only be used with '%s=%s' (WEP)" -msgstr "«%s» può essere usato solamente con «%s=%s» (WEP)" +msgstr "\"%s\" può essere usato solamente con \"%s=%s\" (WEP)" -#: ../libnm-core/nm-setting-wireless.c:713 +#: ../libnm-core/nm-setting-wireless.c:712 #: ../libnm-util/nm-setting-wireless.c:770 #, c-format msgid "'%s' is not a valid Wi-Fi mode" -msgstr "«%s» non è una modalità Wi-Fi valida" +msgstr "\"%s\" non è una modalità Wi-Fi valida" -#: ../libnm-core/nm-setting-wireless.c:723 +#: ../libnm-core/nm-setting-wireless.c:722 #: ../libnm-util/nm-setting-wireless.c:780 #, c-format msgid "'%s' is not a valid band" -msgstr "«%s» non è una banda valida" +msgstr "\"%s\" non è una banda valida" -#: ../libnm-core/nm-setting-wireless.c:733 +#: ../libnm-core/nm-setting-wireless.c:732 #, c-format msgid "'%s' requires setting '%s' property" -msgstr "«%s» richiede l'impostazione della proprietà «%s»" +msgstr "\"%s\" richiede l'impostazione della proprietà \"%s\"" -#: ../libnm-core/nm-setting.c:827 +#: ../libnm-core/nm-setting.c:833 #, c-format msgid "can't set property of type '%s' from value of type '%s'" msgstr "" -"impossibile impostare la proprietà di tipo «%s» da un valore di tipo «%s»" +"impossibile impostare la proprietà di tipo \"%s\" da un valore di tipo \"%s\"" -#: ../libnm-core/nm-setting.c:1505 +#: ../libnm-core/nm-setting.c:1548 msgid "secret not found" msgstr "segreto non trovato" -#: ../libnm-core/nm-setting.c:1597 +#: ../libnm-core/nm-setting.c:1640 msgid "secret is not set" msgstr "segreto non impostato" -#: ../libnm-core/nm-utils.c:2275 ../libnm-util/nm-utils.c:1813 +#: ../libnm-core/nm-utils.c:2480 ../libnm-util/nm-utils.c:1828 #, c-format msgid "Could not find \"%s\" binary" -msgstr "Impossibile trovare il binario di «%s»" +msgstr "Impossibile trovare il binario di \"%s\"" -#: ../libnm-glib/nm-device.c:1793 ../libnm/nm-device.c:1615 +#: ../libnm-glib/nm-device.c:1793 ../libnm/nm-device.c:1638 msgid "Bluetooth" msgstr "Bluetooth" -#: ../libnm-glib/nm-device.c:1811 ../libnm/nm-device.c:1633 -msgid "ADSL" -msgstr "ADSL" - -#: ../libnm-glib/nm-device.c:1839 ../libnm/nm-device.c:1661 +#: ../libnm-glib/nm-device.c:1839 ../libnm/nm-device.c:1684 msgid "Wired" msgstr "Via cavo" -#: ../libnm-glib/nm-device.c:1870 ../libnm/nm-device.c:1692 +#: ../libnm-glib/nm-device.c:1870 ../libnm/nm-device.c:1715 msgid "PCI" msgstr "PCI" -#: ../libnm-glib/nm-device.c:1872 ../libnm/nm-device.c:1694 +#: ../libnm-glib/nm-device.c:1872 ../libnm/nm-device.c:1717 msgid "USB" msgstr "USB" @@ -7511,7 +7958,7 @@ msgstr "USB" #. * the strings otherwise. #. #: ../libnm-glib/nm-device.c:1968 ../libnm-glib/nm-device.c:1987 -#: ../libnm/nm-device.c:1788 ../libnm/nm-device.c:1807 +#: ../libnm/nm-device.c:1811 ../libnm/nm-device.c:1830 #, c-format msgctxt "long device name" msgid "%s %s" @@ -7539,20 +7986,12 @@ msgstr "Impossibile convertire la password in UCS2: %d" #: ../libnm-util/nm-setting-bluetooth.c:187 #, c-format msgid "requires '%s' or '%s' setting" -msgstr "richiede l'impostazione «%s» o «%s»" +msgstr "richiede l'impostazione \"%s\" o \"%s\"" #: ../libnm-util/nm-setting-connection.c:863 #, c-format msgid "requires presence of '%s' setting in the connection" -msgstr "richiede la presenza dell'impostazione «%s» nella connessione" - -#: ../libnm-util/nm-setting-connection.c:888 -msgid "Slave connections need a valid '" -msgstr "" - -#: ../libnm-util/nm-setting-connection.c:897 -msgid "Cannot set '" -msgstr "" +msgstr "richiede la presenza dell'impostazione \"%s\" nella connessione" #: ../libnm-util/nm-setting-ip4-config.c:940 #, c-format @@ -7564,25 +8003,36 @@ msgstr "%d. L'indirizzo IPv4 non è valido" msgid "%d. IPv4 address has invalid prefix" msgstr "%d. L'indirizzo IPv4 ha un prefisso non valido" -#: ../libnm-util/nm-setting-ip4-config.c:976 +#: ../libnm-util/nm-setting-ip4-config.c:966 +#: ../libnm-util/nm-setting-ip6-config.c:938 #, c-format msgid "%d. route has invalid prefix" msgstr "%d. L'instradamento ha un prefisso non valido" +#: ../libnm-util/nm-setting-ip6-config.c:912 +#, c-format +msgid "%d. IPv6 address is invalid" +msgstr "%d. L'indirizzo IPv6 non è valido" + +#: ../libnm-util/nm-setting-ip6-config.c:922 +#, c-format +msgid "%d. IPv6 address has invalid prefix" +msgstr "%d. L'indirizzo IPv6 ha un prefisso non valido" + #: ../libnm-util/nm-setting-vpn.c:583 #, c-format msgid "Failed to convert '%s' value '%s' to uint" -msgstr "Conversione del valore «%2$s» di «%1$s» in uint non riuscita" +msgstr "Conversione del valore \"%2$s\" di \"%1$s\" in uint non riuscita" #: ../libnm-util/nm-setting-vpn.c:590 #, c-format msgid "Secret flags property '%s' not found" -msgstr "Flag segreto della proprietà «%s» non trovato" +msgstr "Flag segreto della proprietà \"%s\" non trovato" #: ../libnm-util/nm-setting-wireless.c:790 #, c-format msgid "requires setting '%s' property" -msgstr "richiede l'impostazione della proprietà «%s»" +msgstr "richiede l'impostazione della proprietà \"%s\"" #: ../libnm/nm-device-adsl.c:73 msgid "The connection was not an ADSL connection." @@ -7622,12 +8072,12 @@ msgid "The connection was not an Ethernet or PPPoE connection." msgstr "La connessione non era una connessione Ethernet o PPPoE." #: ../libnm/nm-device-ethernet.c:154 ../libnm/nm-device-infiniband.c:105 -#: ../libnm/nm-device-wifi.c:492 ../libnm/nm-device-wimax.c:311 +#: ../libnm/nm-device-wifi.c:598 ../libnm/nm-device-wimax.c:311 msgid "Invalid device MAC address." msgstr "Indirizzo MAC dispositivo non valido." #: ../libnm/nm-device-ethernet.c:160 ../libnm/nm-device-infiniband.c:113 -#: ../libnm/nm-device-wifi.c:499 ../libnm/nm-device-wimax.c:318 +#: ../libnm/nm-device-wifi.c:605 ../libnm/nm-device-wimax.c:318 msgid "The MACs of the device and the connection didn't match." msgstr "Gli indirizzi MAC del dispositivo e la connessione non corrispondono." @@ -7678,17 +8128,17 @@ msgid "The hardware address of the device and the connection didn't match." msgstr "" "L'indirizzo hardware del dispositivo e la connessione non corrispondono." -#: ../libnm/nm-device-wifi.c:483 +#: ../libnm/nm-device-wifi.c:589 msgid "The connection was not a Wi-Fi connection." msgstr "La connessione non era una connessione Wi-Fi." -#: ../libnm/nm-device-wifi.c:519 +#: ../libnm/nm-device-wifi.c:625 msgid "The device is lacking WPA capabilities required by the connection." msgstr "" "Il dispositivo non dispone delle funzionalità WPA richieste dalla " "connessione." -#: ../libnm/nm-device-wifi.c:526 +#: ../libnm/nm-device-wifi.c:632 msgid "The device is lacking WPA2/RSN capabilities required by the connection." msgstr "" "Il dispositivo non dispone delle funzionalità WPA2/RSN richieste dalla " @@ -7698,27 +8148,27 @@ msgstr "" msgid "The connection was not a WiMAX connection." msgstr "La connessione non era una connessione WiMAX." -#: ../libnm/nm-device.c:2133 +#: ../libnm/nm-device.c:2174 #, c-format msgid "The connection was not valid: %s" msgstr "La connessione non era valida: %s" -#: ../libnm/nm-device.c:2142 +#: ../libnm/nm-device.c:2183 #, c-format msgid "The interface names of the device and the connection didn't match." msgstr "" "Il nome dell'interfaccia del dispositivo e la connessione non corrispondono." -#: ../libnm/nm-manager.c:858 +#: ../libnm/nm-manager.c:861 msgid "Active connection could not be attached to the device" msgstr "La connessione attiva non può essere collegata al dispositivo" # [NdT] si tratta di un messaggio che descrive un’azione -#: ../libnm/nm-manager.c:1082 +#: ../libnm/nm-manager.c:1085 msgid "Active connection removed before it was initialized" msgstr "La connessione attiva è stata rimossa prima di essere inizializzata" -#: ../libnm/nm-object.c:1439 ../libnm/nm-object.c:1585 +#: ../libnm/nm-object.c:1442 ../libnm/nm-object.c:1588 msgid "Caller did not specify D-Bus path for object" msgstr "Il chiamante non ha specificato il percorso D-Bus per l'oggetto" @@ -7726,7 +8176,7 @@ msgstr "Il chiamante non ha specificato il percorso D-Bus per l'oggetto" msgid "Connection removed before it was initialized" msgstr "La connessione è stata rimosso prima di essere inizializzata" -#: ../libnm/nm-vpn-plugin-old.c:885 +#: ../libnm/nm-vpn-plugin-old.c:892 msgid "No service name specified" msgstr "Nessun nome di servizio specificato" @@ -7846,57 +8296,49 @@ msgstr "" #. * as "Wired Connection" or "VPN Connection". The %d is a number #. * that is combined with the first argument to create a unique #. * connection id. -#: ../src/NetworkManagerUtils.c:1139 +#: ../src/NetworkManagerUtils.c:1660 #, c-format msgctxt "connection id fallback" msgid "%s %d" msgstr "%s %d" #. Logging/debugging -#: ../src/main.c:221 ../src/nm-iface-helper.c:310 +#: ../src/main.c:235 ../src/nm-iface-helper.c:300 msgid "Print NetworkManager version and exit" msgstr "Stampa la versione di NetworkManager ed esce" -#: ../src/main.c:222 ../src/nm-iface-helper.c:311 +#: ../src/main.c:236 ../src/nm-iface-helper.c:301 msgid "Don't become a daemon" msgstr "Non si avvia in modalità demone" -#: ../src/main.c:223 ../src/nm-iface-helper.c:312 +#: ../src/main.c:237 ../src/nm-iface-helper.c:302 msgid "Don't become a daemon, and log to stderr" msgstr "Non si avvia in modalità demone e registra su stderr" -#: ../src/main.c:224 ../src/nm-iface-helper.c:313 +#: ../src/main.c:238 ../src/nm-iface-helper.c:303 #, c-format msgid "Log level: one of [%s]" msgstr "Livello di registrazione: uno di [%s]" -#: ../src/main.c:226 ../src/nm-iface-helper.c:315 +#: ../src/main.c:240 ../src/nm-iface-helper.c:305 #, c-format msgid "Log domains separated by ',': any combination of [%s]" msgstr "" -"Domini di registrazione separati da «,»: qualsiasi combinazione di [%s]" +"Domini di registrazione separati da \",\": qualsiasi combinazione di [%s]" -#: ../src/main.c:228 ../src/nm-iface-helper.c:317 +#: ../src/main.c:242 ../src/nm-iface-helper.c:307 msgid "Make all warnings fatal" msgstr "Rende tutti gli avvisi fatali" -#: ../src/main.c:229 +#: ../src/main.c:243 msgid "Specify the location of a PID file" msgstr "Specifica la posizione di un file PID" -#: ../src/main.c:229 -msgid "filename" -msgstr "nomefile" - -#: ../src/main.c:230 +#: ../src/main.c:244 msgid "State file location" msgstr "Posizione file di stato" -#: ../src/main.c:230 -msgid "/path/to/state.file" -msgstr "/percorso/a/file.di.stato" - -#: ../src/main.c:244 +#: ../src/main.c:255 msgid "" "NetworkManager monitors all network connections and automatically\n" "chooses the best connection to use. It also allows the user to\n" @@ -7908,85 +8350,75 @@ msgstr "" "utenti di specificare gli access point Wi-Fi e quali schede\n" "Wi-Fi del computer associarvi." -#: ../src/main.c:257 ../src/main-utils.c:271 ../src/nm-iface-helper.c:346 +#: ../src/main.c:345 ../src/main-utils.c:246 ../src/nm-iface-helper.c:384 #, c-format msgid "%s. Please use --help to see a list of valid options.\n" msgstr "%s. Usare --help per ottenere un elenco di opzioni valide.\n" -#: ../src/main.c:262 ../src/nm-iface-helper.c:351 +#: ../src/main.c:350 ../src/nm-iface-helper.c:389 #, c-format msgid "Ignoring unrecognized log domain(s) '%s' passed on command line.\n" msgstr "" -"Domini di registrazione «%s» non riconosciuti passati sulla riga di " +"Domini di registrazione \"%s\" non riconosciuti passati sulla riga di " "comando.\n" -#: ../src/main.c:307 +#: ../src/main.c:360 #, c-format msgid "Failed to read configuration: (%d) %s\n" msgstr "Lettura della configurazione non riuscita: (%d) %s\n" -#: ../src/main.c:321 +#: ../src/main.c:376 #, c-format msgid "Error in configuration file: %s.\n" msgstr "Errore nel file di configurazione: %s.\n" -#: ../src/main.c:326 +#: ../src/main.c:381 #, c-format msgid "Ignoring unrecognized log domain(s) '%s' from config files.\n" msgstr "" -"I domini di registrazione «%s» non riconosciuti caricati dai file di " +"I domini di registrazione \"%s\" non riconosciuti caricati dai file di " "configurazione vengono ignorati.\n" -#: ../src/main.c:334 -#, c-format -msgid "State file %s parsing failed: (%d) %s\n" -msgstr "Analisi del file di stato %s non riuscita: (%d) %s\n" - -#: ../src/main.c:347 ../src/nm-iface-helper.c:368 +#: ../src/main.c:392 ../src/nm-iface-helper.c:399 #, c-format msgid "Could not daemonize: %s [error %u]\n" msgstr "Impossibile avviare come demone: %s [errore %u]\n" -#: ../src/main-utils.c:115 -#, c-format -msgid "Failed to set signal mask: %d" -msgstr "Impostazione della maschera di segnale non riuscita: %d" - -#: ../src/main-utils.c:124 -#, c-format -msgid "Failed to create signal handling thread: %d" -msgstr "Creazione del thread per la gestione dei segnali non riuscita: %d" - -#: ../src/main-utils.c:139 +#: ../src/main-utils.c:101 #, c-format msgid "Opening %s failed: %s\n" msgstr "Apertura di %s non riuscita: %s\n" -#: ../src/main-utils.c:145 +#: ../src/main-utils.c:107 #, c-format msgid "Writing to %s failed: %s\n" msgstr "Scrittura su %s non riuscita: %s\n" -#: ../src/main-utils.c:150 +#: ../src/main-utils.c:112 #, c-format msgid "Closing %s failed: %s\n" msgstr "Chiusura di %s non riuscita: %s\n" -#: ../src/main-utils.c:206 +#: ../src/main-utils.c:122 +#, c-format +msgid "Cannot create '%s': %s" +msgstr "Impossibile creare \"%s\": %s" + +#: ../src/main-utils.c:174 #, c-format msgid "%s is already running (pid %ld)\n" msgstr "%s è già in esecuzione (pid %ld)\n" -#: ../src/main-utils.c:248 +#: ../src/main-utils.c:184 #, c-format msgid "You must be root to run %s!\n" msgstr "È necessario essere root per eseguire %s.\n" -#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:205 +#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:210 msgid "# Created by NetworkManager\n" msgstr "# Creato da NetworkManager\n" -#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:212 +#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:217 #, c-format msgid "" "# Merged from %s\n" @@ -7998,17 +8430,17 @@ msgstr "" #: ../src/dhcp-manager/nm-dhcp-manager.c:130 #, c-format msgid "'%s' support not found or not enabled." -msgstr "supporto «%s» non trovato o non abilitato." +msgstr "supporto \"%s\" non trovato o non abilitato." #: ../src/dhcp-manager/nm-dhcp-manager.c:177 msgid "no usable DHCP client could be found." msgstr "non è stato trovato alcun client DHCP utilizzabile." -#: ../src/dns-manager/nm-dns-manager.c:374 +#: ../src/dns-manager/nm-dns-manager.c:364 msgid "NOTE: the libc resolver may not support more than 3 nameservers." msgstr "Nota: il risolutore libc non supporta più di tre server di nomi." -#: ../src/dns-manager/nm-dns-manager.c:376 +#: ../src/dns-manager/nm-dns-manager.c:366 msgid "The nameservers listed below may not be recognized." msgstr "I server di nomi elencati sotto non possono essere riconosciuti." @@ -8016,52 +8448,52 @@ msgstr "I server di nomi elencati sotto non possono essere riconosciuti." msgid "ADSL connection" msgstr "Connessione ADSL" -#: ../src/devices/bluetooth/nm-bluez-device.c:200 +#: ../src/devices/bluetooth/nm-bluez-device.c:201 #, c-format msgid "%s Network" msgstr "Rete %s" -#: ../src/devices/bluetooth/nm-device-bt.c:254 +#: ../src/devices/bluetooth/nm-device-bt.c:255 msgid "PAN requested, but Bluetooth device does not support NAP" msgstr "È stato richiesto PAN, ma il dispositivo Bluetooth non supporta NAP" -#: ../src/devices/bluetooth/nm-device-bt.c:264 +#: ../src/devices/bluetooth/nm-device-bt.c:265 msgid "PAN connections cannot specify GSM, CDMA, or serial settings" msgstr "" "Le connessioni PAN non possono specificare le impostazione GSM, CDMA o " "seriale" -#: ../src/devices/bluetooth/nm-device-bt.c:277 +#: ../src/devices/bluetooth/nm-device-bt.c:278 msgid "PAN connection" msgstr "Connessione PAN" -#: ../src/devices/bluetooth/nm-device-bt.c:284 +#: ../src/devices/bluetooth/nm-device-bt.c:285 msgid "DUN requested, but Bluetooth device does not support DUN" msgstr "Richiesto DUN, ma il dispositivo Bluetooth non lo supporta" -#: ../src/devices/bluetooth/nm-device-bt.c:294 +#: ../src/devices/bluetooth/nm-device-bt.c:295 msgid "DUN connection must include a GSM or CDMA setting" msgstr "La connessione DUN deve includere un'impostazione GSM o CDMA" -#: ../src/devices/bluetooth/nm-device-bt.c:304 -#: ../src/devices/wwan/nm-modem-broadband.c:488 +#: ../src/devices/bluetooth/nm-device-bt.c:305 +#: ../src/devices/wwan/nm-modem-broadband.c:540 msgid "GSM connection" msgstr "Connessione GSM" -#: ../src/devices/bluetooth/nm-device-bt.c:308 -#: ../src/devices/wwan/nm-modem-broadband.c:511 +#: ../src/devices/bluetooth/nm-device-bt.c:309 +#: ../src/devices/wwan/nm-modem-broadband.c:563 msgid "CDMA connection" msgstr "Connessione CDMA" -#: ../src/devices/bluetooth/nm-device-bt.c:316 +#: ../src/devices/bluetooth/nm-device-bt.c:317 msgid "Unknown/unhandled Bluetooth connection type" msgstr "Tipo di connessione Bluetooth sconosciuta/non gestita" -#: ../src/devices/bluetooth/nm-device-bt.c:336 -#: ../src/devices/nm-device-ethernet.c:1442 -#: ../src/devices/nm-device-infiniband.c:196 -#: ../src/devices/wifi/nm-device-wifi.c:1123 -#: ../src/devices/wimax/nm-device-wimax.c:450 +#: ../src/devices/bluetooth/nm-device-bt.c:337 +#: ../src/devices/nm-device-ethernet.c:1446 +#: ../src/devices/nm-device-infiniband.c:204 +#: ../src/devices/wifi/nm-device-wifi.c:1112 +#: ../src/devices/wimax/nm-device-wimax.c:454 msgid "connection does not match device" msgstr "la connessione non corrisponde al dispositivo" @@ -8069,15 +8501,15 @@ msgstr "la connessione non corrisponde al dispositivo" msgid "Bond connection" msgstr "Connessione aggregata" -#: ../src/devices/nm-device-bridge.c:131 +#: ../src/devices/nm-device-bridge.c:130 msgid "Bridge connection" msgstr "Connessione bridge" -#: ../src/devices/nm-device-ethernet.c:1425 +#: ../src/devices/nm-device-ethernet.c:1427 msgid "PPPoE connection" msgstr "Connessione PPPoE" -#: ../src/devices/nm-device-ethernet.c:1425 +#: ../src/devices/nm-device-ethernet.c:1427 msgid "Wired connection" msgstr "Connessione via cavo" @@ -8086,15 +8518,15 @@ msgstr "Connessione via cavo" msgid "Wired connection %d" msgstr "Connessione via cavo %d" -#: ../src/devices/nm-device-infiniband.c:178 +#: ../src/devices/nm-device-infiniband.c:186 msgid "InfiniBand connection" msgstr "Connessione InfiniBand" -#: ../src/devices/nm-device-vlan.c:218 +#: ../src/devices/nm-device-vlan.c:339 msgid "VLAN connection" msgstr "Connessione VLAN" -#: ../src/devices/team/nm-device-team.c:132 +#: ../src/devices/team/nm-device-team.c:134 msgid "Team connection" msgstr "Connessione team" @@ -8102,7 +8534,7 @@ msgstr "Connessione team" msgid "Mesh" msgstr "Mesh" -#: ../src/devices/wifi/nm-device-wifi.c:1093 +#: ../src/devices/wifi/nm-device-wifi.c:1080 msgid "WPA Ad-Hoc disabled due to kernel bugs" msgstr "WPA Ad-Hoc disabilitata a causa di problemi col kernel" @@ -8117,7 +8549,7 @@ msgstr "L'autenticazione LEAP richiede un nome utente LEAP" #: ../src/devices/wifi/nm-wifi-ap-utils.c:88 msgid "LEAP username requires 'leap' authentication" -msgstr "Il nome utente LEAP richiede l'autenticazione «leap»" +msgstr "Il nome utente LEAP richiede l'autenticazione \"leap\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:101 msgid "LEAP authentication requires IEEE 802.1x key management" @@ -8135,27 +8567,28 @@ msgstr "L'autenticazione LEAP non è compatibile con l'impostazione 802.1x" #, c-format msgid "a connection using '%s' authentication cannot use WPA key management" msgstr "" -"Una connessione con autenticazione «%s» non può usare la gestione delle " +"Una connessione con autenticazione \"%s\" non può usare la gestione delle " "chiavi WPA" #: ../src/devices/wifi/nm-wifi-ap-utils.c:166 #, c-format msgid "a connection using '%s' authentication cannot specific WPA protocols" msgstr "" -"Una connessione con autenticazione «%s» non può specificare protocolli WPA" +"Una connessione con autenticazione \"%s\" non può specificare protocolli WPA" #: ../src/devices/wifi/nm-wifi-ap-utils.c:182 #: ../src/devices/wifi/nm-wifi-ap-utils.c:199 #, c-format msgid "a connection using '%s' authentication cannot specific WPA ciphers" msgstr "" -"Una connessione con autenticazione «%s» non può specificare cifrari WPA" +"Una connessione con autenticazione \"%s\" non può specificare cifrari WPA" #: ../src/devices/wifi/nm-wifi-ap-utils.c:211 #, c-format msgid "a connection using '%s' authentication cannot specific a WPA password" msgstr "" -"Una connessione con autenticazione «%s» non può specificare una password WPA" +"Una connessione con autenticazione \"%s\" non può specificare una password " +"WPA" #: ../src/devices/wifi/nm-wifi-ap-utils.c:242 msgid "Dynamic WEP requires an 802.1x setting" @@ -8164,11 +8597,11 @@ msgstr "WEP dinamico richiede un'impostazione 802.1x" #: ../src/devices/wifi/nm-wifi-ap-utils.c:252 #: ../src/devices/wifi/nm-wifi-ap-utils.c:280 msgid "Dynamic WEP requires 'open' authentication" -msgstr "WEP dinamico richiede autenticazione «open»" +msgstr "WEP dinamico richiede autenticazione \"open\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:267 msgid "Dynamic WEP requires 'ieee8021x' key management" -msgstr "WEP dinamico richiede la gestione delle chiavi «ieee8021x»" +msgstr "WEP dinamico richiede la gestione delle chiavi \"ieee8021x\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:314 msgid "WPA-PSK authentication is incompatible with 802.1x" @@ -8176,7 +8609,7 @@ msgstr "L'autenticazione WPA-PSK non è compatibile con 802.1x" #: ../src/devices/wifi/nm-wifi-ap-utils.c:324 msgid "WPA-PSK requires 'open' authentication" -msgstr "WPA-PSK richiede autenticazione «open»" +msgstr "WPA-PSK richiede autenticazione \"open\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:336 msgid "WPA Ad-Hoc authentication requires an Ad-Hoc mode AP" @@ -8185,15 +8618,15 @@ msgstr "" #: ../src/devices/wifi/nm-wifi-ap-utils.c:349 msgid "WPA Ad-Hoc authentication requires 'wpa' protocol" -msgstr "L'autenticazione WPA Ad-Hoc richiede il protocollo «wpa»" +msgstr "L'autenticazione WPA Ad-Hoc richiede il protocollo \"wpa\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:361 msgid "WPA Ad-Hoc authentication requires 'none' pairwise cipher" -msgstr "L'autenticazione WPA Ad-Hoc richiede il cifrario pairwise «none»" +msgstr "L'autenticazione WPA Ad-Hoc richiede il cifrario pairwise \"none\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:373 msgid "WPA Ad-Hoc requires 'tkip' group cipher" -msgstr "WPA Ad-Hoc richiede il cifrario «tkip» group" +msgstr "WPA Ad-Hoc richiede il cifrario \"tkip\" group" #: ../src/devices/wifi/nm-wifi-ap-utils.c:387 msgid "Access point does not support PSK but setting requires it" @@ -8205,11 +8638,11 @@ msgstr "L'autenticazione WPA Ad-Hoc richiede un'impostazione 802.1x" #: ../src/devices/wifi/nm-wifi-ap-utils.c:427 msgid "WPA-EAP requires 'open' authentication" -msgstr "WPA-EAP richiede autenticazione «open»" +msgstr "WPA-EAP richiede autenticazione \"open\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:438 msgid "802.1x setting requires 'wpa-eap' key management" -msgstr "L'impostazione 802.1x richiede la gestione della chiave «wpa-eap»" +msgstr "L'impostazione 802.1x richiede la gestione della chiave \"wpa-eap\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:451 msgid "Access point does not support 802.1x but setting requires it" @@ -8232,7 +8665,7 @@ msgstr "La modalità Ad-Hoc non è compatibile con la sicurezza LEAP" #: ../src/devices/wifi/nm-wifi-ap-utils.c:508 msgid "Ad-Hoc mode requires 'open' authentication" -msgstr "La modalità Ad-Hoc richiede autenticazione «open»" +msgstr "La modalità Ad-Hoc richiede autenticazione \"open\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:518 msgid "" @@ -8271,121 +8704,114 @@ msgstr "" msgid "Failed to determine AP security information" msgstr "Determinazione delle informazioni di sicurezza AP non riuscita" -#: ../src/devices/wwan/nm-modem-broadband.c:475 +#: ../src/devices/wwan/nm-modem-broadband.c:527 msgid "GSM mobile broadband connection requires a 'gsm' setting" -msgstr "La connessione a banda larga mobile GSM richiede un'impostazione «gsm»" +msgstr "" +"La connessione a banda larga mobile GSM richiede un'impostazione \"gsm\"" -#: ../src/nm-config.c:356 +#: ../src/nm-config.c:463 msgid "Config file location" msgstr "Posizione file di configurazione" -#: ../src/nm-config.c:356 -msgid "/path/to/config.file" -msgstr "/percorso/a/file.di.config" - -#: ../src/nm-config.c:357 +#: ../src/nm-config.c:464 msgid "Config directory location" msgstr "Posizione directory di configurazione" -#: ../src/nm-config.c:357 -msgid "/path/to/config/dir" -msgstr "/percorso/dir/config" +#: ../src/nm-config.c:465 +msgid "State file for no-auto-default devices" +msgstr "File di stato per dispositivi no-auto-default" -#: ../src/nm-config.c:359 +#: ../src/nm-config.c:466 msgid "List of plugins separated by ','" msgstr "Elenco di plugin separati da virgole" -#: ../src/nm-config.c:359 -msgid "plugin1,plugin2" -msgstr "plugin1,plugin2" +#: ../src/nm-config.c:467 +msgid "Quit after initial configuration" +msgstr "Esci dopo la configurazione iniziale" #. These three are hidden for now, and should eventually just go away. -#: ../src/nm-config.c:362 +#: ../src/nm-config.c:470 msgid "An http(s) address for checking internet connectivity" msgstr "Un indirizzo HTTP(S) per controllare la connessione" -#: ../src/nm-config.c:363 +#: ../src/nm-config.c:471 msgid "The interval between connectivity checks (in seconds)" msgstr "L'intervallo tra i controlli della connessione (in secondi)" -#: ../src/nm-config.c:364 +#: ../src/nm-config.c:472 msgid "The expected start of the response" msgstr "L'inizio atteso della risposta" -#: ../src/nm-config.c:364 -msgid "Bingo!" -msgstr "Bingo!" - #. Interface/IP config -#: ../src/nm-iface-helper.c:296 +#: ../src/nm-iface-helper.c:286 msgid "The interface to manage" msgstr "L'interfaccia da gestire" -#: ../src/nm-iface-helper.c:296 +#: ../src/nm-iface-helper.c:286 msgid "eth0" msgstr "eth0" -#: ../src/nm-iface-helper.c:297 +#: ../src/nm-iface-helper.c:287 msgid "Connection UUID" msgstr "UUID connessione" -#: ../src/nm-iface-helper.c:297 +#: ../src/nm-iface-helper.c:287 msgid "661e8cd0-b618-46b8-9dc9-31a52baaa16b" msgstr "661e8cd0-b618-46b8-9dc9-31a52baaa16b" -#: ../src/nm-iface-helper.c:298 +#: ../src/nm-iface-helper.c:288 msgid "Whether to manage IPv6 SLAAC" msgstr "Indica se gestire SLAAC IPv6" -#: ../src/nm-iface-helper.c:299 +#: ../src/nm-iface-helper.c:289 msgid "Whether SLAAC must be successful" msgstr "Indica se SLAAC deve avere successo" -#: ../src/nm-iface-helper.c:300 +#: ../src/nm-iface-helper.c:290 msgid "Use an IPv6 temporary privacy address" msgstr "Usa un indirizzo privato IPv6 temporaneo" -#: ../src/nm-iface-helper.c:301 +#: ../src/nm-iface-helper.c:291 msgid "Current DHCPv4 address" msgstr "Indirizzo DHCPv4 attuale" -#: ../src/nm-iface-helper.c:302 +#: ../src/nm-iface-helper.c:292 msgid "Whether DHCPv4 must be successful" msgstr "Indica se DHCPv4 deve avere successo" -#: ../src/nm-iface-helper.c:303 +#: ../src/nm-iface-helper.c:293 msgid "Hex-encoded DHCPv4 client ID" msgstr "ID client DHCPv4 in codice hex" -#: ../src/nm-iface-helper.c:304 +#: ../src/nm-iface-helper.c:294 msgid "Hostname to send to DHCP server" msgstr "Nome host da inviare al server DHCP" -#: ../src/nm-iface-helper.c:304 +#: ../src/nm-iface-helper.c:294 msgid "barbar" msgstr "barbar" -#: ../src/nm-iface-helper.c:305 +#: ../src/nm-iface-helper.c:295 msgid "Route priority for IPv4" msgstr "Priorità instradamento per IPv4" -#: ../src/nm-iface-helper.c:305 +#: ../src/nm-iface-helper.c:295 msgid "0" msgstr "0" -#: ../src/nm-iface-helper.c:306 +#: ../src/nm-iface-helper.c:296 msgid "Route priority for IPv6" msgstr "Priorità instradamento per IPv6" -#: ../src/nm-iface-helper.c:306 +#: ../src/nm-iface-helper.c:296 msgid "1024" msgstr "1024" -#: ../src/nm-iface-helper.c:307 +#: ../src/nm-iface-helper.c:297 msgid "Hex-encoded Interface Identifier" msgstr "Identificato interfaccia in codice hex" -#: ../src/nm-iface-helper.c:328 +#: ../src/nm-iface-helper.c:317 msgid "" "nm-iface-helper is a small, standalone process that manages a single network " "interface." @@ -8393,17 +8819,17 @@ msgstr "" "nm-iface-helper è un processo indipendente che gestisce una singola " "interfaccia di rete." -#: ../src/nm-iface-helper.c:337 +#: ../src/nm-iface-helper.c:365 #, c-format msgid "An interface name and UUID are required\n" msgstr "Sono richiesti il nome di un'interfaccia e un UUID\n" -#: ../src/nm-iface-helper.c:402 +#: ../src/nm-iface-helper.c:371 #, c-format -msgid "Failed to find interface index for %s\n" -msgstr "Ricerca dell'indice di interfaccia per %s non riuscita\n" +msgid "Failed to find interface index for %s (%s)\n" +msgstr "Ricerca dell'indice di interfaccia per %s (%s) non riuscita\n" -#: ../src/nm-iface-helper.c:418 +#: ../src/nm-iface-helper.c:431 #, c-format msgid "(%s): Invalid IID %s\n" msgstr "(%s): IID %s non valido\n" @@ -8411,14 +8837,14 @@ msgstr "(%s): IID %s non valido\n" #: ../src/nm-logging.c:137 #, c-format msgid "Unknown log level '%s'" -msgstr "Livello di registrazione «%s» sconosciuto" +msgstr "Livello di registrazione \"%s\" sconosciuto" #: ../src/nm-logging.c:219 #, c-format msgid "Unknown log domain '%s'" -msgstr "Dominio di registrazione «%s» sconosciuto" +msgstr "Dominio di registrazione \"%s\" sconosciuto" -#: ../src/nm-manager.c:3413 +#: ../src/nm-manager.c:3423 msgid "VPN connection" msgstr "Connessione VPN" @@ -8426,21 +8852,6 @@ msgstr "Connessione VPN" msgid "NetworkManager needs to turn off networks" msgstr "NetworkManager deve disabilitare le reti" -#: ../src/settings/plugins/ibft/plugin.c:66 -#, c-format -msgid "ibft: failed to read iscsiadm records: %s" -msgstr "ibft: lettura dei record iscsiadm non riuscita: %s" - -#: ../src/settings/plugins/ibft/plugin.c:74 -#, c-format -msgid "ibft: read connection '%s'" -msgstr "ibft: lettura connessione «%s»" - -#: ../src/settings/plugins/ibft/plugin.c:80 -#, c-format -msgid "ibft: failed to read iscsiadm record: %s" -msgstr "ibft: lettura del record iscsiadm non riuscita: %s" - -#: ../src/settings/plugins/ifcfg-rh/reader.c:113 +#: ../src/settings/plugins/ifcfg-rh/reader.c:112 msgid "System" msgstr "Sistema" diff --git a/po/ja.po b/po/ja.po index 0285f367..d898bf15 100644 --- a/po/ja.po +++ b/po/ja.po @@ -5114,10 +5114,6 @@ msgstr "'%d' ã¯ãƒ—ãƒãƒ‘ãƒ†ã‚£ã®æœ‰åйãªå€¤ã§ã¯ã‚りã¾ã›ã‚“ (%d 以下ã msgid "value '%d' is out of range <%d-%d>" msgstr "値 '%d' 㯠<%d-%d> ã®ç¯„囲外ã§ã™" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "プãƒãƒ‘ティãŒç©ºã§ã™" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5766,8 +5762,8 @@ msgstr "ブリッジ" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\r接続ä¸" +msgid "Connecting" +msgstr "接続ä¸" #: ../test/nm-online.c:104 msgid "" diff --git a/po/kn.po b/po/kn.po index c9e35952..86243704 100644 --- a/po/kn.po +++ b/po/kn.po @@ -5519,8 +5519,8 @@ msgstr "" #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rಸಂಪರà³à²• ಕಲà³à²ªà²¿à²¸à²²à²¾à²—à³à²¤à³à²¤à²¿à²¦à³†" +msgid "Connecting" +msgstr "ಸಂಪರà³à²• ಕಲà³à²ªà²¿à²¸à²²à²¾à²—à³à²¤à³à²¤à²¿à²¦à³†" #: ../clients/nm-online.c:149 msgid "" @@ -7026,10 +7026,6 @@ msgstr "'%d' ಮೌಲà³à²¯à²µà³ <%d-%d> ವà³à²¯à²¾à²ªà³à²¤à²¿à²¯ ಹೊರ msgid "is not a valid MAC address" msgstr "ಒಂದೠಮಾನà³à²¯à²µà²¾à²¦ MAC ವಿಳಾಸವಲà³à²²" -#: ../libnm-core/nm-setting-cdma.c:164 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "ಗà³à²£à²µà³ ಖಾಲಿ ಇದೆ'" - #: ../libnm-core/nm-setting-connection.c:740 #: ../libnm-util/nm-setting-connection.c:861 #, c-format diff --git a/po/ko.po b/po/ko.po index 2816df81..dc8559ac 100644 --- a/po/ko.po +++ b/po/ko.po @@ -5125,10 +5125,6 @@ msgstr "'%d'는 ì†ì„±ì˜ 올바른 ê°’ì´ ì•„ë‹™ë‹ˆë‹¤ (<= %dì´ì–´ì•¼ 함)" msgid "value '%d' is out of range <%d-%d>" msgstr "ê°’ '%d'ì´ ë²”ìœ„ <%d-%d> ë°–ì— ìžˆìŠµë‹ˆë‹¤ " -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "ì†ì„±ì´ 비어 있습니다 " - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5777,8 +5773,8 @@ msgstr "브리지 " #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\r연결하는 중 " +msgid "Connecting" +msgstr "연결하는 중 " #: ../test/nm-online.c:104 msgid "" diff --git a/po/lt.po b/po/lt.po index 3e0ed1fd..2536671a 100644 --- a/po/lt.po +++ b/po/lt.po @@ -3369,9 +3369,9 @@ msgstr "Klaida: netinkamas „%s“ argumentas: „%s“ (naudokite on/off)." #: ../cli/src/network-manager.c:585 #, fuzzy -#| msgid "\rConnecting" +#| msgid "Connecting" msgid "Connectivity" -msgstr "\rJungiamasi" +msgstr "Jungiamasi" #: ../cli/src/network-manager.c:597 msgid "Networking" @@ -4591,10 +4591,6 @@ msgstr "„%d“ yra netinkama vertÄ— savybei (turi bÅ«ti <= %d)" msgid "value '%d' is out of range <%d-%d>" msgstr "vertÄ— „%d“ yra už ribų <%d-%d>" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "savybÄ— yra tuÅ¡Äia" - #: ../libnm-util/nm-setting-connection.c:742 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5216,8 +5212,8 @@ msgstr "Susiejimas" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\rJungiamasi" +msgid "Connecting" +msgstr "Jungiamasi" #: ../test/nm-online.c:104 msgid "" diff --git a/po/ml.po b/po/ml.po index 7ded0dd4..e92573f6 100644 --- a/po/ml.po +++ b/po/ml.po @@ -5258,10 +5258,6 @@ msgstr "വിശേഷതയàµà´•àµà´•àµà´³àµà´³ ശരിയായ മൂà msgid "value '%d' is out of range <%d-%d>" msgstr "'%d' മൂലàµà´²àµà´¯à´‚ പരിധിയàµà´•àµà´•àµàµ à´ªàµà´±à´¤àµà´¤à´¾à´•àµà´¨àµà´¨àµ <%d-%d>" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "വിശേഷത കാലിയാണàµàµ" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5960,8 +5956,8 @@ msgstr "à´¬àµà´°à´¿à´¡àµà´œàµ" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\rകണകàµà´Ÿàµ ചെയàµà´¯àµà´¨àµà´¨àµ" +msgid "Connecting" +msgstr "കണകàµà´Ÿàµ ചെയàµà´¯àµà´¨àµà´¨àµ" #: ../test/nm-online.c:104 msgid "" diff --git a/po/mr.po b/po/mr.po index fb4282a8..c2e3cfe4 100644 --- a/po/mr.po +++ b/po/mr.po @@ -5198,8 +5198,8 @@ msgstr "" #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rजोडणी करत आहे" +msgid "Connecting" +msgstr "जोडणी करत आहे" #: ../clients/nm-online.c:149 msgid "" @@ -6686,10 +6686,6 @@ msgstr "मूलà¥à¤¯ '%d' वà¥à¤¯à¤¾à¤ªà¥à¤¤à¤¿ <%d-%d> चà¥à¤¯à¤¾ बठmsgid "is not a valid MAC address" msgstr "वैध MAC पतà¥à¤¤à¤¾ नाही" -#: ../libnm-core/nm-setting-cdma.c:164 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "गà¥à¤£à¤§à¤°à¥à¤® रिकामे आहे" - #: ../libnm-core/nm-setting-connection.c:740 #: ../libnm-util/nm-setting-connection.c:861 #, c-format diff --git a/po/or.po b/po/or.po index 105969a6..83394545 100644 --- a/po/or.po +++ b/po/or.po @@ -5225,10 +5225,6 @@ msgstr "'%d' ଟି ଗàଣଧରàମ ପାଇଠà¬à¬• ବàˆà¬§ ମà‚ଠmsgid "value '%d' is out of range <%d-%d>" msgstr "ମà‚ଲààŸ '%d' ସà€à¬®à¬¾ à¬¬à¬¾à¬¹à¬¾à¬°à‡ <%d-%d>" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "ଗàଣଧରàମ ଖାଲି ଅଛି'" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5893,8 +5889,8 @@ msgstr "ବàରିଜ" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\rସଂଯà‹à¬— କରàଅଛି" +msgid "Connecting" +msgstr "ସଂଯà‹à¬— କରàଅଛି" #: ../test/nm-online.c:104 msgid "" diff --git a/po/pa.po b/po/pa.po index 3e594501..aa5b2efe 100644 --- a/po/pa.po +++ b/po/pa.po @@ -5192,10 +5192,6 @@ msgstr "ਗà©à¨£ ਲਈ '%d' ਇੱਕ ਢà©à¨•ਵਾਂ ਮà©à©±à¨² ਨਹ੠msgid "value '%d' is out of range <%d-%d>" msgstr "ਮà©à©±à¨² '%d' ਹੱਦ <%d-%d> ਤੋਂ ਬਾਹਰ ਹੈ" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "ਗà©à¨£ ਖਾਲੀ ਹੈ'" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5852,8 +5848,8 @@ msgstr "ਬਰਿੱਜ" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\rਕà©à¨¨à©ˆà¨•ਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ" +msgid "Connecting" +msgstr "ਕà©à¨¨à©ˆà¨•ਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ" #: ../test/nm-online.c:104 msgid "" diff --git a/po/pl.po b/po/pl.po index e76babf7..f95709a7 100644 --- a/po/pl.po +++ b/po/pl.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: NetworkManager\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-06 00:19+0200\n" -"PO-Revision-Date: 2015-07-06 00:20+0200\n" +"POT-Creation-Date: 2015-11-13 18:41+0100\n" +"PO-Revision-Date: 2015-11-13 18:42+0100\n" "Last-Translator: Piotr DrÄ…g <piotrdrag@gmail.com>\n" "Language-Team: Polish <gnomepl@aviary.pl>\n" "Language: pl\n" @@ -111,9 +111,9 @@ msgstr "Błąd: zainicjowanie agenta polkit siÄ™ nie powiodÅ‚o: %s" msgid "nmcli successfully registered as a polkit agent.\n" msgstr "PomyÅ›lnie zarejestrowano program nmcli jako agenta polkit.\n" -#: ../clients/cli/agent.c:209 ../clients/cli/connections.c:8928 -#: ../clients/cli/connections.c:8954 ../clients/cli/connections.c:9095 -#: ../clients/cli/devices.c:2961 ../clients/cli/general.c:325 +#: ../clients/cli/agent.c:209 ../clients/cli/connections.c:9091 +#: ../clients/cli/connections.c:9117 ../clients/cli/connections.c:9258 +#: ../clients/cli/devices.c:3060 ../clients/cli/general.c:325 #: ../clients/cli/general.c:463 #, c-format msgid "Error: NetworkManager is not running." @@ -240,304 +240,350 @@ msgstr "łączenie (uruchamianie drugorzÄ™dnych połączeÅ„)" msgid "connected" msgstr "połączono" -#: ../clients/cli/common.c:516 ../clients/cli/connections.c:540 +#: ../clients/cli/common.c:516 ../clients/cli/connections.c:544 msgid "deactivating" -msgstr "deaktywowanie" +msgstr "dezaktywowanie" #: ../clients/cli/common.c:518 msgid "connection failed" msgstr "połączenie siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:520 ../clients/cli/connections.c:545 -#: ../clients/cli/connections.c:568 ../clients/cli/connections.c:1708 -#: ../clients/cli/devices.c:886 ../clients/cli/devices.c:927 -#: ../clients/cli/devices.c:929 ../clients/cli/general.c:263 -#: ../clients/cli/general.c:281 ../clients/cli/general.c:411 -#: ../clients/cli/general.c:427 ../clients/cli/settings.c:725 -#: ../clients/cli/settings.c:810 ../clients/cli/settings.c:1111 -#: ../clients/cli/utils.c:1164 ../src/main.c:363 ../src/main.c:413 +#: ../clients/cli/common.c:520 ../clients/cli/common.c:537 +#: ../clients/cli/connections.c:549 ../clients/cli/connections.c:572 +#: ../clients/cli/connections.c:1712 ../clients/cli/devices.c:891 +#: ../clients/cli/devices.c:932 ../clients/cli/devices.c:934 +#: ../clients/cli/general.c:263 ../clients/cli/general.c:281 +#: ../clients/cli/general.c:411 ../clients/cli/general.c:427 +#: ../clients/cli/settings.c:732 ../clients/cli/settings.c:817 +#: ../clients/cli/settings.c:1118 ../clients/cli/settings.c:2839 +#: ../clients/cli/utils.c:1200 ../src/main.c:362 ../src/main.c:412 msgid "unknown" msgstr "nieznane" -#: ../clients/cli/common.c:529 +#. "CAPABILITIES" +#: ../clients/cli/common.c:529 ../clients/cli/connections.c:819 +#: ../clients/cli/connections.c:821 ../clients/cli/connections.c:823 +#: ../clients/cli/connections.c:855 ../clients/cli/connections.c:922 +#: ../clients/cli/connections.c:923 ../clients/cli/connections.c:925 +#: ../clients/cli/connections.c:3158 ../clients/cli/connections.c:7239 +#: ../clients/cli/connections.c:7240 ../clients/cli/devices.c:598 +#: ../clients/cli/devices.c:648 ../clients/cli/devices.c:856 +#: ../clients/cli/devices.c:857 ../clients/cli/devices.c:858 +#: ../clients/cli/devices.c:859 ../clients/cli/devices.c:895 +#: ../clients/cli/devices.c:897 ../clients/cli/devices.c:925 +#: ../clients/cli/devices.c:926 ../clients/cli/devices.c:927 +#: ../clients/cli/devices.c:928 ../clients/cli/devices.c:929 +#: ../clients/cli/devices.c:930 ../clients/cli/devices.c:931 +#: ../clients/cli/devices.c:933 ../clients/cli/devices.c:935 +#: ../clients/cli/general.c:421 ../clients/cli/settings.c:2834 +msgid "yes" +msgstr "tak" + +#: ../clients/cli/common.c:531 ../clients/cli/connections.c:819 +#: ../clients/cli/connections.c:821 ../clients/cli/connections.c:823 +#: ../clients/cli/connections.c:922 ../clients/cli/connections.c:923 +#: ../clients/cli/connections.c:925 ../clients/cli/connections.c:3159 +#: ../clients/cli/connections.c:7239 ../clients/cli/connections.c:7240 +#: ../clients/cli/devices.c:598 ../clients/cli/devices.c:648 +#: ../clients/cli/devices.c:856 ../clients/cli/devices.c:857 +#: ../clients/cli/devices.c:858 ../clients/cli/devices.c:859 +#: ../clients/cli/devices.c:895 ../clients/cli/devices.c:897 +#: ../clients/cli/devices.c:925 ../clients/cli/devices.c:926 +#: ../clients/cli/devices.c:927 ../clients/cli/devices.c:928 +#: ../clients/cli/devices.c:929 ../clients/cli/devices.c:930 +#: ../clients/cli/devices.c:931 ../clients/cli/devices.c:933 +#: ../clients/cli/devices.c:935 ../clients/cli/general.c:423 +#: ../clients/cli/settings.c:2836 +msgid "no" +msgstr "nie" + +#: ../clients/cli/common.c:533 +msgid "yes (guessed)" +msgstr "tak (prawdopodobnie)" + +#: ../clients/cli/common.c:535 +msgid "no (guessed)" +msgstr "nie (prawdopodobnie)" + +#: ../clients/cli/common.c:546 msgid "No reason given" msgstr "Nie podano przyczyny" -#: ../clients/cli/common.c:532 ../clients/cli/connections.c:2721 +#: ../clients/cli/common.c:549 ../clients/cli/connections.c:2729 #, c-format msgid "Unknown error" msgstr "Nieznany błąd" -#: ../clients/cli/common.c:535 +#: ../clients/cli/common.c:552 msgid "Device is now managed" msgstr "UrzÄ…dzenie jest teraz zarzÄ…dzane" -#: ../clients/cli/common.c:538 +#: ../clients/cli/common.c:555 msgid "Device is now unmanaged" msgstr "UrzÄ…dzenie nie jest teraz zarzÄ…dzane" -#: ../clients/cli/common.c:541 +#: ../clients/cli/common.c:558 msgid "The device could not be readied for configuration" msgstr "UrzÄ…dzenie nie może zostać odczytane do konfiguracji" -#: ../clients/cli/common.c:544 +#: ../clients/cli/common.c:561 msgid "" "IP configuration could not be reserved (no available address, timeout, etc.)" msgstr "" "Konfiguracja IP nie mogÅ‚a zostać zastrzeżona (brak dostÄ™pnego adresu, czasu " "oczekiwania itp.)" -#: ../clients/cli/common.c:547 +#: ../clients/cli/common.c:564 msgid "The IP configuration is no longer valid" msgstr "Konfiguracja IP nie jest już prawidÅ‚owa" -#: ../clients/cli/common.c:550 +#: ../clients/cli/common.c:567 msgid "Secrets were required, but not provided" msgstr "HasÅ‚a sÄ… wymagane, ale nie zostaÅ‚y podane" -#: ../clients/cli/common.c:553 +#: ../clients/cli/common.c:570 msgid "802.1X supplicant disconnected" msgstr "Suplikant 802.1X zostaÅ‚ rozłączony" -#: ../clients/cli/common.c:556 +#: ../clients/cli/common.c:573 msgid "802.1X supplicant configuration failed" msgstr "Konfiguracja suplikanta 802.1X siÄ™ nie powiodÅ‚a" -#: ../clients/cli/common.c:559 +#: ../clients/cli/common.c:576 msgid "802.1X supplicant failed" msgstr "Suplikant 802.1X siÄ™ nie powiódÅ‚" -#: ../clients/cli/common.c:562 +#: ../clients/cli/common.c:579 msgid "802.1X supplicant took too long to authenticate" msgstr "Suplikant 802.1X za dÅ‚ugo siÄ™ uwierzytelniaÅ‚" -#: ../clients/cli/common.c:565 +#: ../clients/cli/common.c:582 msgid "PPP service failed to start" msgstr "Uruchomienie usÅ‚ugi PPP siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:568 +#: ../clients/cli/common.c:585 msgid "PPP service disconnected" msgstr "Rozłączono z usÅ‚ugÄ… PPP" -#: ../clients/cli/common.c:571 +#: ../clients/cli/common.c:588 msgid "PPP failed" msgstr "UsÅ‚uga PPP siÄ™ nie powiodÅ‚a" -#: ../clients/cli/common.c:574 +#: ../clients/cli/common.c:591 msgid "DHCP client failed to start" msgstr "Uruchomienie klienta DHCP siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:577 +#: ../clients/cli/common.c:594 msgid "DHCP client error" msgstr "Błąd klienta DHCP" -#: ../clients/cli/common.c:580 +#: ../clients/cli/common.c:597 msgid "DHCP client failed" msgstr "Klient DHCP siÄ™ nie powiódÅ‚" -#: ../clients/cli/common.c:583 +#: ../clients/cli/common.c:600 msgid "Shared connection service failed to start" msgstr "Uruchomienie usÅ‚ugi współdzielenia połączenia siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:586 +#: ../clients/cli/common.c:603 msgid "Shared connection service failed" msgstr "UsÅ‚uga współdzielenia połączenia siÄ™ nie powiodÅ‚a" -#: ../clients/cli/common.c:589 +#: ../clients/cli/common.c:606 msgid "AutoIP service failed to start" msgstr "Uruchomienie usÅ‚ugi AutoIP siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:592 +#: ../clients/cli/common.c:609 msgid "AutoIP service error" msgstr "Błąd usÅ‚ugi AutoIP" -#: ../clients/cli/common.c:595 +#: ../clients/cli/common.c:612 msgid "AutoIP service failed" msgstr "UsÅ‚uga AutoIP siÄ™ nie powiodÅ‚a" -#: ../clients/cli/common.c:598 +#: ../clients/cli/common.c:615 msgid "The line is busy" msgstr "Linia jest zajÄ™ta" -#: ../clients/cli/common.c:601 +#: ../clients/cli/common.c:618 msgid "No dial tone" msgstr "Brak sygnaÅ‚u telefonicznego" -#: ../clients/cli/common.c:604 +#: ../clients/cli/common.c:621 msgid "No carrier could be established" msgstr "Nie można ustanowić operatora" -#: ../clients/cli/common.c:607 +#: ../clients/cli/common.c:624 msgid "The dialing request timed out" msgstr "Żądanie zadzwonienia przekroczyÅ‚o czas oczekiwania" -#: ../clients/cli/common.c:610 +#: ../clients/cli/common.c:627 msgid "The dialing attempt failed" msgstr "Próba zadzwonienia siÄ™ nie powiodÅ‚a" -#: ../clients/cli/common.c:613 +#: ../clients/cli/common.c:630 msgid "Modem initialization failed" msgstr "Zainicjowanie modemu siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:616 +#: ../clients/cli/common.c:633 msgid "Failed to select the specified APN" msgstr "Wybranie podanego APN siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:619 +#: ../clients/cli/common.c:636 msgid "Not searching for networks" msgstr "Sieci nie sÄ… wyszukiwane" -#: ../clients/cli/common.c:622 +#: ../clients/cli/common.c:639 msgid "Network registration denied" msgstr "Odmówiono rejestracji sieci" -#: ../clients/cli/common.c:625 +#: ../clients/cli/common.c:642 msgid "Network registration timed out" msgstr "Przekroczono czas oczekiwania rejestracji sieci" -#: ../clients/cli/common.c:628 +#: ../clients/cli/common.c:645 msgid "Failed to register with the requested network" msgstr "Zarejestrowanie w żądanej sieci siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:631 +#: ../clients/cli/common.c:648 msgid "PIN check failed" msgstr "Sprawdzenie kodu PIN siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:634 +#: ../clients/cli/common.c:651 msgid "Necessary firmware for the device may be missing" msgstr "Brak wymaganego oprogramowania sprzÄ™towego dla urzÄ…dzenia" -#: ../clients/cli/common.c:637 +#: ../clients/cli/common.c:654 msgid "The device was removed" msgstr "UrzÄ…dzenie zostaÅ‚o usuniÄ™te" -#: ../clients/cli/common.c:640 +#: ../clients/cli/common.c:657 msgid "NetworkManager went to sleep" msgstr "UsÅ‚uga NetworkManager zostaÅ‚a uÅ›piona" -#: ../clients/cli/common.c:643 +#: ../clients/cli/common.c:660 msgid "The device's active connection disappeared" msgstr "Aktywne połączenie urzÄ…dzenia zniknęło" -#: ../clients/cli/common.c:646 +#: ../clients/cli/common.c:663 msgid "Device disconnected by user or client" msgstr "UrzÄ…dzenie zostaÅ‚o rozłączone przez użytkownika lub klienta" -#: ../clients/cli/common.c:649 +#: ../clients/cli/common.c:666 msgid "Carrier/link changed" msgstr "Zmieniono operatora/łącze" -#: ../clients/cli/common.c:652 +#: ../clients/cli/common.c:669 msgid "The device's existing connection was assumed" msgstr "PrzyjÄ™to istniejÄ…ce połączenie urzÄ…dzenia" -#: ../clients/cli/common.c:655 +#: ../clients/cli/common.c:672 msgid "The supplicant is now available" msgstr "Suplikant jest teraz dostÄ™pny" -#: ../clients/cli/common.c:658 +#: ../clients/cli/common.c:675 msgid "The modem could not be found" msgstr "Nie można odnaleźć modemu" -#: ../clients/cli/common.c:661 +#: ../clients/cli/common.c:678 msgid "The Bluetooth connection failed or timed out" msgstr "" "Połączenie Bluetooth siÄ™ nie powiodÅ‚o lub przekroczyÅ‚o czas oczekiwania" -#: ../clients/cli/common.c:664 +#: ../clients/cli/common.c:681 msgid "GSM Modem's SIM card not inserted" msgstr "Karta SIM modemu GSM nie zostaÅ‚a wÅ‚ożona" -#: ../clients/cli/common.c:667 +#: ../clients/cli/common.c:684 msgid "GSM Modem's SIM PIN required" msgstr "Wymagany jest kod PIN karty SIM modemu GSM" -#: ../clients/cli/common.c:670 +#: ../clients/cli/common.c:687 msgid "GSM Modem's SIM PUK required" msgstr "Wymagany jest kod PUK karty SIM modemu GSM" -#: ../clients/cli/common.c:673 +#: ../clients/cli/common.c:690 msgid "GSM Modem's SIM wrong" msgstr "Karta SIM modemu GSM jest błędna" -#: ../clients/cli/common.c:676 +#: ../clients/cli/common.c:693 msgid "InfiniBand device does not support connected mode" msgstr "UrzÄ…dzenie InfiniBand nie obsÅ‚uguje trybu połączonego" -#: ../clients/cli/common.c:679 +#: ../clients/cli/common.c:696 msgid "A dependency of the connection failed" msgstr "Zależność połączenia siÄ™ nie powiodÅ‚a" -#: ../clients/cli/common.c:682 +#: ../clients/cli/common.c:699 msgid "A problem with the RFC 2684 Ethernet over ADSL bridge" msgstr "Problem z mostkiem ethernetowym RFC 2684 na ADSL" -#: ../clients/cli/common.c:685 +#: ../clients/cli/common.c:702 msgid "ModemManager is unavailable" msgstr "UsÅ‚uga ModemManager jest niedostÄ™pna" -#: ../clients/cli/common.c:688 +#: ../clients/cli/common.c:705 msgid "The Wi-Fi network could not be found" msgstr "Nie można odnaleźć sieci Wi-Fi" -#: ../clients/cli/common.c:691 +#: ../clients/cli/common.c:708 msgid "A secondary connection of the base connection failed" msgstr "DrugorzÄ™dne połączenie połączenia podstawowego siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:694 +#: ../clients/cli/common.c:711 msgid "DCB or FCoE setup failed" msgstr "Ustawienie DCB lub FCoE siÄ™ nie powiodÅ‚o" -#: ../clients/cli/common.c:697 +#: ../clients/cli/common.c:714 msgid "teamd control failed" msgstr "kontrola teamd siÄ™ nie powiodÅ‚a" -#: ../clients/cli/common.c:700 +#: ../clients/cli/common.c:717 msgid "Modem failed or no longer available" msgstr "Modem siÄ™ nie powiódÅ‚ lub nie jest już dostÄ™pny" -#: ../clients/cli/common.c:703 +#: ../clients/cli/common.c:720 msgid "Modem now ready and available" msgstr "Modem jest teraz gotowy i dostÄ™pny" -#: ../clients/cli/common.c:706 +#: ../clients/cli/common.c:723 msgid "SIM PIN was incorrect" msgstr "Kod PIN karty SIM byÅ‚ niepoprawny" -#: ../clients/cli/common.c:709 +#: ../clients/cli/common.c:726 msgid "New connection activation was enqueued" msgstr "Dodano aktywacjÄ™ nowego połączenia do kolejki" -#: ../clients/cli/common.c:712 +#: ../clients/cli/common.c:729 msgid "The device's parent changed" msgstr "Zmieniono urzÄ…dzenie nadrzÄ™dne urzÄ…dzenia" -#: ../clients/cli/common.c:715 +#: ../clients/cli/common.c:732 msgid "The device parent's management changed" msgstr "Zmieniono zarzÄ…dzanie urzÄ…dzenia nadrzÄ™dnego urzÄ…dzenia" #. TRANSLATORS: Unknown reason for a device state change (NMDeviceStateReason) -#: ../clients/cli/common.c:719 ../clients/cli/devices.c:625 -#: ../libnm-glib/nm-device.c:1813 ../libnm/nm-device.c:1638 +#: ../clients/cli/common.c:736 ../clients/cli/devices.c:628 +#: ../libnm-glib/nm-device.c:1813 ../libnm/nm-device.c:1658 msgid "Unknown" msgstr "Nieznane" -#: ../clients/cli/common.c:761 +#: ../clients/cli/common.c:778 #, c-format msgid "invalid priority map '%s'" msgstr "nieprawidÅ‚owa mapa priorytetów \"%s\"" -#: ../clients/cli/common.c:768 ../clients/cli/common.c:774 +#: ../clients/cli/common.c:785 ../clients/cli/common.c:791 #, c-format msgid "priority '%s' is not valid (<0-%ld>)" msgstr "priorytet \"%s\" jest nieprawidÅ‚owy (<0-%ld>)" -#: ../clients/cli/common.c:841 +#: ../clients/cli/common.c:858 #, c-format msgid "'%s' is not a valid team configuration or file name." msgstr "\"%s\" nie jest prawidÅ‚owÄ… konfiguracjÄ… zespoÅ‚u lub nazwÄ… pliku." -#: ../clients/cli/common.c:942 +#: ../clients/cli/common.c:959 #, c-format msgid "" "Warning: password for '%s' not given in 'passwd-file' and nmcli cannot ask " @@ -590,12 +636,12 @@ msgstr "Połączenia (nazwa, UUID lub Å›cieżka): " #. 0 #: ../clients/cli/connections.c:61 ../clients/cli/connections.c:174 -#: ../clients/cli/devices.c:58 ../clients/cli/devices.c:90 -#: ../clients/cli/devices.c:100 ../clients/cli/devices.c:111 -#: ../clients/cli/devices.c:120 ../clients/cli/devices.c:137 -#: ../clients/cli/devices.c:150 ../clients/cli/devices.c:176 -#: ../clients/cli/devices.c:191 ../clients/cli/devices.c:200 -#: ../clients/cli/devices.c:210 +#: ../clients/cli/devices.c:58 ../clients/cli/devices.c:91 +#: ../clients/cli/devices.c:101 ../clients/cli/devices.c:112 +#: ../clients/cli/devices.c:121 ../clients/cli/devices.c:138 +#: ../clients/cli/devices.c:151 ../clients/cli/devices.c:177 +#: ../clients/cli/devices.c:192 ../clients/cli/devices.c:201 +#: ../clients/cli/devices.c:211 msgid "NAME" msgstr "NAZWA" @@ -611,7 +657,7 @@ msgstr "UUID" #. 2 #: ../clients/cli/connections.c:63 ../clients/cli/connections.c:196 #: ../clients/cli/devices.c:44 ../clients/cli/devices.c:60 -#: ../clients/cli/devices.c:179 +#: ../clients/cli/devices.c:180 msgid "TYPE" msgstr "TYP" @@ -647,16 +693,16 @@ msgstr "TYLKO-DO-ODCZYTU" #. 15 #. 5 #: ../clients/cli/connections.c:69 ../clients/cli/connections.c:182 -#: ../clients/cli/devices.c:46 ../clients/cli/devices.c:166 -#: ../clients/cli/devices.c:182 +#: ../clients/cli/devices.c:46 ../clients/cli/devices.c:167 +#: ../clients/cli/devices.c:183 msgid "DBUS-PATH" msgstr "ÅšCIEÅ»KA-DBUS" #. 8 #. 13 #. 4 -#: ../clients/cli/connections.c:70 ../clients/cli/devices.c:164 -#: ../clients/cli/devices.c:181 +#: ../clients/cli/connections.c:70 ../clients/cli/devices.c:165 +#: ../clients/cli/devices.c:182 msgid "ACTIVE" msgstr "AKTYWNOŚĆ" @@ -665,8 +711,8 @@ msgstr "AKTYWNOŚĆ" #. 12 #. 3 #: ../clients/cli/connections.c:71 ../clients/cli/devices.c:43 -#: ../clients/cli/devices.c:59 ../clients/cli/devices.c:163 -#: ../clients/cli/devices.c:180 +#: ../clients/cli/devices.c:59 ../clients/cli/devices.c:164 +#: ../clients/cli/devices.c:181 msgid "DEVICE" msgstr "URZÄ„DZENIE" @@ -710,7 +756,7 @@ msgstr "KONKRETNY-OBIEKT" #. 4 #. Ask for optional 'vpn' arguments. #: ../clients/cli/connections.c:181 ../clients/cli/connections.c:219 -#: ../clients/cli/connections.c:3832 ../clients/tui/nm-editor-utils.c:234 +#: ../clients/cli/connections.c:3863 ../clients/tui/nm-editor-utils.c:234 #: ../clients/tui/nmt-connect-connection-list.c:406 msgid "VPN" msgstr "VPN" @@ -753,31 +799,31 @@ msgstr "STAN-VPN" msgid "CFG" msgstr "KONFIGURACJA" -#: ../clients/cli/connections.c:214 ../clients/cli/devices.c:225 +#: ../clients/cli/connections.c:214 ../clients/cli/devices.c:226 msgid "GENERAL" msgstr "OGÓLNE" #. 0 #. 6 -#: ../clients/cli/connections.c:215 ../clients/cli/devices.c:232 +#: ../clients/cli/connections.c:215 ../clients/cli/devices.c:233 msgid "IP4" msgstr "IP4" #. 1 #. 7 -#: ../clients/cli/connections.c:216 ../clients/cli/devices.c:233 +#: ../clients/cli/connections.c:216 ../clients/cli/devices.c:234 msgid "DHCP4" msgstr "DHCP4" #. 2 #. 8 -#: ../clients/cli/connections.c:217 ../clients/cli/devices.c:234 +#: ../clients/cli/connections.c:217 ../clients/cli/devices.c:235 msgid "IP6" msgstr "IP6" #. 3 #. 9 -#: ../clients/cli/connections.c:218 ../clients/cli/devices.c:235 +#: ../clients/cli/connections.c:218 ../clients/cli/devices.c:236 msgid "DHCP6" msgstr "DHCP6" @@ -926,7 +972,8 @@ msgstr "" "automatycznie przez usÅ‚ugÄ™ NetworkManager.\n" "\n" "ifname - podaje urzÄ…dzenie, na którym aktywować połączenie\n" -"ap - podaje AP, z którym połączyć (prawidÅ‚owe tylko dla Wi-Fi)\n" +"ap - podaje punkt dostÄ™powy, z którym połączyć (prawidÅ‚owe\n" +" tylko dla Wi-Fi)\n" "nsp - podaje NSP, z którym połączyć (prawidÅ‚owe tylko dla WiMAX)\n" "passwd-file - plik z hasÅ‚ami wymaganymi do aktywowania połączenia\n" "\n" @@ -948,9 +995,9 @@ msgstr "" "\n" "PARAMETRY := [id | uuid | path | apath] <identyfikator> ...\n" "\n" -"Deaktywuje połączenie z urzÄ…dzenia (bez uniemożliwienia urzÄ…dzeniu ponownej\n" -"automatycznej aktywacji). Profil do deaktywowania jest identyfikowany po\n" -"swojej nazwie, UUID lub Å›cieżce D-Bus.\n" +"Dezaktywuje połączenie z urzÄ…dzenia (bez uniemożliwienia urzÄ…dzeniu\n" +"ponownej automatycznej aktywacji). Profil do dezaktywowania jest\n" +"identyfikowany po swojej nazwie, UUID lub Å›cieżce D-Bus.\n" "\n" #: ../clients/cli/connections.c:328 @@ -1051,6 +1098,11 @@ msgid "" " [channel <1-13>]\n" " [dhcp-anycast <MAC address>]\n" "\n" +" adsl: username <username>\n" +" protocol pppoa|pppoe|ipoatm\n" +" [password <password>]\n" +" [encapsulation vcmux|llc]\n" +"\n" " IP_OPTIONS:\n" " [ip4 <IPv4 address>] [gw4 <IPv4 gateway>]\n" " [ip6 <IPv6 address>] [gw6 <IPv6 gateway>]\n" @@ -1153,11 +1205,16 @@ msgstr "" " [channel <1-13>]\n" " [dhcp-anycast <adres MAC>]\n" "\n" +" adsl: username <nazwa użytkownika>\n" +" protocol pppoa|pppoe|ipoatm\n" +" [password <hasÅ‚o>]\n" +" [encapsulation vcmux|llc]\n" +"\n" " OPCJE_IP:\n" " [ip4 <adres IPv4>] [gw4 <brama IPv4>]\n" " [ip6 <adres IPv6>] [gw6 <brama IPv6>]\n" -#: ../clients/cli/connections.c:408 +#: ../clients/cli/connections.c:412 #, c-format msgid "" "Usage: nmcli connection modify { ARGUMENTS | help }\n" @@ -1204,7 +1261,7 @@ msgstr "" "nmcli con mod bond0 -bond.options downdelay\n" "\n" -#: ../clients/cli/connections.c:431 +#: ../clients/cli/connections.c:435 #, c-format msgid "" "Usage: nmcli connection edit { ARGUMENTS | help }\n" @@ -1232,7 +1289,7 @@ msgstr "" "Dodaje nowy profil połączenia w interaktywnym edytorze.\n" "\n" -#: ../clients/cli/connections.c:446 +#: ../clients/cli/connections.c:450 #, c-format msgid "" "Usage: nmcli connection delete { ARGUMENTS | help }\n" @@ -1251,7 +1308,7 @@ msgstr "" "Profil jest identyfikowany po swojej nazwie, UUID lub Å›cieżce D-Bus.\n" "\n" -#: ../clients/cli/connections.c:457 +#: ../clients/cli/connections.c:461 #, c-format msgid "" "Usage: nmcli connection reload { help }\n" @@ -1264,7 +1321,7 @@ msgstr "" "Wczytuje ponownie wszystkie pliki połączeÅ„ z dysku.\n" "\n" -#: ../clients/cli/connections.c:465 +#: ../clients/cli/connections.c:469 #, c-format msgid "" "Usage: nmcli connection load { ARGUMENTS | help }\n" @@ -1286,144 +1343,110 @@ msgstr "" "usÅ‚uga NetworkManager zna jego najnowszy stan.\n" "\n" -#: ../clients/cli/connections.c:536 +#: ../clients/cli/connections.c:540 msgid "activating" msgstr "aktywowanie" -#: ../clients/cli/connections.c:538 +#: ../clients/cli/connections.c:542 msgid "activated" msgstr "aktywowano" -#: ../clients/cli/connections.c:542 +#: ../clients/cli/connections.c:546 msgid "deactivated" -msgstr "deaktywowano" +msgstr "dezaktywowano" -#: ../clients/cli/connections.c:554 +#: ../clients/cli/connections.c:558 msgid "VPN connecting (prepare)" msgstr "ÅÄ…czenie z VPN (przygotowanie)" -#: ../clients/cli/connections.c:556 +#: ../clients/cli/connections.c:560 msgid "VPN connecting (need authentication)" msgstr "ÅÄ…czenie z VPN (wymaga uwierzytelnienia)" -#: ../clients/cli/connections.c:558 +#: ../clients/cli/connections.c:562 msgid "VPN connecting" msgstr "ÅÄ…czenie z VPN" -#: ../clients/cli/connections.c:560 +#: ../clients/cli/connections.c:564 msgid "VPN connecting (getting IP configuration)" msgstr "ÅÄ…czenie z VPN (pobieranie konfiguracji adresu IP)" -#: ../clients/cli/connections.c:562 +#: ../clients/cli/connections.c:566 msgid "VPN connected" msgstr "Połączono z VPN" -#: ../clients/cli/connections.c:564 +#: ../clients/cli/connections.c:568 msgid "VPN connection failed" msgstr "Połączenie z VPN siÄ™ nie powiodÅ‚o" -#: ../clients/cli/connections.c:566 +#: ../clients/cli/connections.c:570 msgid "VPN disconnected" msgstr "Rozłączono z VPN" -#: ../clients/cli/connections.c:636 +#: ../clients/cli/connections.c:640 #, c-format msgid "Error updating secrets for %s: %s\n" msgstr "Błąd podczas aktualizowania haseÅ‚ dla %s: %s\n" -#: ../clients/cli/connections.c:656 +#: ../clients/cli/connections.c:660 msgid "Connection profile details" msgstr "Szczegóły profilu połączenia" -#: ../clients/cli/connections.c:668 ../clients/cli/connections.c:1077 +#: ../clients/cli/connections.c:672 ../clients/cli/connections.c:1081 #, c-format msgid "Error: 'connection show': %s" msgstr "Błąd: \"connection show\": %s" -#: ../clients/cli/connections.c:814 +#: ../clients/cli/connections.c:818 msgid "never" msgstr "nigdy" -#. "CAPABILITIES" -#: ../clients/cli/connections.c:815 ../clients/cli/connections.c:817 -#: ../clients/cli/connections.c:819 ../clients/cli/connections.c:851 -#: ../clients/cli/connections.c:918 ../clients/cli/connections.c:919 -#: ../clients/cli/connections.c:921 ../clients/cli/connections.c:3127 -#: ../clients/cli/connections.c:7084 ../clients/cli/connections.c:7085 -#: ../clients/cli/devices.c:595 ../clients/cli/devices.c:645 -#: ../clients/cli/devices.c:853 ../clients/cli/devices.c:854 -#: ../clients/cli/devices.c:855 ../clients/cli/devices.c:856 -#: ../clients/cli/devices.c:890 ../clients/cli/devices.c:892 -#: ../clients/cli/devices.c:920 ../clients/cli/devices.c:921 -#: ../clients/cli/devices.c:922 ../clients/cli/devices.c:923 -#: ../clients/cli/devices.c:924 ../clients/cli/devices.c:925 -#: ../clients/cli/devices.c:926 ../clients/cli/devices.c:928 -#: ../clients/cli/devices.c:930 ../clients/cli/general.c:421 -msgid "yes" -msgstr "tak" - -#: ../clients/cli/connections.c:815 ../clients/cli/connections.c:817 -#: ../clients/cli/connections.c:819 ../clients/cli/connections.c:918 -#: ../clients/cli/connections.c:919 ../clients/cli/connections.c:921 -#: ../clients/cli/connections.c:3128 ../clients/cli/connections.c:7084 -#: ../clients/cli/connections.c:7085 ../clients/cli/devices.c:595 -#: ../clients/cli/devices.c:645 ../clients/cli/devices.c:853 -#: ../clients/cli/devices.c:854 ../clients/cli/devices.c:855 -#: ../clients/cli/devices.c:856 ../clients/cli/devices.c:890 -#: ../clients/cli/devices.c:892 ../clients/cli/devices.c:920 -#: ../clients/cli/devices.c:921 ../clients/cli/devices.c:922 -#: ../clients/cli/devices.c:923 ../clients/cli/devices.c:924 -#: ../clients/cli/devices.c:925 ../clients/cli/devices.c:926 -#: ../clients/cli/devices.c:928 ../clients/cli/devices.c:930 -#: ../clients/cli/general.c:423 -msgid "no" -msgstr "nie" - -#: ../clients/cli/connections.c:1065 +#: ../clients/cli/connections.c:1069 msgid "Activate connection details" msgstr "Szczegóły aktywowania połączenia" -#: ../clients/cli/connections.c:1301 +#: ../clients/cli/connections.c:1305 #, c-format msgid "invalid field '%s'; allowed fields: %s and %s, or %s,%s" msgstr "nieprawidÅ‚owe pole \"%s\"; dozwolone pola: %s i %s, albo %s,%s" -#: ../clients/cli/connections.c:1316 ../clients/cli/connections.c:1324 +#: ../clients/cli/connections.c:1320 ../clients/cli/connections.c:1328 #, c-format msgid "'%s' has to be alone" msgstr "\"%s\" musi być same" #. Add headers -#: ../clients/cli/connections.c:1379 +#: ../clients/cli/connections.c:1383 msgid "NetworkManager active profiles" msgstr "Aktywne profile usÅ‚ugi NetworkManager" -#: ../clients/cli/connections.c:1380 +#: ../clients/cli/connections.c:1384 msgid "NetworkManager connection profiles" msgstr "Profile połączeÅ„ usÅ‚ugi NetworkManager" -#: ../clients/cli/connections.c:1420 ../clients/cli/connections.c:2148 -#: ../clients/cli/connections.c:2170 ../clients/cli/connections.c:2179 -#: ../clients/cli/connections.c:2189 ../clients/cli/connections.c:2199 -#: ../clients/cli/connections.c:2361 ../clients/cli/connections.c:8652 -#: ../clients/cli/connections.c:8857 ../clients/cli/devices.c:2023 -#: ../clients/cli/devices.c:2031 ../clients/cli/devices.c:2353 -#: ../clients/cli/devices.c:2360 ../clients/cli/devices.c:2374 -#: ../clients/cli/devices.c:2381 ../clients/cli/devices.c:2398 -#: ../clients/cli/devices.c:2406 ../clients/cli/devices.c:2594 -#: ../clients/cli/devices.c:2696 ../clients/cli/devices.c:2703 +#: ../clients/cli/connections.c:1424 ../clients/cli/connections.c:2152 +#: ../clients/cli/connections.c:2174 ../clients/cli/connections.c:2183 +#: ../clients/cli/connections.c:2193 ../clients/cli/connections.c:2203 +#: ../clients/cli/connections.c:2365 ../clients/cli/connections.c:8815 +#: ../clients/cli/connections.c:9020 ../clients/cli/devices.c:2028 +#: ../clients/cli/devices.c:2036 ../clients/cli/devices.c:2359 +#: ../clients/cli/devices.c:2366 ../clients/cli/devices.c:2380 +#: ../clients/cli/devices.c:2387 ../clients/cli/devices.c:2404 +#: ../clients/cli/devices.c:2412 ../clients/cli/devices.c:2425 +#: ../clients/cli/devices.c:2669 ../clients/cli/devices.c:2676 +#: ../clients/cli/devices.c:2795 ../clients/cli/devices.c:2802 #, c-format msgid "Error: %s argument is missing." msgstr "Błąd: brak parametru %s." -#: ../clients/cli/connections.c:1435 +#: ../clients/cli/connections.c:1439 #, c-format msgid "Error: %s - no such connection profile." msgstr "Błąd: %s - nie ma takiego profilu połączenia." -#: ../clients/cli/connections.c:1494 ../clients/cli/connections.c:2222 -#: ../clients/cli/connections.c:9168 ../clients/cli/devices.c:2573 -#: ../clients/cli/devices.c:3050 ../clients/cli/general.c:518 +#: ../clients/cli/connections.c:1498 ../clients/cli/connections.c:2226 +#: ../clients/cli/connections.c:9331 ../clients/cli/devices.c:2636 +#: ../clients/cli/devices.c:3149 ../clients/cli/general.c:518 #: ../clients/cli/general.c:567 ../clients/cli/general.c:584 #: ../clients/cli/general.c:623 ../clients/cli/general.c:637 #: ../clients/cli/general.c:755 ../clients/cli/general.c:802 @@ -1432,81 +1455,81 @@ msgstr "Błąd: %s - nie ma takiego profilu połączenia." msgid "Error: %s." msgstr "Błąd: %s." -#: ../clients/cli/connections.c:1590 +#: ../clients/cli/connections.c:1594 #, c-format msgid "no active connection on device '%s'" msgstr "brak aktywnych połączeÅ„ na urzÄ…dzeniu \"%s\"" -#: ../clients/cli/connections.c:1598 +#: ../clients/cli/connections.c:1602 msgid "no active connection or device" msgstr "brak aktywnych połączeÅ„ na urzÄ…dzeÅ„" -#: ../clients/cli/connections.c:1669 +#: ../clients/cli/connections.c:1673 #, c-format msgid "device '%s' not compatible with connection '%s'" msgstr "urzÄ…dzenie \"%s\" nie jest zgodne z połączeniem \"%s\"" -#: ../clients/cli/connections.c:1672 +#: ../clients/cli/connections.c:1676 #, c-format msgid "no device found for connection '%s'" msgstr "nie odnaleziono urzÄ…dzenia dla połączenia \"%s\"" -#: ../clients/cli/connections.c:1684 +#: ../clients/cli/connections.c:1688 msgid "unknown reason" msgstr "nieznany powód" -#: ../clients/cli/connections.c:1686 ../clients/cli/general.c:272 +#: ../clients/cli/connections.c:1690 ../clients/cli/general.c:272 msgid "none" msgstr "brak" -#: ../clients/cli/connections.c:1688 +#: ../clients/cli/connections.c:1692 msgid "the user was disconnected" msgstr "użytkownik zostaÅ‚ rozłączony" -#: ../clients/cli/connections.c:1690 +#: ../clients/cli/connections.c:1694 msgid "the base network connection was interrupted" msgstr "podstawowe połączenie sieciowe zostaÅ‚o przerwane" -#: ../clients/cli/connections.c:1692 +#: ../clients/cli/connections.c:1696 msgid "the VPN service stopped unexpectedly" msgstr "usÅ‚uga VPN zostaÅ‚a nieoczekiwanie zatrzymana" -#: ../clients/cli/connections.c:1694 +#: ../clients/cli/connections.c:1698 msgid "the VPN service returned invalid configuration" msgstr "usÅ‚uga VPN zwróciÅ‚a nieprawidÅ‚owÄ… konfiguracjÄ™" -#: ../clients/cli/connections.c:1696 +#: ../clients/cli/connections.c:1700 msgid "the connection attempt timed out" msgstr "próba połączenia przekroczyÅ‚a czas oczekiwania" -#: ../clients/cli/connections.c:1698 +#: ../clients/cli/connections.c:1702 msgid "the VPN service did not start in time" msgstr "usÅ‚uga VPN nie zostaÅ‚a uruchomiona w czasie" -#: ../clients/cli/connections.c:1700 +#: ../clients/cli/connections.c:1704 msgid "the VPN service failed to start" msgstr "uruchomienie usÅ‚ugi VPN siÄ™ nie powiodÅ‚o" -#: ../clients/cli/connections.c:1702 +#: ../clients/cli/connections.c:1706 msgid "no valid VPN secrets" msgstr "brak prawidÅ‚owych haseÅ‚ VPN" -#: ../clients/cli/connections.c:1704 +#: ../clients/cli/connections.c:1708 msgid "invalid VPN secrets" msgstr "nieprawidÅ‚owe hasÅ‚a VPN" -#: ../clients/cli/connections.c:1706 +#: ../clients/cli/connections.c:1710 msgid "the connection was removed" msgstr "połączenie zostaÅ‚o usuniÄ™te" -#: ../clients/cli/connections.c:1728 ../clients/cli/connections.c:1756 -#: ../clients/cli/connections.c:1917 ../clients/cli/connections.c:6975 +#: ../clients/cli/connections.c:1732 ../clients/cli/connections.c:1760 +#: ../clients/cli/connections.c:1921 ../clients/cli/connections.c:7130 #, c-format msgid "Connection successfully activated (D-Bus active path: %s)\n" msgstr "" "Połączenie zostaÅ‚o pomyÅ›lnie aktywowane (Å›cieżka aktywacji D-Bus: %s)\n" -#: ../clients/cli/connections.c:1735 +#: ../clients/cli/connections.c:1739 #, c-format msgid "" "Connection successfully activated (master waiting for slaves) (D-Bus active " @@ -1515,181 +1538,189 @@ msgstr "" "Połączenie zostaÅ‚o pomyÅ›lnie aktywowane (główne oczekujÄ…ce na podrzÄ™dne) " "(Å›cieżka aktywacji D-Bus: %s)\n" -#: ../clients/cli/connections.c:1739 ../clients/cli/connections.c:1761 +#: ../clients/cli/connections.c:1743 ../clients/cli/connections.c:1765 #, c-format msgid "Error: Connection activation failed." msgstr "Błąd: aktywacja połączenia siÄ™ nie powiodÅ‚a." -#: ../clients/cli/connections.c:1812 +#: ../clients/cli/connections.c:1816 #, c-format msgid "VPN connection successfully activated (D-Bus active path: %s)\n" msgstr "" "Połączenie VPN zostaÅ‚o pomyÅ›lnie aktywowane (Å›cieżka aktywacji D-Bus: %s)\n" -#: ../clients/cli/connections.c:1820 +#: ../clients/cli/connections.c:1824 #, c-format msgid "Error: Connection activation failed: %s." msgstr "Błąd: aktywacja połączenia siÄ™ nie powiodÅ‚a: %s." -#: ../clients/cli/connections.c:1839 ../clients/cli/devices.c:1334 +#: ../clients/cli/connections.c:1843 ../clients/cli/devices.c:1339 #, c-format msgid "Error: Timeout %d sec expired." msgstr "Błąd: przekroczono czas oczekiwania o %d sekund." -#: ../clients/cli/connections.c:1899 +#: ../clients/cli/connections.c:1903 #, c-format msgid "Error: Connection activation failed: %s" msgstr "Błąd: aktywacja połączenia siÄ™ nie powiodÅ‚a: %s" -#: ../clients/cli/connections.c:1984 +#: ../clients/cli/connections.c:1988 #, c-format msgid "failed to read passwd-file '%s': %s" msgstr "odczytanie passwd-file \"%s\" siÄ™ nie powiodÅ‚o: %s" -#: ../clients/cli/connections.c:1996 +#: ../clients/cli/connections.c:2000 #, c-format msgid "missing colon in 'password' entry '%s'" msgstr "brak dwukropka we wpisie \"password\" \"%s\"" -#: ../clients/cli/connections.c:2004 +#: ../clients/cli/connections.c:2008 #, c-format msgid "missing dot in 'password' entry '%s'" msgstr "brak kropki we wpisie \"password\" \"%s\"" -#: ../clients/cli/connections.c:2017 +#: ../clients/cli/connections.c:2021 #, c-format msgid "invalid setting name in 'password' entry '%s'" msgstr "nieprawidÅ‚owa nazwa ustawienia we wpisie \"password\" \"%s\"" -#: ../clients/cli/connections.c:2064 ../clients/cli/connections.c:2223 +#: ../clients/cli/connections.c:2068 ../clients/cli/connections.c:2227 msgid "unknown error" msgstr "nieznany błąd" -#: ../clients/cli/connections.c:2073 +#: ../clients/cli/connections.c:2077 #, c-format msgid "unknown device '%s'." msgstr "nieznane urzÄ…dzenie \"%s\"." -#: ../clients/cli/connections.c:2078 +#: ../clients/cli/connections.c:2082 msgid "neither a valid connection nor device given" msgstr "nie podano prawidÅ‚owego połączenia ani urzÄ…dzenia" -#: ../clients/cli/connections.c:2161 +#: ../clients/cli/connections.c:2165 #, c-format msgid "Error: Connection '%s' does not exist." msgstr "Błąd: połączenie \"%s\" nie istnieje." -#: ../clients/cli/connections.c:2207 ../clients/cli/devices.c:1233 -#: ../clients/cli/devices.c:2037 ../clients/cli/devices.c:2417 -#: ../clients/cli/devices.c:2709 +#: ../clients/cli/connections.c:2211 ../clients/cli/devices.c:1238 +#: ../clients/cli/devices.c:2042 ../clients/cli/devices.c:2436 +#: ../clients/cli/devices.c:2682 ../clients/cli/devices.c:2808 #, c-format msgid "Unknown parameter: %s\n" msgstr "Nieznany parametr: %s\n" -#: ../clients/cli/connections.c:2231 +#: ../clients/cli/connections.c:2235 msgid "preparing" msgstr "przygotowywanie" -#: ../clients/cli/connections.c:2255 +#: ../clients/cli/connections.c:2259 #, c-format msgid "Connection '%s' (%s) successfully deleted.\n" msgstr "PomyÅ›lnie usuniÄ™to połączenie \"%s\" (%s).\n" -#: ../clients/cli/connections.c:2271 +#: ../clients/cli/connections.c:2275 #, c-format msgid "Connection '%s' successfully deactivated (D-Bus active path: %s)\n" msgstr "" -"Połączenie \"%s\" zostaÅ‚o pomyÅ›lnie deaktywowane (Å›cieżka aktywacji D-Bus: " +"Połączenie \"%s\" zostaÅ‚o pomyÅ›lnie dezaktywowane (Å›cieżka aktywacji D-Bus: " "%s)\n" -#: ../clients/cli/connections.c:2343 ../clients/cli/connections.c:8843 -#: ../clients/cli/connections.c:8960 +#: ../clients/cli/connections.c:2347 ../clients/cli/connections.c:9006 +#: ../clients/cli/connections.c:9123 #, c-format msgid "Error: No connection specified." msgstr "Błąd: nie podano połączenia." -#: ../clients/cli/connections.c:2375 +#: ../clients/cli/connections.c:2379 #, c-format msgid "Error: '%s' is not an active connection.\n" msgstr "Błąd: \"%s\" nie jest aktywnym połączeniem.\n" -#: ../clients/cli/connections.c:2376 ../clients/cli/connections.c:8872 +#: ../clients/cli/connections.c:2380 ../clients/cli/connections.c:9035 #, c-format msgid "Error: not all active connections found." msgstr "Błąd: nie odnaleziono wszystkich aktywnych połączeÅ„." -#: ../clients/cli/connections.c:2385 +#: ../clients/cli/connections.c:2389 #, c-format msgid "Error: no active connection provided." msgstr "Błąd: nie podano aktywnego połączenia." -#: ../clients/cli/connections.c:2700 ../clients/cli/utils.c:533 +#: ../clients/cli/connections.c:2708 ../clients/cli/utils.c:569 #, c-format msgid "'%s' not among [%s]" msgstr "\"%s\" nie jest w [%s]" -#: ../clients/cli/connections.c:2779 +#: ../clients/cli/connections.c:2787 #, c-format msgid "Error: '%s': '%s' is not a valid %s MAC address." msgstr "Błąd: \"%s\": \"%s\" nie jest prawidÅ‚owym adresem MAC %s." #. Ask for optional arguments -#: ../clients/cli/connections.c:2780 ../clients/cli/connections.c:3242 -#: ../clients/tui/nm-editor-utils.c:164 ../libnm-core/nm-connection.c:1613 -#: ../libnm-glib/nm-device.c:1801 ../libnm/nm-device.c:1626 +#: ../clients/cli/connections.c:2788 ../clients/cli/connections.c:3273 +#: ../clients/tui/nm-editor-utils.c:164 ../libnm-core/nm-connection.c:1614 +#: ../libnm-glib/nm-device.c:1801 ../libnm/nm-device.c:1646 msgid "InfiniBand" msgstr "InfiniBand" -#: ../clients/cli/connections.c:2780 ../clients/tui/nm-editor-utils.c:147 -#: ../libnm-glib/nm-device.c:1789 ../libnm/nm-device.c:1614 +#: ../clients/cli/connections.c:2788 ../clients/tui/nm-editor-utils.c:147 +#: ../libnm-glib/nm-device.c:1789 ../libnm/nm-device.c:1634 msgid "Ethernet" msgstr "Ethernet" -#: ../clients/cli/connections.c:2800 +#: ../clients/cli/connections.c:2808 #, c-format msgid "Error: 'mtu': '%s' is not a valid MTU." msgstr "Błąd: \"mtu\": \"%s\" nie jest prawidÅ‚owym MTU." -#: ../clients/cli/connections.c:2816 +#: ../clients/cli/connections.c:2824 #, c-format msgid "Error: 'parent': '%s' is not a valid interface name." msgstr "Błąd: \"parent\": \"%s\" nie jest prawidÅ‚owÄ… nazwÄ… interfejsu." -#: ../clients/cli/connections.c:2837 +#: ../clients/cli/connections.c:2845 #, c-format msgid "Error: 'p-key': '%s' is not a valid InfiniBand P_KEY." msgstr "Błąd: \"p-key\": \"%s\" nie jest prawidÅ‚owym P_KEY InfiniBand." -#: ../clients/cli/connections.c:2882 +#: ../clients/cli/connections.c:2890 #, c-format msgid "Error: '%s': '%s' is not a valid %s %s." msgstr "Błąd: \"%s\": \"%s\" nie jest prawidÅ‚owym %s %s." -#: ../clients/cli/connections.c:2895 +#: ../clients/cli/connections.c:2903 msgid "Wi-Fi mode" msgstr "Tryb Wi-Fi" -#: ../clients/cli/connections.c:2904 +#: ../clients/cli/connections.c:2912 msgid "InfiniBand transport mode" msgstr "Tryb przesyÅ‚ania InfiniBand" -#: ../clients/cli/connections.c:2917 +#: ../clients/cli/connections.c:2924 +msgid "ADSL protocol" +msgstr "Protokół ADSL" + +#: ../clients/cli/connections.c:2935 +msgid "ADSL encapsulation" +msgstr "KapsuÅ‚kowanie ADSL" + +#: ../clients/cli/connections.c:2948 #, c-format msgid "Error: 'flags': '%s' is not valid; use <0-7>." msgstr "Błąd: \"flags\": \"%s\" jest nieprawidÅ‚owe; należy użyć <0-7>." -#: ../clients/cli/connections.c:2939 +#: ../clients/cli/connections.c:2970 #, c-format msgid "Error: '%s': '%s' is not valid; %s " msgstr "Błąd: \"%s\": \"%s\" jest nieprawidÅ‚owe; %s " -#: ../clients/cli/connections.c:3118 +#: ../clients/cli/connections.c:3149 #, c-format msgid "Error: '%s': '%s' is not valid; use <%u-%u>." msgstr "Błąd: \"%s\": \"%s\" jest nieprawidÅ‚owe; należy użyć <%u-%u>." #. Ask for optional arguments. -#: ../clients/cli/connections.c:3174 +#: ../clients/cli/connections.c:3205 #, c-format msgid "There is %d optional argument for '%s' connection type.\n" msgid_plural "There are %d optional arguments for '%s' connection type.\n" @@ -1697,7 +1728,7 @@ msgstr[0] "Istnieje %d opcjonalny parametr dla typu połączenia \"%s\".\n" msgstr[1] "IstniejÄ… %d opcjonalne parametry dla typu połączenia \"%s\".\n" msgstr[2] "Istnieje %d opcjonalnych parametrów dla typu połączenia \"%s\".\n" -#: ../clients/cli/connections.c:3177 +#: ../clients/cli/connections.c:3208 #, c-format msgid "Do you want to provide it? %s" msgid_plural "Do you want to provide them? %s" @@ -1706,468 +1737,480 @@ msgstr[1] "Podać je? %s" msgstr[2] "Podać je? %s" #. Ask for optional arguments -#: ../clients/cli/connections.c:3194 +#: ../clients/cli/connections.c:3225 msgid "ethernet" msgstr "ethernet" -#: ../clients/cli/connections.c:3199 ../clients/cli/connections.c:3247 -#: ../clients/cli/connections.c:3381 ../clients/cli/connections.c:3460 +#: ../clients/cli/connections.c:3230 ../clients/cli/connections.c:3278 +#: ../clients/cli/connections.c:3412 ../clients/cli/connections.c:3491 msgid "MTU [auto]: " msgstr "MTU [auto]: " -#: ../clients/cli/connections.c:3210 ../clients/cli/connections.c:3258 -#: ../clients/cli/connections.c:3353 ../clients/cli/connections.c:3392 -#: ../clients/cli/connections.c:3764 +#: ../clients/cli/connections.c:3241 ../clients/cli/connections.c:3289 +#: ../clients/cli/connections.c:3384 ../clients/cli/connections.c:3423 +#: ../clients/cli/connections.c:3795 msgid "MAC [none]: " msgstr "MAC [none]: " -#: ../clients/cli/connections.c:3221 +#: ../clients/cli/connections.c:3252 msgid "Cloned MAC [none]: " msgstr "Sklonowany MAC [none]: " -#: ../clients/cli/connections.c:3269 +#: ../clients/cli/connections.c:3300 #, c-format msgid "Transport mode %s" msgstr "Tryb przesyÅ‚ania %s" -#: ../clients/cli/connections.c:3282 +#: ../clients/cli/connections.c:3313 msgid "Parent interface [none]: " msgstr "Interfejs nadrzÄ™dny [none]: " -#: ../clients/cli/connections.c:3293 +#: ../clients/cli/connections.c:3324 msgid "P_KEY [none]: " msgstr "P_KEY [none]: " -#: ../clients/cli/connections.c:3303 +#: ../clients/cli/connections.c:3334 #, c-format msgid "Error: 'p-key' is mandatory when 'parent' is specified.\n" msgstr "Błąd: \"p-key\" jest wymagane, kiedy podano \"parent\".\n" #. Ask for optional arguments -#: ../clients/cli/connections.c:3320 ../clients/tui/nm-editor-utils.c:155 -#: ../libnm-glib/nm-device.c:1791 ../libnm/nm-device.c:1616 +#: ../clients/cli/connections.c:3351 ../clients/tui/nm-editor-utils.c:155 +#: ../libnm-glib/nm-device.c:1791 ../libnm/nm-device.c:1636 msgid "Wi-Fi" msgstr "Wi-Fi" -#: ../clients/cli/connections.c:3328 +#: ../clients/cli/connections.c:3359 #, c-format msgid "Mode %s" msgstr "Tryb %s" #. Ask for optional 'wimax' arguments. -#: ../clients/cli/connections.c:3348 ../libnm-glib/nm-device.c:1797 -#: ../libnm/nm-device.c:1622 +#: ../clients/cli/connections.c:3379 ../libnm-glib/nm-device.c:1797 +#: ../libnm/nm-device.c:1642 msgid "WiMAX" msgstr "WiMAX" #. Ask for optional 'pppoe' arguments. -#: ../clients/cli/connections.c:3371 +#: ../clients/cli/connections.c:3402 msgid "PPPoE" msgstr "PPPoE" -#: ../clients/cli/connections.c:3375 ../clients/cli/connections.c:3413 +#: ../clients/cli/connections.c:3406 ../clients/cli/connections.c:3444 +#: ../clients/cli/connections.c:3917 msgid "Password [none]: " msgstr "HasÅ‚o [none]: " -#: ../clients/cli/connections.c:3377 +#: ../clients/cli/connections.c:3408 msgid "Service [none]: " msgstr "UsÅ‚uga [none]: " #. Ask for optional 'gsm' or 'cdma' arguments. -#: ../clients/cli/connections.c:3407 +#: ../clients/cli/connections.c:3438 msgid "mobile broadband" msgstr "komórkowe" -#: ../clients/cli/connections.c:3411 ../clients/cli/connections.c:3836 +#: ../clients/cli/connections.c:3442 ../clients/cli/connections.c:3867 msgid "Username [none]: " msgstr "Nazwa użytkownika [none]: " #. Ask for optional 'bluetooth' arguments. -#: ../clients/cli/connections.c:3426 +#: ../clients/cli/connections.c:3457 msgid "bluetooth" msgstr "bluetooth" -#: ../clients/cli/connections.c:3433 +#: ../clients/cli/connections.c:3464 #, c-format msgid "Bluetooth type %s" msgstr "Typ Bluetooth %s" -#: ../clients/cli/connections.c:3439 +#: ../clients/cli/connections.c:3470 #, c-format msgid "Error: 'bt-type': '%s' is not a valid bluetooth type.\n" msgstr "Błąd: \"bt-type\": \"%s\" nie jest prawidÅ‚owym typem Bluetooth.\n" #. Ask for optional 'vlan' arguments. #. 13 -#: ../clients/cli/connections.c:3455 ../clients/cli/devices.c:239 +#: ../clients/cli/connections.c:3486 ../clients/cli/devices.c:240 #: ../clients/tui/nm-editor-utils.c:218 ../clients/tui/nmt-page-vlan.c:97 -#: ../libnm-core/nm-connection.c:1611 ../libnm-glib/nm-device.c:1809 -#: ../libnm-util/nm-connection.c:1614 ../libnm/nm-device.c:1634 +#: ../libnm-core/nm-connection.c:1612 ../libnm-glib/nm-device.c:1809 +#: ../libnm-util/nm-connection.c:1614 ../libnm/nm-device.c:1654 msgid "VLAN" msgstr "VLAN" -#: ../clients/cli/connections.c:3471 +#: ../clients/cli/connections.c:3502 msgid "VLAN flags (<0-7>) [none]: " msgstr "Flagi VLAN= (<0-7>) [none]: " -#: ../clients/cli/connections.c:3482 +#: ../clients/cli/connections.c:3513 msgid "Ingress priority maps [none]: " msgstr "WejÅ›ciowe mapy priorytetów [none]: " -#: ../clients/cli/connections.c:3493 +#: ../clients/cli/connections.c:3524 msgid "Egress priority maps [none]: " msgstr "WyjÅ›ciowe mapy priorytetów [none]: " -#: ../clients/cli/connections.c:3504 +#: ../clients/cli/connections.c:3535 msgid "Bonding mode [balance-rr]: " msgstr "Tryb wiÄ…zania [balance-rr]: " #. Ask for optional 'bond' arguments. -#: ../clients/cli/connections.c:3520 +#: ../clients/cli/connections.c:3551 msgid "bond" msgstr "wiÄ…zanie" -#: ../clients/cli/connections.c:3542 +#: ../clients/cli/connections.c:3573 msgid "Bonding primary interface [none]: " msgstr "Interfejs nadrzÄ™dny wiÄ…zania [none]: " -#: ../clients/cli/connections.c:3545 +#: ../clients/cli/connections.c:3576 #, c-format msgid "Error: 'primary': '%s' is not a valid interface name.\n" msgstr "Błąd: \"primary\": \"%s\" nie jest prawidÅ‚owÄ… nazwÄ… interfejsu.\n" -#: ../clients/cli/connections.c:3553 +#: ../clients/cli/connections.c:3584 #, c-format msgid "Bonding monitoring mode %s" msgstr "Tryb monitorowania wiÄ…zania %s" -#: ../clients/cli/connections.c:3559 +#: ../clients/cli/connections.c:3590 #, c-format msgid "Error: '%s' is not a valid monitoring mode; use '%s' or '%s'.\n" msgstr "" "Błąd: \"%s\" nie jest prawidÅ‚owym trybem monitorowania; należy użyć \"%s\" " "lub \"%s\".\n" -#: ../clients/cli/connections.c:3568 +#: ../clients/cli/connections.c:3599 msgid "Bonding miimon [100]: " msgstr "miimon wiÄ…zania [100]: " -#: ../clients/cli/connections.c:3571 +#: ../clients/cli/connections.c:3602 #, c-format msgid "Error: 'miimon': '%s' is not a valid number <0-%u>.\n" msgstr "Błąd: \"miimon\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <0-%u>.\n" -#: ../clients/cli/connections.c:3579 +#: ../clients/cli/connections.c:3610 msgid "Bonding downdelay [0]: " msgstr "downdelay wiÄ…zania [0]: " -#: ../clients/cli/connections.c:3582 +#: ../clients/cli/connections.c:3613 #, c-format msgid "Error: 'downdelay': '%s' is not a valid number <0-%u>.\n" msgstr "Błąd: \"downdelay\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <0-%u>.\n" -#: ../clients/cli/connections.c:3590 +#: ../clients/cli/connections.c:3621 msgid "Bonding updelay [0]: " msgstr "updelay wiÄ…zania [0]: " -#: ../clients/cli/connections.c:3593 +#: ../clients/cli/connections.c:3624 #, c-format msgid "Error: 'updelay': '%s' is not a valid number <0-%u>.\n" msgstr "Błąd: \"updelay\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <0-%u>.\n" -#: ../clients/cli/connections.c:3602 +#: ../clients/cli/connections.c:3633 msgid "Bonding arp-interval [0]: " msgstr "arp-interval wiÄ…zania [0]: " -#: ../clients/cli/connections.c:3605 +#: ../clients/cli/connections.c:3636 #, c-format msgid "Error: 'arp-interval': '%s' is not a valid number <0-%u>.\n" msgstr "Błąd: \"arp-interval\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <0-%u>.\n" #. FIXME: verify the string -#: ../clients/cli/connections.c:3613 +#: ../clients/cli/connections.c:3644 msgid "Bonding arp-ip-target [none]: " msgstr "arp-ip-target wiÄ…zania [none]: " -#: ../clients/cli/connections.c:3620 +#: ../clients/cli/connections.c:3651 msgid "LACP rate ('slow' or 'fast') [slow]: " msgstr "PrÄ™dkość LACP (\"slow\" lub \"fast\") [slow]: " -#: ../clients/cli/connections.c:3626 +#: ../clients/cli/connections.c:3657 #, c-format msgid "Error: 'lacp_rate': '%s' is invalid ('slow' or 'fast').\n" msgstr "" "Błąd: \"lacp_rate\": \"%s\" jest nieprawidÅ‚owe (\"slow\" lub \"fast\").\n" -#: ../clients/cli/connections.c:3649 +#: ../clients/cli/connections.c:3680 msgid "Team JSON configuration [none]: " msgstr "Konfiguracja JSON zespoÅ‚u [none]: " -#: ../clients/cli/connections.c:3666 +#: ../clients/cli/connections.c:3697 msgid "team" msgstr "zespół" -#: ../clients/cli/connections.c:3672 +#: ../clients/cli/connections.c:3703 msgid "team-slave" msgstr "podrzÄ™dny-zespoÅ‚u" #. Ask for optional 'bridge' arguments. -#: ../clients/cli/connections.c:3684 +#: ../clients/cli/connections.c:3715 msgid "bridge" msgstr "mostek" -#: ../clients/cli/connections.c:3690 +#: ../clients/cli/connections.c:3721 #, c-format msgid "Enable STP %s" msgstr "Włączenie STP %s" -#: ../clients/cli/connections.c:3695 +#: ../clients/cli/connections.c:3726 #, c-format msgid "Error: 'stp': %s.\n" msgstr "Błąd: \"stp\": %s.\n" -#: ../clients/cli/connections.c:3703 +#: ../clients/cli/connections.c:3734 msgid "STP priority [32768]: " msgstr "Priorytet STP [32768]: " -#: ../clients/cli/connections.c:3707 +#: ../clients/cli/connections.c:3738 #, c-format msgid "Error: 'priority': '%s' is not a valid number <0-%d>.\n" msgstr "Błąd: \"priority\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <0-%d>.\n" -#: ../clients/cli/connections.c:3715 +#: ../clients/cli/connections.c:3746 msgid "Forward delay [15]: " msgstr "Forward-delay [15]: " -#: ../clients/cli/connections.c:3719 +#: ../clients/cli/connections.c:3750 #, c-format msgid "Error: 'forward-delay': '%s' is not a valid number <2-30>.\n" msgstr "Błąd: \"forward-delay\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <2-30>.\n" -#: ../clients/cli/connections.c:3728 +#: ../clients/cli/connections.c:3759 msgid "Hello time [2]: " msgstr "Hello-time [2]: " -#: ../clients/cli/connections.c:3732 +#: ../clients/cli/connections.c:3763 #, c-format msgid "Error: 'hello-time': '%s' is not a valid number <1-10>.\n" msgstr "Błąd: \"hello-time\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <1-10>.\n" -#: ../clients/cli/connections.c:3740 +#: ../clients/cli/connections.c:3771 msgid "Max age [20]: " msgstr "Max-age [20]: " -#: ../clients/cli/connections.c:3744 +#: ../clients/cli/connections.c:3775 #, c-format msgid "Error: 'max-age': '%s' is not a valid number <6-40>.\n" msgstr "Błąd: \"max-age\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <6-40>.\n" -#: ../clients/cli/connections.c:3752 +#: ../clients/cli/connections.c:3783 msgid "MAC address ageing time [300]: " msgstr "Czas starzenia adresu MAC [300]: " -#: ../clients/cli/connections.c:3756 +#: ../clients/cli/connections.c:3787 #, c-format msgid "Error: 'ageing-time': '%s' is not a valid number <0-1000000>.\n" msgstr "" "Błąd: \"ageing-time\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <0-1000000>.\n" #. Ask for optional 'bridge-slave' arguments. -#: ../clients/cli/connections.c:3783 +#: ../clients/cli/connections.c:3814 msgid "bridge-slave" msgstr "podrzÄ™dny-mostku" -#: ../clients/cli/connections.c:3788 +#: ../clients/cli/connections.c:3819 msgid "Bridge port priority [32]: " msgstr "Priorytet portu mostku [32]: " -#: ../clients/cli/connections.c:3801 +#: ../clients/cli/connections.c:3832 msgid "Bridge port STP path cost [100]: " msgstr "Koszt Å›cieżki STP portu mostku [100]: " -#: ../clients/cli/connections.c:3815 +#: ../clients/cli/connections.c:3846 #, c-format msgid "Hairpin %s" msgstr "Hairpin %s" -#: ../clients/cli/connections.c:3820 +#: ../clients/cli/connections.c:3851 #, c-format msgid "Error: 'hairpin': %s.\n" msgstr "Błąd: \"hairpin\": %s.\n" #. Ask for optional 'olpc' arguments. -#: ../clients/cli/connections.c:3847 ../libnm-glib/nm-device.c:1795 -#: ../libnm/nm-device.c:1620 +#: ../clients/cli/connections.c:3878 ../libnm-glib/nm-device.c:1795 +#: ../libnm/nm-device.c:1640 msgid "OLPC Mesh" msgstr "Kratowe OLPC" -#: ../clients/cli/connections.c:3852 +#: ../clients/cli/connections.c:3883 msgid "OLPC Mesh channel [1]: " msgstr "KanaÅ‚ sieci kratowej OLPC [1]: " -#: ../clients/cli/connections.c:3855 +#: ../clients/cli/connections.c:3886 #, c-format msgid "Error: 'channel': '%s' is not a valid number <1-13>.\n" msgstr "Błąd: \"channel\": \"%s\" nie jest prawidÅ‚owÄ… liczbÄ… <1-13>.\n" -#: ../clients/cli/connections.c:3863 +#: ../clients/cli/connections.c:3894 msgid "DHCP anycast MAC address [none]: " msgstr "Adres MAC \"anycast\" DHCP [none]: " -#: ../clients/cli/connections.c:3905 +#. Ask for optional 'adsl' arguments. +#: ../clients/cli/connections.c:3913 ../libnm-glib/nm-device.c:1811 +#: ../libnm/nm-device.c:1656 +msgid "ADSL" +msgstr "ADSL" + +#: ../clients/cli/connections.c:3921 +#, c-format +msgid "ADSL encapsulation %s" +msgstr "KapsuÅ‚kowanie ADSL %s" + +#: ../clients/cli/connections.c:3963 msgid "IPv4 address (IP[/plen]) [none]: " msgstr "Adres IPv4 (IP[/plen]) [none]: " -#: ../clients/cli/connections.c:3907 +#: ../clients/cli/connections.c:3965 msgid "IPv6 address (IP[/plen]) [none]: " msgstr "Adres IPv6 (IP[/plen]) [none]: " -#: ../clients/cli/connections.c:3921 +#: ../clients/cli/connections.c:3979 #, c-format msgid " Address successfully added: %s\n" msgstr " PomyÅ›lnie dodano adres: %s\n" -#: ../clients/cli/connections.c:3923 +#: ../clients/cli/connections.c:3981 #, c-format msgid " Warning: address already present: %s\n" msgstr " Ostrzeżenie: adres jest już obecny: %s\n" -#: ../clients/cli/connections.c:3925 +#: ../clients/cli/connections.c:3983 #, c-format msgid " Warning: ignoring garbage at the end: '%s'\n" msgstr " Ostrzeżenie: ignorowanie Å›mieci na koÅ„cu: \"%s\"\n" -#: ../clients/cli/connections.c:3927 ../clients/cli/connections.c:4807 -#: ../clients/cli/connections.c:4868 ../clients/cli/connections.c:5269 -#: ../clients/cli/connections.c:5302 +#: ../clients/cli/connections.c:3985 ../clients/cli/connections.c:4867 +#: ../clients/cli/connections.c:4928 ../clients/cli/connections.c:5401 +#: ../clients/cli/connections.c:5434 msgid "Error: " msgstr "Błąd: " -#: ../clients/cli/connections.c:3947 +#: ../clients/cli/connections.c:4005 msgid "IPv4 gateway [none]: " msgstr "Brama IPv4 [none]: " -#: ../clients/cli/connections.c:3950 +#: ../clients/cli/connections.c:4008 msgid "IPv6 gateway [none]: " msgstr "Brama IPv6 [none]: " -#: ../clients/cli/connections.c:3970 +#: ../clients/cli/connections.c:4028 #, c-format msgid "Error: invalid gateway address '%s'\n" msgstr "Błąd: nieprawidÅ‚owy adres bramy \"%s\"\n" #. Ask for IP addresses -#: ../clients/cli/connections.c:3983 +#: ../clients/cli/connections.c:4041 #, c-format msgid "Do you want to add IP addresses? %s" msgstr "Dodać adresy IP? %s" -#: ../clients/cli/connections.c:3991 +#: ../clients/cli/connections.c:4049 #, c-format msgid "Press <Enter> to finish adding addresses.\n" msgstr "NaciÅ›niÄ™cie klawisza <Enter> zakoÅ„czy dodawanie adresów.\n" -#: ../clients/cli/connections.c:4129 +#: ../clients/cli/connections.c:4189 #, c-format msgid "Error: 'parent': not valid without 'p-key'." msgstr "Błąd: \"parent\": nieprawidÅ‚owe bez \"p-key\"." -#: ../clients/cli/connections.c:4184 ../clients/cli/connections.c:5189 +#: ../clients/cli/connections.c:4244 ../clients/cli/connections.c:5249 msgid "SSID: " msgstr "SSID: " -#: ../clients/cli/connections.c:4187 ../clients/cli/connections.c:5192 +#: ../clients/cli/connections.c:4247 ../clients/cli/connections.c:5252 msgid "Error: 'ssid' is required." msgstr "Błąd: \"ssid\" jest wymagane." -#: ../clients/cli/connections.c:4251 +#: ../clients/cli/connections.c:4311 msgid "WiMAX NSP name: " msgstr "Nazwa NSP sieci WiMAX: " -#: ../clients/cli/connections.c:4254 +#: ../clients/cli/connections.c:4314 msgid "Error: 'nsp' is required." msgstr "Błąd: \"nsp\" jest wymagane." -#: ../clients/cli/connections.c:4306 +#: ../clients/cli/connections.c:4366 msgid "PPPoE username: " msgstr "Nazwa użytkownika PPPoE: " -#: ../clients/cli/connections.c:4309 +#: ../clients/cli/connections.c:4369 ../clients/cli/connections.c:5319 msgid "Error: 'username' is required." msgstr "Błąd: \"username\" jest wymagane." -#: ../clients/cli/connections.c:4378 +#: ../clients/cli/connections.c:4438 msgid "APN: " msgstr "APN: " -#: ../clients/cli/connections.c:4381 +#: ../clients/cli/connections.c:4441 msgid "Error: 'apn' is required." msgstr "Błąd: \"apn\" jest wymagane." -#: ../clients/cli/connections.c:4439 +#: ../clients/cli/connections.c:4499 msgid "Bluetooth device address: " msgstr "Adres urzÄ…dzenia Bluetooth: " -#: ../clients/cli/connections.c:4442 +#: ../clients/cli/connections.c:4502 msgid "Error: 'addr' is required." msgstr "Błąd: \"addr\" jest wymagane." -#: ../clients/cli/connections.c:4483 +#: ../clients/cli/connections.c:4543 #, c-format msgid "Error: 'bt-type': '%s' not valid; use [%s, %s (%s), %s]." msgstr "" "Błąd: \"bt-type\": \"%s\" jest nieprawidÅ‚owe; należy użyć [%s, %s (%s), %s]." -#: ../clients/cli/connections.c:4527 +#: ../clients/cli/connections.c:4587 msgid "VLAN parent device or connection UUID: " msgstr "UrzÄ…dzenie nadrzÄ™dne VLAN lub UUID połączenia: " -#: ../clients/cli/connections.c:4530 +#: ../clients/cli/connections.c:4590 msgid "Error: 'dev' is required." msgstr "Błąd: \"dev\" jest wymagane." -#: ../clients/cli/connections.c:4534 +#: ../clients/cli/connections.c:4594 msgid "VLAN ID <0-4095>: " msgstr "Identyfikator VLAN <0-4095>: " -#: ../clients/cli/connections.c:4537 +#: ../clients/cli/connections.c:4597 msgid "Error: 'id' is required." msgstr "Błąd: \"id\" jest wymagane." -#: ../clients/cli/connections.c:4543 +#: ../clients/cli/connections.c:4603 #, c-format msgid "Error: 'id': '%s' is not valid; use <0-4095>." msgstr "Błąd: \"id\": \"%s\" jest nieprawidÅ‚owe; należy użyć <0-4095>." -#: ../clients/cli/connections.c:4553 +#: ../clients/cli/connections.c:4613 #, c-format msgid "Error: 'dev': '%s' is neither UUID, interface name, nor MAC." msgstr "Błąd: \"dev\": \"%s\" nie jest UUID, nazwÄ… interfejsu ani MAC." -#: ../clients/cli/connections.c:4687 +#: ../clients/cli/connections.c:4747 #, c-format msgid "Error: 'mode': %s." msgstr "Błąd: \"mode\": %s." -#: ../clients/cli/connections.c:4696 +#: ../clients/cli/connections.c:4756 #, c-format msgid "Error: 'primary': '%s' is not a valid interface name." msgstr "Błąd: \"primary\": \"%s\" nie jest prawidÅ‚owÄ… nazwÄ… interfejsu." -#: ../clients/cli/connections.c:4748 ../clients/cli/connections.c:4846 -#: ../clients/cli/connections.c:5048 +#: ../clients/cli/connections.c:4808 ../clients/cli/connections.c:4906 +#: ../clients/cli/connections.c:5108 msgid "Error: 'master' is required." msgstr "Błąd: \"master\" jest wymagane." -#: ../clients/cli/connections.c:4754 ../clients/cli/connections.c:4852 -#: ../clients/cli/connections.c:5054 +#: ../clients/cli/connections.c:4814 ../clients/cli/connections.c:4912 +#: ../clients/cli/connections.c:5114 #, c-format msgid "Warning: master='%s' doesn't refer to any existing profile.\n" msgstr "" "Ostrzeżenie: master=\"%s\" nie odnosi siÄ™ do żadnego istniejÄ…cego profilu.\n" -#: ../clients/cli/connections.c:4757 ../clients/cli/connections.c:4860 -#: ../clients/cli/connections.c:5057 +#: ../clients/cli/connections.c:4817 ../clients/cli/connections.c:4920 +#: ../clients/cli/connections.c:5117 #, c-format msgid "" "Warning: 'type' is currently ignored. We only support ethernet slaves for " @@ -2176,110 +2219,128 @@ msgstr "" "Ostrzeżenie: \"type\" jest obecnie ignorowane. W tej chwili obsÅ‚ugiwane sÄ… " "tylko podrzÄ™dne Ethernet.\n" -#: ../clients/cli/connections.c:4954 +#: ../clients/cli/connections.c:5014 #, c-format msgid "Error: 'stp': %s." msgstr "Błąd: \"stp\": %s." -#: ../clients/cli/connections.c:5084 +#: ../clients/cli/connections.c:5144 #, c-format msgid "Error: 'hairpin': %s." msgstr "Błąd: \"hairpin\": %s." -#: ../clients/cli/connections.c:5137 +#: ../clients/cli/connections.c:5197 msgid "Error: 'vpn-type' is required." msgstr "Błąd: \"vpn-type\" jest wymagane." -#: ../clients/cli/connections.c:5144 +#: ../clients/cli/connections.c:5204 #, c-format msgid "Warning: 'vpn-type': %s not known.\n" msgstr "Błąd: \"vpn-type\": nieznane %s.\n" -#: ../clients/cli/connections.c:5205 +#: ../clients/cli/connections.c:5265 #, c-format msgid "Error: 'channel': '%s' is not valid; use <1-13>." msgstr "Błąd: \"channel\": \"%s\" jest nieprawidÅ‚owe; należy użyć <1-13>." -#: ../clients/cli/connections.c:5237 +#: ../clients/cli/connections.c:5316 +msgid "Username: " +msgstr "Nazwa użytkownika: " + +#: ../clients/cli/connections.c:5325 +#, c-format +msgid "Protocol %s" +msgstr "Protokół %s" + +#: ../clients/cli/connections.c:5328 +msgid "Error: 'protocol' is required." +msgstr "Błąd: \"protocol\" jest wymagane." + +#: ../clients/cli/connections.c:5369 #, c-format msgid "Error: '%s' is not a valid connection type." msgstr "Błąd: \"%s\" nie jest prawidÅ‚owym typem połączenia." -#: ../clients/cli/connections.c:5281 +#: ../clients/cli/connections.c:5413 #, c-format msgid "Error: IPv4 gateway specified without IPv4 addresses" msgstr "Błąd: podano bramÄ™ IPv4 bez adresów IPv4" -#: ../clients/cli/connections.c:5285 +#: ../clients/cli/connections.c:5417 #, c-format msgid "Error: multiple IPv4 gateways specified" msgstr "Błąd: podano wiele bram IPv4" -#: ../clients/cli/connections.c:5289 +#: ../clients/cli/connections.c:5421 #, c-format msgid "Error: Invalid IPv4 gateway '%s'" msgstr "Błąd: nieprawidÅ‚owa brama IPv4 \"%s\"" -#: ../clients/cli/connections.c:5314 +#: ../clients/cli/connections.c:5446 #, c-format msgid "Error: IPv6 gateway specified without IPv6 addresses" msgstr "Błąd: podano bramÄ™ IPv6 bez adresów IPv6" -#: ../clients/cli/connections.c:5318 +#: ../clients/cli/connections.c:5450 #, c-format msgid "Error: multiple IPv6 gateways specified" msgstr "Błąd: podano wiele bram IPv6" -#: ../clients/cli/connections.c:5322 +#: ../clients/cli/connections.c:5454 #, c-format msgid "Error: Invalid IPv6 gateway '%s'" msgstr "Błąd: nieprawidÅ‚owa brama IPv6 \"%s\"" -#: ../clients/cli/connections.c:5382 +#: ../clients/cli/connections.c:5514 #, c-format msgid "Error: Failed to add '%s' connection: %s" msgstr "Błąd: dodanie połączenia \"%s\" siÄ™ nie powiodÅ‚o: %s" -#: ../clients/cli/connections.c:5387 +#: ../clients/cli/connections.c:5519 #, c-format msgid "Connection '%s' (%s) successfully added.\n" msgstr "PomyÅ›lnie dodano połączenie \"%s\" (%s).\n" -#: ../clients/cli/connections.c:5607 +#: ../clients/cli/connections.c:5757 #, c-format msgid "Error: 'type' argument is required." msgstr "Błąd: parametr \"type\" jest wymagany." -#: ../clients/cli/connections.c:5615 +#: ../clients/cli/connections.c:5765 #, c-format msgid "Error: invalid connection type; %s." msgstr "Błąd: nieznany typ połączenia; %s." -#: ../clients/cli/connections.c:5624 +#: ../clients/cli/connections.c:5774 #, c-format msgid "Error: 'autoconnect': %s." msgstr "Błąd: \"autoconnect\": %s." -#: ../clients/cli/connections.c:5634 +#: ../clients/cli/connections.c:5784 #, c-format msgid "Error: 'save': %s." msgstr "Błąd: \"save\": %s." -#: ../clients/cli/connections.c:5650 +#: ../clients/cli/connections.c:5801 msgid "Interface name [*]: " msgstr "Nazwa interfejsu [*]: " -#: ../clients/cli/connections.c:5655 +#: ../clients/cli/connections.c:5806 #, c-format msgid "Error: 'ifname' argument is required." msgstr "Błąd: parametr \"ifname\" jest wymagany." -#: ../clients/cli/connections.c:5662 +#: ../clients/cli/connections.c:5808 +#, c-format +msgid "Error: mandatory 'ifname' not seen before '%s'." +msgstr "Błąd: wymagane \"ifname\" nie wystÄ™puje przed \"%s\"." + +#: ../clients/cli/connections.c:5817 #, c-format msgid "Error: 'ifname': '%s' is not a valid interface nor '*'." msgstr "Błąd: \"ifname\": \"%s\" nie jest prawidÅ‚owym interfejsem ani \"*\"." -#: ../clients/cli/connections.c:6557 +#: ../clients/cli/connections.c:6712 #, c-format msgid "['%s' setting values]\n" msgstr "[wartoÅ›ci ustawienia \"%s\"]\n" @@ -2287,7 +2348,7 @@ msgstr "[wartoÅ›ci ustawienia \"%s\"]\n" #. TRANSLATORS: do not translate command names and keywords before :: #. * However, you should translate terms enclosed in <>. #. -#: ../clients/cli/connections.c:6639 +#: ../clients/cli/connections.c:6794 #, c-format msgid "" "---[ Main menu ]---\n" @@ -2324,7 +2385,7 @@ msgstr "" "nmcli <opcja-konfiguracji> <wartość> :: konfiguracja nmcli\n" "quit :: koÅ„czy dziaÅ‚anie nmcli\n" -#: ../clients/cli/connections.c:6666 +#: ../clients/cli/connections.c:6821 #, c-format msgid "" "goto <setting>[.<prop>] | <prop> :: enter setting/property for editing\n" @@ -2345,7 +2406,7 @@ msgstr "" " nmcli connection> goto secondaries\n" " nmcli> goto ipv4.addresses\n" -#: ../clients/cli/connections.c:6673 +#: ../clients/cli/connections.c:6828 #, c-format msgid "" "remove <setting>[.<prop>] :: remove setting or reset property value\n" @@ -2366,7 +2427,7 @@ msgstr "" "PrzykÅ‚ady: nmcli> remove wifi-sec\n" " nmcli> remove eth.mtu\n" -#: ../clients/cli/connections.c:6680 +#: ../clients/cli/connections.c:6835 #, c-format msgid "" "set [<setting>.<prop> <value>] :: set property value\n" @@ -2381,7 +2442,7 @@ msgstr "" "\n" "PrzykÅ‚ad: nmcli> set con.id Moje połączenie\n" -#: ../clients/cli/connections.c:6685 +#: ../clients/cli/connections.c:6840 #, c-format msgid "" "describe [<setting>.<prop>] :: describe property\n" @@ -2394,7 +2455,7 @@ msgstr "" "WyÅ›wietla opis wÅ‚aÅ›ciwoÅ›ci. Wszystkie ustawienia i wÅ‚aÅ›ciwoÅ›ci usÅ‚ugi NM\n" "można znaleźć na stronie podrÄ™cznika nm-settings(5).\n" -#: ../clients/cli/connections.c:6690 +#: ../clients/cli/connections.c:6845 #, c-format msgid "" "print [all] :: print setting or connection values\n" @@ -2409,7 +2470,7 @@ msgstr "" "\n" "PrzykÅ‚ad: nmcli ipv4> print all\n" -#: ../clients/cli/connections.c:6695 +#: ../clients/cli/connections.c:6850 #, c-format msgid "" "verify [all | fix] :: verify setting or connection validity\n" @@ -2434,7 +2495,7 @@ msgstr "" " nmcli> verify fix\n" " nmcli bond> verify\n" -#: ../clients/cli/connections.c:6704 +#: ../clients/cli/connections.c:6859 #, c-format msgid "" "save [persistent|temporary] :: save the connection\n" @@ -2460,7 +2521,7 @@ msgstr "" "miÄ™dzy ponownymi uruchomieniami. Aby w peÅ‚ni usunąć trwaÅ‚e połączenie,\n" "należy usunąć profil połączenia.\n" -#: ../clients/cli/connections.c:6715 +#: ../clients/cli/connections.c:6870 #, c-format msgid "" "activate [<ifname>] [/<ap>|<nsp>] :: activate the connection\n" @@ -2478,10 +2539,11 @@ msgstr "" "\n" "DostÄ™pne opcje:\n" "<nazwa-interfejsu> - urzÄ…dzenie, na którym aktywowane bÄ™dzie połączenie\n" -"/<ap>|<nsp> - AP (Wi-Fi) lub NSP (WiMAX) (należy poprzedzić\n" -" znakiem /, kiedy nie podano <nazwy-interfejsu>)\n" +"/<ap>|<nsp> - punkt dostÄ™powy (Wi-Fi) lub NSP (WiMAX) (należy\n" +" poprzedzić znakiem /, kiedy nie podano\n" +" <nazwy-interfejsu>)\n" -#: ../clients/cli/connections.c:6722 ../clients/cli/connections.c:6880 +#: ../clients/cli/connections.c:6877 ../clients/cli/connections.c:7035 #, c-format msgid "" "back :: go to upper menu level\n" @@ -2490,7 +2552,7 @@ msgstr "" "back :: przechodzi do menu wyższego poziomu\n" "\n" -#: ../clients/cli/connections.c:6725 +#: ../clients/cli/connections.c:6880 #, c-format msgid "" "help/? [<command>] :: help for the nmcli commands\n" @@ -2499,7 +2561,7 @@ msgstr "" "help/? [<polecenie>] :: pomoc dla poleceÅ„ nmcli\n" "\n" -#: ../clients/cli/connections.c:6728 +#: ../clients/cli/connections.c:6883 #, c-format msgid "" "nmcli [<conf-option> <value>] :: nmcli configuration\n" @@ -2544,7 +2606,7 @@ msgstr "" " nmcli> nmcli save-confirmation no\n" " nmcli> nmcli prompt-color 3\n" -#: ../clients/cli/connections.c:6749 ../clients/cli/connections.c:6886 +#: ../clients/cli/connections.c:6904 ../clients/cli/connections.c:7041 #, c-format msgid "" "quit :: exit nmcli\n" @@ -2557,8 +2619,8 @@ msgstr "" "To polecenie koÅ„czy dziaÅ‚anie nmcli. JeÅ›li modyfikowane połączenie nie jest " "zapisane, użytkownik zostanie poproszony o potwierdzenie dziaÅ‚ania.\n" -#: ../clients/cli/connections.c:6754 ../clients/cli/connections.c:6891 -#: ../clients/cli/connections.c:7314 ../clients/cli/connections.c:8236 +#: ../clients/cli/connections.c:6909 ../clients/cli/connections.c:7046 +#: ../clients/cli/connections.c:7469 ../clients/cli/connections.c:8391 #, c-format msgid "Unknown command: '%s'\n" msgstr "Nieznane polecenie: \"%s\"\n" @@ -2566,7 +2628,7 @@ msgstr "Nieznane polecenie: \"%s\"\n" #. TRANSLATORS: do not translate command names and keywords before :: #. * However, you should translate terms enclosed in <>. #. -#: ../clients/cli/connections.c:6820 +#: ../clients/cli/connections.c:6975 #, c-format msgid "" "---[ Property menu ]---\n" @@ -2593,7 +2655,7 @@ msgstr "" "help/? [<polecenie>] :: wyÅ›wietla tÄ™ pomoc lub opis polecenia\n" "quit :: koÅ„czy dziaÅ‚anie nmcli\n" -#: ../clients/cli/connections.c:6845 +#: ../clients/cli/connections.c:7000 #, c-format msgid "" "set [<value>] :: set new value\n" @@ -2604,7 +2666,7 @@ msgstr "" "\n" "To polecenie ustawia podanÄ… <wartość> tej wÅ‚aÅ›ciwoÅ›ci\n" -#: ../clients/cli/connections.c:6849 +#: ../clients/cli/connections.c:7004 #, c-format msgid "" "add [<value>] :: append new value to the property\n" @@ -2619,7 +2681,7 @@ msgstr "" "jest typu kontener. W przypadku wÅ‚aÅ›ciwoÅ›ci zawierajÄ…cych jednÄ… wartość " "zastÄ™puje tÄ™ wartość (podobnie jak \"set\").\n" -#: ../clients/cli/connections.c:6855 +#: ../clients/cli/connections.c:7010 #, c-format msgid "" "change :: change current value\n" @@ -2630,7 +2692,7 @@ msgstr "" "\n" "WyÅ›wietla bieżącÄ… wartość i umożliwia jej modyfikacjÄ™.\n" -#: ../clients/cli/connections.c:6859 +#: ../clients/cli/connections.c:7014 #, c-format msgid "" "remove [<value>|<index>|<option name>] :: delete the value\n" @@ -2663,7 +2725,7 @@ msgstr "" " nmcli bond.options> remove downdelay\n" "\n" -#: ../clients/cli/connections.c:6870 +#: ../clients/cli/connections.c:7025 #, c-format msgid "" "describe :: describe property\n" @@ -2676,7 +2738,7 @@ msgstr "" "WyÅ›wietla opis wÅ‚aÅ›ciwoÅ›ci. Wszystkie ustawienia i wÅ‚aÅ›ciwoÅ›ci usÅ‚ugi NM " "można znaleźć na stronie podrÄ™cznika nm-settings(5).\n" -#: ../clients/cli/connections.c:6875 +#: ../clients/cli/connections.c:7030 #, c-format msgid "" "print [property|setting|connection] :: print property (setting, connection) " @@ -2691,7 +2753,7 @@ msgstr "" "WyÅ›wietla wartość wÅ‚aÅ›ciwoÅ›ci. PodajÄ…c parametr można także wyÅ›wietlić " "wartoÅ›ci dla caÅ‚ego ustawienia lub połączenia.\n" -#: ../clients/cli/connections.c:6883 +#: ../clients/cli/connections.c:7038 #, c-format msgid "" "help/? [<command>] :: help for nmcli commands\n" @@ -2700,28 +2762,28 @@ msgstr "" "help/? [<polecenie>] :: pomoc dla poleceÅ„ nmcli\n" "\n" -#: ../clients/cli/connections.c:6981 +#: ../clients/cli/connections.c:7136 #, c-format msgid "Error: Connection activation failed.\n" msgstr "Błąd: aktywacja połączenia siÄ™ nie powiodÅ‚a.\n" -#: ../clients/cli/connections.c:7064 +#: ../clients/cli/connections.c:7219 #, c-format msgid "Error: setting '%s' is mandatory and cannot be removed.\n" msgstr "Błąd: ustawienie \"%s\" jest wymagane i nie może być usuwane.\n" #. TRANSLATORS: status line in nmcli connection editor -#: ../clients/cli/connections.c:7082 +#: ../clients/cli/connections.c:7237 #, c-format msgid "[ Type: %s | Name: %s | UUID: %s | Dirty: %s | Temp: %s ]\n" msgstr "[ Typ: %s | nazwa: %s | UUID: %s | dirty: %s | tymczasowe: %s ]\n" -#: ../clients/cli/connections.c:7118 +#: ../clients/cli/connections.c:7273 #, c-format msgid "The connection is not saved. Do you really want to quit? %s" msgstr "Połączenie nie jest zapisane. Na pewno zakoÅ„czyć? %s" -#: ../clients/cli/connections.c:7166 +#: ../clients/cli/connections.c:7321 #, c-format msgid "" "The connection profile has been removed from another client. You may type " @@ -2730,66 +2792,66 @@ msgstr "" "Profil połączenia zostaÅ‚ usuniÄ™ty z innego klienta. Można wpisać \"save\" w " "głównym oknie, aby go przywrócić.\n" -#: ../clients/cli/connections.c:7191 ../clients/cli/connections.c:7617 -#: ../clients/cli/connections.c:7675 +#: ../clients/cli/connections.c:7346 ../clients/cli/connections.c:7772 +#: ../clients/cli/connections.c:7830 #, c-format msgid "Allowed values for '%s' property: %s\n" msgstr "Dozwolone wartoÅ›ci dla wÅ‚aÅ›ciwoÅ›ci \"%s\": %s\n" -#: ../clients/cli/connections.c:7195 ../clients/cli/connections.c:7621 -#: ../clients/cli/connections.c:7679 +#: ../clients/cli/connections.c:7350 ../clients/cli/connections.c:7776 +#: ../clients/cli/connections.c:7834 #, c-format msgid "Enter '%s' value: " msgstr "ProszÄ™ podać wartość \"%s\": " -#: ../clients/cli/connections.c:7210 ../clients/cli/connections.c:7232 -#: ../clients/cli/connections.c:7625 ../clients/cli/connections.c:7684 +#: ../clients/cli/connections.c:7365 ../clients/cli/connections.c:7387 +#: ../clients/cli/connections.c:7780 ../clients/cli/connections.c:7839 #, c-format msgid "Error: failed to set '%s' property: %s\n" msgstr "Błąd: ustawienie wÅ‚aÅ›ciwoÅ›ci \"%s\" siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/connections.c:7226 +#: ../clients/cli/connections.c:7381 #, c-format msgid "Edit '%s' value: " msgstr "Modyfikacja wartoÅ›ci \"%s\": " -#: ../clients/cli/connections.c:7255 +#: ../clients/cli/connections.c:7410 #, c-format msgid "Error: %s\n" msgstr "Błąd: %s\n" -#: ../clients/cli/connections.c:7261 ../clients/cli/connections.c:7763 -#: ../clients/cli/connections.c:7804 +#: ../clients/cli/connections.c:7416 ../clients/cli/connections.c:7918 +#: ../clients/cli/connections.c:7959 #, c-format msgid "Error: failed to remove value of '%s': %s\n" msgstr "Błąd: usuniÄ™cie wartoÅ›ci \"%s\" siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/connections.c:7282 +#: ../clients/cli/connections.c:7437 #, c-format msgid "Unknown command argument: '%s'\n" msgstr "Nieznany parametr polecenia: \"%s\"\n" -#: ../clients/cli/connections.c:7410 +#: ../clients/cli/connections.c:7565 #, c-format msgid "Available settings: %s\n" msgstr "DostÄ™pne ustawienia: %s\n" -#: ../clients/cli/connections.c:7419 +#: ../clients/cli/connections.c:7574 #, c-format msgid "Error: invalid setting name; %s\n" msgstr "Błąd: nieprawidÅ‚owa nazwa ustawienia; %s\n" -#: ../clients/cli/connections.c:7436 +#: ../clients/cli/connections.c:7591 #, c-format msgid "Available properties: %s\n" msgstr "DostÄ™pne wÅ‚aÅ›ciwoÅ›ci: %s\n" -#: ../clients/cli/connections.c:7444 +#: ../clients/cli/connections.c:7599 #, c-format msgid "Error: property %s\n" msgstr "Błąd: wÅ‚aÅ›ciwość %s\n" -#: ../clients/cli/connections.c:7485 +#: ../clients/cli/connections.c:7640 #, c-format msgid "" "Saving the connection with 'autoconnect=yes'. That might result in an " @@ -2800,12 +2862,12 @@ msgstr "" "natychmiastowÄ… aktywacjÄ™ połączenia.\n" "Na pewno zapisać? %s" -#: ../clients/cli/connections.c:7560 +#: ../clients/cli/connections.c:7715 #, c-format msgid "You may edit the following settings: %s\n" msgstr "Można modyfikować nastÄ™pujÄ…ce ustawienia: %s\n" -#: ../clients/cli/connections.c:7587 +#: ../clients/cli/connections.c:7742 #, c-format msgid "" "The connection profile has been removed from another client. You may type " @@ -2814,220 +2876,220 @@ msgstr "" "Profil połączenia zostaÅ‚ usuniÄ™ty z innego klienta. Można wpisać \"save\", " "aby go przywrócić.\n" -#: ../clients/cli/connections.c:7629 ../clients/cli/connections.c:7846 +#: ../clients/cli/connections.c:7784 ../clients/cli/connections.c:8001 #, c-format msgid "Error: no setting selected; valid are [%s]\n" msgstr "Błąd: nie wybrano ustawienia; prawidÅ‚owe to [%s]\n" -#: ../clients/cli/connections.c:7630 +#: ../clients/cli/connections.c:7785 #, c-format msgid "use 'goto <setting>' first, or 'set <setting>.<property>'\n" msgstr "" "należy najpierw użyć \"goto <ustawienie>\" lub \"set <ustawienie>." "<wÅ‚aÅ›ciwość>\"\n" -#: ../clients/cli/connections.c:7644 ../clients/cli/connections.c:7783 -#: ../clients/cli/connections.c:7863 +#: ../clients/cli/connections.c:7799 ../clients/cli/connections.c:7938 +#: ../clients/cli/connections.c:8018 #, c-format msgid "Error: invalid setting argument '%s'; valid are [%s]\n" msgstr "Błąd: nieprawidÅ‚owy parametr ustawienia \"%s\"; prawidÅ‚owe to [%s]\n" -#: ../clients/cli/connections.c:7654 +#: ../clients/cli/connections.c:7809 #, c-format msgid "Error: missing setting for '%s' property\n" msgstr "Błąd: brak ustawienia dla wÅ‚aÅ›ciwoÅ›ci \"%s\"\n" -#: ../clients/cli/connections.c:7661 +#: ../clients/cli/connections.c:7816 #, c-format msgid "Error: invalid property: %s\n" msgstr "Błąd: nieprawidÅ‚owa wÅ‚aÅ›ciwość: %s\n" -#: ../clients/cli/connections.c:7711 +#: ../clients/cli/connections.c:7866 #, c-format msgid "Error: unknown setting '%s'\n" msgstr "Błąd: nieznane ustawienie \"%s\"\n" -#: ../clients/cli/connections.c:7724 +#: ../clients/cli/connections.c:7879 #, c-format msgid "You may edit the following properties: %s\n" msgstr "Można modyfikować nastÄ™pujÄ…ce wÅ‚aÅ›ciwoÅ›ci: %s\n" -#: ../clients/cli/connections.c:7768 +#: ../clients/cli/connections.c:7923 #, c-format msgid "Error: no argument given; valid are [%s]\n" msgstr "Błąd: nie podano żadnego parametru; prawidÅ‚owe to [%s]\n" -#: ../clients/cli/connections.c:7781 +#: ../clients/cli/connections.c:7936 #, c-format msgid "Setting '%s' is not present in the connection.\n" msgstr "Ustawienie \"%s\" nie jest obecne w połączeniu.\n" -#: ../clients/cli/connections.c:7822 +#: ../clients/cli/connections.c:7977 #, c-format msgid "Error: %s properties, nor it is a setting name.\n" msgstr "Błąd: wÅ‚aÅ›ciwoÅ›ci %s, ani nie jest nazwÄ… ustawiania.\n" -#: ../clients/cli/connections.c:7847 +#: ../clients/cli/connections.c:8002 #, c-format msgid "use 'goto <setting>' first, or 'describe <setting>.<property>'\n" msgstr "" "należy najpierw użyć \"goto <ustawienie>\" lub \"describe <ustawienie>." "<wÅ‚aÅ›ciwość>\"\n" -#: ../clients/cli/connections.c:7888 +#: ../clients/cli/connections.c:8043 #, c-format msgid "Error: invalid property: %s, neither a valid setting name.\n" msgstr "Błąd: nieprawidÅ‚owa wÅ‚aÅ›ciwość: %s: ani prawidÅ‚owÄ… nazwÄ… ustawienia.\n" -#: ../clients/cli/connections.c:7917 +#: ../clients/cli/connections.c:8072 #, c-format msgid "Error: unknown setting: '%s'\n" msgstr "Błąd: nieznane ustawienie: \"%s\"\n" -#: ../clients/cli/connections.c:7922 +#: ../clients/cli/connections.c:8077 #, c-format msgid "Error: '%s' setting not present in the connection\n" msgstr "Błąd: ustawienie \"%s\" nie jest obecne w połączeniu\n" -#: ../clients/cli/connections.c:7947 +#: ../clients/cli/connections.c:8102 #, c-format msgid "Error: invalid property: %s%s\n" msgstr "Błąd: nieprawidÅ‚owa wÅ‚aÅ›ciwość: %s%s\n" -#: ../clients/cli/connections.c:7949 +#: ../clients/cli/connections.c:8104 msgid ", neither a valid setting name" msgstr ", ani prawidÅ‚owÄ… nazwÄ… ustawienia" -#: ../clients/cli/connections.c:7966 +#: ../clients/cli/connections.c:8121 #, c-format msgid "Invalid verify option: %s\n" msgstr "NieprawidÅ‚owa opcja sprawdzania: %s\n" -#: ../clients/cli/connections.c:7974 +#: ../clients/cli/connections.c:8129 #, c-format msgid "Verify setting '%s': %s\n" msgstr "Sprawdzenie ustawienia \"%s\": %s\n" -#: ../clients/cli/connections.c:7989 +#: ../clients/cli/connections.c:8144 #, c-format msgid "Verify connection: %s\n" msgstr "Sprawdzenie połączenia: %s\n" -#: ../clients/cli/connections.c:7992 +#: ../clients/cli/connections.c:8147 #, c-format msgid "The error cannot be fixed automatically.\n" msgstr "Nie można automatycznie naprawić błędu.\n" -#: ../clients/cli/connections.c:8009 +#: ../clients/cli/connections.c:8164 #, c-format msgid "Error: invalid argument '%s'\n" msgstr "Błąd: nieprawidÅ‚owy parametr \"%s\"\n" -#: ../clients/cli/connections.c:8042 +#: ../clients/cli/connections.c:8197 #, c-format msgid "Error: Failed to save '%s' (%s) connection: %s\n" msgstr "Błąd: zapisanie połączenia \"%s\" (%s) siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/connections.c:8049 +#: ../clients/cli/connections.c:8204 #, c-format msgid "Connection '%s' (%s) successfully saved.\n" msgstr "PomyÅ›lnie zapisano połączenie \"%s\" (%s).\n" -#: ../clients/cli/connections.c:8050 +#: ../clients/cli/connections.c:8205 #, c-format msgid "Connection '%s' (%s) successfully updated.\n" msgstr "PomyÅ›lnie zaktualizowano połączenie \"%s\" (%s).\n" -#: ../clients/cli/connections.c:8083 +#: ../clients/cli/connections.c:8238 #, c-format msgid "Error: connection verification failed: %s\n" msgstr "Błąd: sprawdzenie połączenia siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/connections.c:8084 +#: ../clients/cli/connections.c:8239 msgid "(unknown error)" msgstr "(nieznany błąd)" -#: ../clients/cli/connections.c:8085 +#: ../clients/cli/connections.c:8240 #, c-format msgid "You may try running 'verify fix' to fix errors.\n" msgstr "Można spróbować wykonać \"verify fix\", aby naprawić błędy.\n" -#: ../clients/cli/connections.c:8107 +#: ../clients/cli/connections.c:8262 #, c-format msgid "Error: connection is not saved. Type 'save' first.\n" msgstr "Błąd: połączenie nie jest zapisane. Należy najpierw wpisać \"save\".\n" -#: ../clients/cli/connections.c:8111 +#: ../clients/cli/connections.c:8266 #, c-format msgid "Error: connection is not valid: %s\n" msgstr "Błąd: połączenie jest nieprawidÅ‚owe: %s\n" -#: ../clients/cli/connections.c:8121 +#: ../clients/cli/connections.c:8276 #, c-format msgid "Error: Cannot activate connection: %s.\n" msgstr "Błąd: nie można aktywować połączenia: %s.\n" -#: ../clients/cli/connections.c:8131 +#: ../clients/cli/connections.c:8286 #, c-format msgid "Error: Failed to activate '%s' (%s) connection: %s\n" msgstr "Błąd: aktywowanie połączenia \"%s\" (%s) siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/connections.c:8137 +#: ../clients/cli/connections.c:8292 #, c-format msgid "Monitoring connection activation (press any key to continue)\n" msgstr "" "Aktywacja monitorowania połączenia (naciÅ›niÄ™cie dowolnego klawisza " "kontynuuje)\n" -#: ../clients/cli/connections.c:8175 +#: ../clients/cli/connections.c:8330 #, c-format msgid "Error: status-line: %s\n" msgstr "Błąd: status-line: %s\n" -#: ../clients/cli/connections.c:8183 +#: ../clients/cli/connections.c:8338 #, c-format msgid "Error: save-confirmation: %s\n" msgstr "Błąd: save-confirmation: %s\n" -#: ../clients/cli/connections.c:8191 +#: ../clients/cli/connections.c:8346 #, c-format msgid "Error: show-secrets: %s\n" msgstr "Błąd: show-secrets: %s\n" -#: ../clients/cli/connections.c:8199 +#: ../clients/cli/connections.c:8354 #, c-format msgid "Error: bad color number: '%s'; use <0-8>\n" msgstr "Błąd: błędny numer koloru: \"%s\"; należy użyć <0-8>\n" -#: ../clients/cli/connections.c:8211 +#: ../clients/cli/connections.c:8366 #, c-format msgid "Current nmcli configuration:\n" msgstr "Obecna konfiguracja nmcli:\n" -#: ../clients/cli/connections.c:8221 +#: ../clients/cli/connections.c:8376 #, c-format msgid "Invalid configuration option '%s'; allowed [%s]\n" msgstr "NieprawidÅ‚owa opcja konfiguracji \"%s\"; dozwolone [%s]\n" -#: ../clients/cli/connections.c:8468 +#: ../clients/cli/connections.c:8631 #, c-format msgid "Error: only one of 'id', uuid, or 'path' can be provided." msgstr "Błąd: tylko jedno z \"id\", UUID lub \"path\" może być podane." -#: ../clients/cli/connections.c:8480 ../clients/cli/connections.c:8667 -#: ../clients/cli/connections.c:8674 +#: ../clients/cli/connections.c:8643 ../clients/cli/connections.c:8830 +#: ../clients/cli/connections.c:8837 #, c-format msgid "Error: Unknown connection '%s'." msgstr "Błąd: nieznane połączenie \"%s\"." -#: ../clients/cli/connections.c:8498 +#: ../clients/cli/connections.c:8661 #, c-format msgid "Warning: editing existing connection '%s'; 'type' argument is ignored\n" msgstr "" "Ostrzeżenie: modyfikowanie istniejÄ…cego połączenia \"%s\"; parametr \"type\" " "jest ignorowany\n" -#: ../clients/cli/connections.c:8501 +#: ../clients/cli/connections.c:8664 #, c-format msgid "" "Warning: editing existing connection '%s'; 'con-name' argument is ignored\n" @@ -3035,140 +3097,140 @@ msgstr "" "Ostrzeżenie: modyfikowanie istniejÄ…cego połączenia \"%s\"; parametr \"con-" "name\" jest ignorowany\n" -#: ../clients/cli/connections.c:8515 +#: ../clients/cli/connections.c:8678 #, c-format msgid "Valid connection types: %s\n" msgstr "PrawidÅ‚owe typy połączeÅ„: %s\n" -#: ../clients/cli/connections.c:8517 +#: ../clients/cli/connections.c:8680 #, c-format msgid "Error: invalid connection type; %s\n" msgstr "Błąd: nieznany typ połączenia; %s\n" -#: ../clients/cli/connections.c:8556 +#: ../clients/cli/connections.c:8719 #, c-format msgid "===| nmcli interactive connection editor |===" msgstr "===| interaktywny edytor połączeÅ„ nmcli |===" -#: ../clients/cli/connections.c:8559 +#: ../clients/cli/connections.c:8722 #, c-format msgid "Editing existing '%s' connection: '%s'" msgstr "Modyfikowanie istniejÄ…cego połączenia \"%s\": \"%s\"" -#: ../clients/cli/connections.c:8561 +#: ../clients/cli/connections.c:8724 #, c-format msgid "Adding a new '%s' connection" msgstr "Dodawanie nowego połączenia \"%s\"" -#: ../clients/cli/connections.c:8563 +#: ../clients/cli/connections.c:8726 #, c-format msgid "Type 'help' or '?' for available commands." msgstr "Wpisanie \"help\" lub \"?\" wyÅ›wietla dostÄ™pne polecenia." -#: ../clients/cli/connections.c:8565 +#: ../clients/cli/connections.c:8728 #, c-format msgid "Type 'describe [<setting>.<prop>]' for detailed property description." msgstr "" "Wpisanie \"describe [<ustawienie>.<wÅ‚aÅ›ciwość>]\" wyÅ›wietla szczegółowy opis " "wÅ‚aÅ›ciwoÅ›ci." -#: ../clients/cli/connections.c:8603 +#: ../clients/cli/connections.c:8766 #, c-format msgid "Error: Failed to modify connection '%s': %s" msgstr "Błąd: zmodyfikowanie połączenia \"%s\" siÄ™ nie powiodÅ‚o: %s" -#: ../clients/cli/connections.c:8610 +#: ../clients/cli/connections.c:8773 #, c-format msgid "Connection '%s' (%s) successfully modified.\n" msgstr "PomyÅ›lnie zmodyfikowano połączenie \"%s\" (%s).\n" -#: ../clients/cli/connections.c:8642 +#: ../clients/cli/connections.c:8805 #, c-format msgid "Error: No arguments provided." msgstr "Błąd: nie podano żadnych parametrów." -#: ../clients/cli/connections.c:8661 +#: ../clients/cli/connections.c:8824 #, c-format msgid "Error: connection ID is missing." msgstr "Błąd: brak identyfikatora połączenia." -#: ../clients/cli/connections.c:8683 ../clients/cli/connections.c:8696 +#: ../clients/cli/connections.c:8846 ../clients/cli/connections.c:8859 #, c-format msgid "Error: <setting>.<property> argument is missing." msgstr "Błąd: brak parametru <ustawienie>.<wÅ‚aÅ›ciwość>." -#: ../clients/cli/connections.c:8701 +#: ../clients/cli/connections.c:8864 #, c-format msgid "Error: value for '%s' is missing." msgstr "Błąd: brak wartoÅ›ci dla \"%s\"." -#: ../clients/cli/connections.c:8719 +#: ../clients/cli/connections.c:8882 #, c-format msgid "Error: invalid <setting>.<property> '%s'." msgstr "Błąd: nieprawidÅ‚owe <ustawienie>.<wÅ‚aÅ›ciwość> \"%s\"." -#: ../clients/cli/connections.c:8727 +#: ../clients/cli/connections.c:8890 #, c-format msgid "Error: invalid or not allowed setting '%s': %s." msgstr "Błąd: nieprawidÅ‚owe lub niedozwolone ustawienie \"%s\": %s." -#: ../clients/cli/connections.c:8748 +#: ../clients/cli/connections.c:8911 #, c-format msgid "Error: invalid property '%s': %s." msgstr "Błąd: nieprawidÅ‚owa wÅ‚aÅ›ciwość \"%s\": %s." -#: ../clients/cli/connections.c:8759 +#: ../clients/cli/connections.c:8922 #, c-format msgid "Error: failed to modify %s.%s: %s." msgstr "Błąd: zmodyfikowanie %s.%s siÄ™ nie powiodÅ‚o: %s." -#: ../clients/cli/connections.c:8777 +#: ../clients/cli/connections.c:8940 #, c-format msgid "Error: failed to remove a value from %s.%s: %s." msgstr "Błąd: usuniÄ™cie wartoÅ›ci z %s.%s siÄ™ nie powiodÅ‚o: %s." -#: ../clients/cli/connections.c:8808 +#: ../clients/cli/connections.c:8971 #, c-format msgid "Error: not all connections deleted." msgstr "Błąd: nie usuniÄ™to wszystkich połączeÅ„." -#: ../clients/cli/connections.c:8809 +#: ../clients/cli/connections.c:8972 #, c-format msgid "Error: Connection deletion failed: %s" msgstr "Błąd: usuniÄ™cie połączenia siÄ™ nie powiodÅ‚o: %s" -#: ../clients/cli/connections.c:8871 +#: ../clients/cli/connections.c:9034 #, c-format msgid "Error: unknown connection '%s'\n" msgstr "Błąd: nieznane połączenie \"%s\"\n" -#: ../clients/cli/connections.c:8885 +#: ../clients/cli/connections.c:9048 #, c-format msgid "Error: no connection provided." msgstr "Błąd: nie podano połączenia." #. truncate trailing ", " -#: ../clients/cli/connections.c:8910 +#: ../clients/cli/connections.c:9073 #, c-format msgid "Error: cannot delete unknown connection(s): %s." msgstr "Błąd: nie można usunąć nieznanych połączeÅ„: %s." -#: ../clients/cli/connections.c:8934 +#: ../clients/cli/connections.c:9097 #, c-format msgid "Error: failed to reload connections: %s." msgstr "Błąd: ponowne wczytanie połączeÅ„ siÄ™ nie powiodÅ‚o: %s." -#: ../clients/cli/connections.c:8973 +#: ../clients/cli/connections.c:9136 #, c-format msgid "Error: failed to load connection: %s." msgstr "Błąd: wczytanie połączeÅ„ siÄ™ nie powiodÅ‚o: %s." -#: ../clients/cli/connections.c:8981 +#: ../clients/cli/connections.c:9144 #, c-format msgid "Could not load file '%s'\n" msgstr "Nie można wczytać pliku \"%s\"\n" -#: ../clients/cli/connections.c:9160 +#: ../clients/cli/connections.c:9323 #, c-format msgid "Error: '%s' is not valid 'connection' command." msgstr "Błąd: \"%s\" nie jest prawidÅ‚owym poleceniem \"connection\"." @@ -3253,7 +3315,7 @@ msgstr "INTERFEJS-IP" #. 14 #. 2 -#: ../clients/cli/devices.c:73 ../clients/cli/devices.c:103 +#: ../clients/cli/devices.c:73 ../clients/cli/devices.c:104 msgid "IS-SOFTWARE" msgstr "JEST-PROGRAMOWE" @@ -3272,235 +3334,240 @@ msgstr "BRAK-OPROGRAMOWANIA-SPRZĘTOWEGO" msgid "PHYS-PORT-ID" msgstr "IDENTYFIKATOR-FIZYCZNEGO-PORTU" +#. 22 +#: ../clients/cli/devices.c:81 +msgid "METERED" +msgstr "MIERZONE" + #. 0 -#: ../clients/cli/devices.c:91 +#: ../clients/cli/devices.c:92 msgid "AVAILABLE-CONNECTION-PATHS" msgstr "DOSTĘPNE-ÅšCIEÅ»KI-POÅÄ„CZEŃ" #. 1 -#: ../clients/cli/devices.c:92 +#: ../clients/cli/devices.c:93 msgid "AVAILABLE-CONNECTIONS" msgstr "DOSTĘPNE-POÅÄ„CZENIA" #. 0 -#: ../clients/cli/devices.c:101 +#: ../clients/cli/devices.c:102 msgid "CARRIER-DETECT" msgstr "WYKRYWANIE-OPERATORA" #. 1 -#: ../clients/cli/devices.c:102 +#: ../clients/cli/devices.c:103 msgid "SPEED" msgstr "PRĘDKOŚĆ" #. 0 -#: ../clients/cli/devices.c:112 +#: ../clients/cli/devices.c:113 msgid "CARRIER" msgstr "OPERATOR" #. 0 -#: ../clients/cli/devices.c:121 ../clients/cli/devices.c:554 +#: ../clients/cli/devices.c:122 ../clients/cli/devices.c:557 msgid "WEP" msgstr "WEP" #. 1 -#: ../clients/cli/devices.c:122 +#: ../clients/cli/devices.c:123 msgid "WPA" msgstr "WPA" #. 2 -#: ../clients/cli/devices.c:123 ../clients/cli/devices.c:562 +#: ../clients/cli/devices.c:124 ../clients/cli/devices.c:565 msgid "WPA2" msgstr "WPA2" #. 3 -#: ../clients/cli/devices.c:124 +#: ../clients/cli/devices.c:125 msgid "TKIP" msgstr "TKIP" #. 4 -#: ../clients/cli/devices.c:125 +#: ../clients/cli/devices.c:126 msgid "CCMP" msgstr "CCMP" #. 5 #. 2 -#: ../clients/cli/devices.c:126 ../clients/cli/devices.c:228 +#: ../clients/cli/devices.c:127 ../clients/cli/devices.c:229 msgid "AP" msgstr "PUNKT-DOSTĘPOWY" #. 6 -#: ../clients/cli/devices.c:127 +#: ../clients/cli/devices.c:128 msgid "ADHOC" msgstr "ADHOC" #. 7 -#: ../clients/cli/devices.c:128 +#: ../clients/cli/devices.c:129 msgid "2GHZ" msgstr "2GHZ" #. 8 -#: ../clients/cli/devices.c:129 +#: ../clients/cli/devices.c:130 msgid "5GHZ" msgstr "5GHZ" #. 0 -#: ../clients/cli/devices.c:138 +#: ../clients/cli/devices.c:139 msgid "CTR-FREQ" msgstr "CZĘSTOTLIWOŚĆ-CTR" #. 1 -#: ../clients/cli/devices.c:139 +#: ../clients/cli/devices.c:140 msgid "RSSI" msgstr "RSSI" #. 2 -#: ../clients/cli/devices.c:140 +#: ../clients/cli/devices.c:141 msgid "CINR" msgstr "CINR" #. 3 -#: ../clients/cli/devices.c:141 +#: ../clients/cli/devices.c:142 msgid "TX-POW" msgstr "TX-POW" #. 4 -#: ../clients/cli/devices.c:142 +#: ../clients/cli/devices.c:143 msgid "BSID" msgstr "BSID" #. 0 -#: ../clients/cli/devices.c:151 ../clients/tui/nmt-page-wifi.c:227 +#: ../clients/cli/devices.c:152 ../clients/tui/nmt-page-wifi.c:227 msgid "SSID" msgstr "SSID" #. 1 -#: ../clients/cli/devices.c:152 +#: ../clients/cli/devices.c:153 msgid "SSID-HEX" msgstr "SZESNASTKOWY-SSID" #. 2 -#: ../clients/cli/devices.c:153 ../clients/tui/nmt-page-wifi.c:361 +#: ../clients/cli/devices.c:154 ../clients/tui/nmt-page-wifi.c:361 msgid "BSSID" msgstr "BSSID" #. 3 -#: ../clients/cli/devices.c:154 +#: ../clients/cli/devices.c:155 msgid "MODE" msgstr "TRYB" #. 4 -#: ../clients/cli/devices.c:155 +#: ../clients/cli/devices.c:156 msgid "CHAN" msgstr "KANAÅ" #. 5 -#: ../clients/cli/devices.c:156 +#: ../clients/cli/devices.c:157 msgid "FREQ" msgstr "CZĘSTOTLIWOŚĆ" #. 6 -#: ../clients/cli/devices.c:157 +#: ../clients/cli/devices.c:158 msgid "RATE" msgstr "OCENA" #. 7 #. 1 -#: ../clients/cli/devices.c:158 ../clients/cli/devices.c:178 +#: ../clients/cli/devices.c:159 ../clients/cli/devices.c:179 msgid "SIGNAL" msgstr "SYGNAÅ" #. 8 -#: ../clients/cli/devices.c:159 +#: ../clients/cli/devices.c:160 msgid "BARS" msgstr "PASKI" #. 9 -#: ../clients/cli/devices.c:160 +#: ../clients/cli/devices.c:161 msgid "SECURITY" msgstr "ZABEZPIECZENIA" #. 10 -#: ../clients/cli/devices.c:161 +#: ../clients/cli/devices.c:162 msgid "WPA-FLAGS" msgstr "FLAGI-WPA" #. 11 -#: ../clients/cli/devices.c:162 +#: ../clients/cli/devices.c:163 msgid "RSN-FLAGS" msgstr "FLAGI-RSN" #. 14 -#: ../clients/cli/devices.c:165 +#: ../clients/cli/devices.c:166 msgid "*" msgstr "*" #. 0 #. 5 -#: ../clients/cli/devices.c:177 ../clients/cli/devices.c:231 +#: ../clients/cli/devices.c:178 ../clients/cli/devices.c:232 msgid "NSP" msgstr "NSP" #. 0 -#: ../clients/cli/devices.c:192 +#: ../clients/cli/devices.c:193 msgid "SLAVES" msgstr "PODRZĘDNE" #. 0 -#: ../clients/cli/devices.c:201 +#: ../clients/cli/devices.c:202 msgid "PARENT" msgstr "NADRZĘDNE" #. 1 -#: ../clients/cli/devices.c:202 +#: ../clients/cli/devices.c:203 msgid "ID" msgstr "ID" #. 0 -#: ../clients/cli/devices.c:211 ../clients/cli/devices.c:226 +#: ../clients/cli/devices.c:212 ../clients/cli/devices.c:227 msgid "CAPABILITIES" msgstr "MOÅ»LIWOÅšCI" #. 1 -#: ../clients/cli/devices.c:227 +#: ../clients/cli/devices.c:228 msgid "WIFI-PROPERTIES" msgstr "WÅAÅšCIWOÅšCI-WIFI" #. 3 -#: ../clients/cli/devices.c:229 +#: ../clients/cli/devices.c:230 msgid "WIRED-PROPERTIES" msgstr "WÅAÅšCIWOÅšCI-POÅÄ„CZENIA-PRZEWODOWEGO" #. 4 -#: ../clients/cli/devices.c:230 +#: ../clients/cli/devices.c:231 msgid "WIMAX-PROPERTIES" msgstr "WÅAÅšCIWOÅšCI-WIMAX" #. 10 -#: ../clients/cli/devices.c:236 ../clients/tui/nmt-page-bond.c:354 +#: ../clients/cli/devices.c:237 ../clients/tui/nmt-page-bond.c:354 msgid "BOND" msgstr "WIÄ„ZANE" #. 11 -#: ../clients/cli/devices.c:237 ../clients/tui/nmt-page-team.c:148 +#: ../clients/cli/devices.c:238 ../clients/tui/nmt-page-team.c:148 msgid "TEAM" msgstr "ZESPÓÅ" #. 12 -#: ../clients/cli/devices.c:238 ../clients/tui/nmt-page-bridge.c:77 +#: ../clients/cli/devices.c:239 ../clients/tui/nmt-page-bridge.c:77 msgid "BRIDGE" msgstr "MOSTEK" #. 14 -#: ../clients/cli/devices.c:240 +#: ../clients/cli/devices.c:241 msgid "BLUETOOTH" msgstr "BLUETOOTH" #. 15 -#: ../clients/cli/devices.c:241 +#: ../clients/cli/devices.c:242 msgid "CONNECTIONS" msgstr "POÅÄ„CZENIA" -#: ../clients/cli/devices.c:265 +#: ../clients/cli/devices.c:266 #, c-format msgid "" "Usage: nmcli device { COMMAND | help }\n" @@ -3523,9 +3590,10 @@ msgid "" "\n" " wifi connect <(B)SSID> [password <password>] [wep-key-type key|phrase] " "[ifname <ifname>]\n" -" [bssid <BSSID>] [name <name>] [private yes|no]\n" +" [bssid <BSSID>] [name <name>] [private yes|no] " +"[hidden yes|no]\n" "\n" -" wifi rescan [[ifname] <ifname>]\n" +" wifi rescan [ifname <ifname>] [[ssid <SSID to scan>] ...]\n" "\n" " wimax [list [ifname <ifname>] [nsp <name>]]\n" "\n" @@ -3549,17 +3617,16 @@ msgstr "" "\n" " wifi [list [ifname <nazwa-interfejsu>] [bssid <BSSID>]]\n" "\n" -" wifi connect <(B)SSID> [password <hasÅ‚o>] [wep-key-type key|phrase] " -"[ifname <nazwa-interfejsu>] [bssid <BSSID>] [name <nazwa>]\n" +" wifi connect <(B)SSID> [password <hasÅ‚o>] [wep-key-type key|phrase]\n" +" [ifname <nazwa-interfejsu>] [bssid <BSSID>]\n" +" [name <nazwa>] [private yes|no] [hidden yes|no]\n" "\n" -" [private yes|no]\n" -"\n" -" wifi rescan [[ifname] <nazwa-interfejsu>]\n" +" wifi rescan [ifname <nazwa-interfejsu>] [[ssid <SSID do skanowania>] ...]\n" "\n" " wimax [list [ifname <nazwa-interfejsu>] [nsp <nazwa>]]\n" "\n" -#: ../clients/cli/devices.c:289 +#: ../clients/cli/devices.c:290 #, c-format msgid "" "Usage: nmcli device status { help }\n" @@ -3589,7 +3656,7 @@ msgstr "" "device\" wywoÅ‚uje \"nmcli device status\".\n" "\n" -#: ../clients/cli/devices.c:304 +#: ../clients/cli/devices.c:305 #, c-format msgid "" "Usage: nmcli device show { ARGUMENTS | help }\n" @@ -3608,7 +3675,7 @@ msgstr "" "Polecenie wyÅ›wietla szczegóły dla wszystkich urzÄ…dzeÅ„ lub tylko podanego.\n" "\n" -#: ../clients/cli/devices.c:315 +#: ../clients/cli/devices.c:316 #, c-format msgid "" "Usage: nmcli device connect { ARGUMENTS | help }\n" @@ -3631,7 +3698,7 @@ msgstr "" "automatyczne łączenie.\n" "\n" -#: ../clients/cli/devices.c:327 +#: ../clients/cli/devices.c:328 #, c-format msgid "" "Usage: nmcli device disconnect { ARGUMENTS | help }\n" @@ -3652,7 +3719,7 @@ msgstr "" "aktywowanie połączeÅ„ bez dziaÅ‚ania użytkownika.\n" "\n" -#: ../clients/cli/devices.c:339 +#: ../clients/cli/devices.c:340 #, c-format msgid "" "Usage: nmcli device delete { ARGUMENTS | help }\n" @@ -3675,7 +3742,7 @@ msgstr "" "tym poleceniem.\n" "\n" -#: ../clients/cli/devices.c:352 +#: ../clients/cli/devices.c:353 #, c-format msgid "" "Usage: nmcli device wifi { ARGUMENTS | help }\n" @@ -3689,7 +3756,8 @@ msgid "" "\n" "ARGUMENTS := connect <(B)SSID> [password <password>] [wep-key-type key|" "phrase] [ifname <ifname>]\n" -" [bssid <BSSID>] [name <name>] [private yes|no]\n" +" [bssid <BSSID>] [name <name>] [private yes|no] [hidden " +"yes|no]\n" "\n" "Connect to a Wi-Fi network specified by SSID or BSSID. The command creates\n" "a new connection and then activates it on a device. This is a command-line\n" @@ -3700,14 +3768,17 @@ msgid "" "only open, WEP and WPA-PSK networks are supported at the moment. It is also\n" "assumed that IP configuration is obtained via DHCP.\n" "\n" -"ARGUMENTS := rescan [[ifname] <ifname>]\n" +"ARGUMENTS := rescan [ifname <ifname>] [[ssid <SSID to scan>] ...]\n" "\n" "Request that NetworkManager immediately re-scan for available access " "points.\n" "NetworkManager scans Wi-Fi networks periodically, but in some cases it " "might\n" -"be useful to start scanning manually. Note that this command does not show\n" -"the APs, use 'nmcli device wifi list' for that.\n" +"be useful to start scanning manually. 'ssid' allows scanning for a specific\n" +"SSID, which is useful for APs with hidden SSIDs. More 'ssid' parameters can " +"be\n" +"given. Note that this command does not show the APs,\n" +"use 'nmcli device wifi list' for that.\n" "\n" msgstr "" "Użycie: nmcli device wifi { PARAMETRY | help }\n" @@ -3722,7 +3793,8 @@ msgstr "" "\n" "PARAMETRY := connect <(B)SSID> [password <hasÅ‚o>] [wep-key-type key|phrase] " "[ifname <nazwa-interfejsu>]\n" -" [bssid <BSSID>] [name <nazwa>] [private yes|no]\n" +" [bssid <BSSID>] [name <nazwa>] [private yes|no] [hidden " +"yes|no]\n" "\n" "ÅÄ…czy z sieciÄ… Wi-Fi podanÄ… jako SSID lub BSSID. Polecenie tworzy nowe\n" "połączenia, a nastÄ™pnie aktywuje je na urzÄ…dzeniu. Jest to odpowiednik\n" @@ -3734,17 +3806,20 @@ msgstr "" "zabezpieczone za pomocÄ… WEP i WPA-PSK. Przyjmowane jest także, że\n" "konfiguracja IP jest uzyskiwana przez DHCP.\n" "\n" -"PARAMETRY := rescan [[ifname] <nazwa-interfejsu>]\n" +"PARAMETRY := rescan [ifname <nazwa-interfejsu>] [[ssid <SSID do " +"skanowania>] ...]\n" "\n" "Żąda, aby usÅ‚uga NetworkManager natychmiastowo ponownie przeskanowaÅ‚a " "dostÄ™pne punkty dostÄ™powe.\n" "UsÅ‚uga NetworkManager okresowo skanuje sieci Wi-Fi, ale w niektórych\n" -"przypadkach rÄ™czne rozpoczÄ™cie skanowania może być przydatne. ProszÄ™\n" +"przypadkach rÄ™czne rozpoczÄ™cie skanowania może być przydatne. \"ssid\"\n" +"umożliwia skanowanie podanego SSID, co jest przydatne dla punktów\n" +"dostÄ™powych z ukrytym SSID. Można podać wiÄ™cej parametrów \"ssid\". ProszÄ™\n" "zauważyć, że to polecenie nie wyÅ›wietla punktów dostÄ™powych, i w tym celu\n" "należy użyć \"nmcli device wifi list\".\n" "\n" -#: ../clients/cli/devices.c:385 +#: ../clients/cli/devices.c:388 #, c-format msgid "" "Usage: nmcli device wimax { ARGUMENTS | help }\n" @@ -3768,230 +3843,230 @@ msgstr "" "NSP.\n" "\n" -#: ../clients/cli/devices.c:474 ../clients/cli/devices.c:665 +#: ../clients/cli/devices.c:477 ../clients/cli/devices.c:668 msgid "(none)" msgstr "(brak)" -#: ../clients/cli/devices.c:542 +#: ../clients/cli/devices.c:545 #, c-format msgid "%u MHz" msgstr "%u MHz" -#: ../clients/cli/devices.c:543 +#: ../clients/cli/devices.c:546 #, c-format msgid "%u Mbit/s" msgstr "%u Mbit/s" -#: ../clients/cli/devices.c:558 +#: ../clients/cli/devices.c:561 msgid "WPA1" msgstr "WPA1" -#: ../clients/cli/devices.c:567 +#: ../clients/cli/devices.c:570 msgid "802.1X" msgstr "802.1X" -#: ../clients/cli/devices.c:583 +#: ../clients/cli/devices.c:586 msgid "Ad-Hoc" msgstr "Ad-hoc" -#: ../clients/cli/devices.c:584 +#: ../clients/cli/devices.c:587 msgid "Infra" msgstr "Infrastruktura" -#: ../clients/cli/devices.c:585 +#: ../clients/cli/devices.c:588 msgid "N/A" msgstr "Nie dotyczy" -#: ../clients/cli/devices.c:616 +#: ../clients/cli/devices.c:619 msgid "Home" msgstr "Dom" -#: ../clients/cli/devices.c:619 +#: ../clients/cli/devices.c:622 msgid "Partner" msgstr "Partner" -#: ../clients/cli/devices.c:622 +#: ../clients/cli/devices.c:625 msgid "Roaming" msgstr "Roaming" -#: ../clients/cli/devices.c:780 +#: ../clients/cli/devices.c:783 msgid "Device details" msgstr "Informacje o urzÄ…dzeniu" -#: ../clients/cli/devices.c:792 +#: ../clients/cli/devices.c:795 #, c-format msgid "Error: 'device show': %s" msgstr "Błąd: \"device show\": %s" -#: ../clients/cli/devices.c:844 ../clients/cli/devices.c:847 +#: ../clients/cli/devices.c:847 ../clients/cli/devices.c:850 msgid "(unknown)" msgstr "(nieznane)" -#: ../clients/cli/devices.c:886 +#: ../clients/cli/devices.c:891 #, c-format msgid "%u Mb/s" msgstr "%u Mb/s" -#: ../clients/cli/devices.c:976 +#: ../clients/cli/devices.c:981 msgid "on" msgstr "włączone" -#: ../clients/cli/devices.c:976 +#: ../clients/cli/devices.c:981 msgid "off" msgstr "wyłączone" -#: ../clients/cli/devices.c:1250 +#: ../clients/cli/devices.c:1255 #, c-format msgid "Error: 'device status': %s" msgstr "Błąd: \"device status\": %s" #. Add headers -#: ../clients/cli/devices.c:1257 +#: ../clients/cli/devices.c:1262 msgid "Status of devices" msgstr "Stan urzÄ…dzenia" -#: ../clients/cli/devices.c:1288 +#: ../clients/cli/devices.c:1293 #, c-format msgid "Error: invalid extra argument '%s'." msgstr "Błąd: nieprawidÅ‚owy dodatkowy parametr \"%s\"." -#: ../clients/cli/devices.c:1305 ../clients/cli/devices.c:1603 -#: ../clients/cli/devices.c:2075 ../clients/cli/devices.c:2748 +#: ../clients/cli/devices.c:1310 ../clients/cli/devices.c:1608 +#: ../clients/cli/devices.c:2080 ../clients/cli/devices.c:2847 #, c-format msgid "Error: Device '%s' not found." msgstr "Błąd: nie odnaleziono urzÄ…dzenia \"%s\"." -#: ../clients/cli/devices.c:1383 +#: ../clients/cli/devices.c:1388 #, c-format msgid "Device '%s' successfully activated with '%s'.\n" msgstr "PomyÅ›lnie aktywowano urzÄ…dzenie \"%s\" za pomocÄ… \"%s\".\n" -#: ../clients/cli/devices.c:1389 +#: ../clients/cli/devices.c:1394 #, c-format msgid "Error: Connection activation failed: (%d) %s.\n" msgstr "Błąd: aktywacja połączenia siÄ™ nie powiodÅ‚a: (%d) %s.\n" -#: ../clients/cli/devices.c:1423 +#: ../clients/cli/devices.c:1428 #, c-format msgid "Error: Failed to add/activate new connection: %s" msgstr "Błąd: dodanie/aktywacja nowego połączenia siÄ™ nie powiodÅ‚a: %s" -#: ../clients/cli/devices.c:1432 +#: ../clients/cli/devices.c:1437 #, c-format msgid "Error: Failed to add/activate new connection: Unknown error" msgstr "" "Błąd: dodanie/aktywacja nowego połączenia siÄ™ nie powiodÅ‚a: nieznany błąd" -#: ../clients/cli/devices.c:1443 +#: ../clients/cli/devices.c:1448 #, c-format msgid "Connection with UUID '%s' created and activated on device '%s'\n" msgstr "Utworzono i aktywowano połączenie o UUID \"%s\" na urzÄ…dzeniu \"%s\"\n" -#: ../clients/cli/devices.c:1507 +#: ../clients/cli/devices.c:1512 #, c-format msgid "Error: Device activation failed: %s" msgstr "Błąd: aktywacja urzÄ…dzenia siÄ™ nie powiodÅ‚a: %s" -#: ../clients/cli/devices.c:1516 +#: ../clients/cli/devices.c:1521 #, c-format msgid "Error: Device activation failed: device was disconnected" msgstr "" "Błąd: aktywacja urzÄ…dzenia siÄ™ nie powiodÅ‚a: urzÄ…dzenie zostaÅ‚o rozłączone" -#: ../clients/cli/devices.c:1531 +#: ../clients/cli/devices.c:1536 #, c-format msgid "Device '%s' has been connected.\n" msgstr "UrzÄ…dzenie \"%s\" zostaÅ‚o połączone.\n" -#: ../clients/cli/devices.c:1572 ../clients/cli/devices.c:1581 -#: ../clients/cli/devices.c:1782 ../clients/cli/devices.c:1897 +#: ../clients/cli/devices.c:1577 ../clients/cli/devices.c:1586 +#: ../clients/cli/devices.c:1787 ../clients/cli/devices.c:1902 #, c-format msgid "Error: No interface specified." msgstr "Błąd: nie podano żadnego interfejsu." -#: ../clients/cli/devices.c:1587 +#: ../clients/cli/devices.c:1592 #, c-format msgid "Error: extra argument not allowed: '%s'." msgstr "Błąd: niedozwolony dodatkowy parametr: \"%s\"." -#: ../clients/cli/devices.c:1671 ../clients/cli/devices.c:1686 -#: ../clients/cli/devices.c:1750 +#: ../clients/cli/devices.c:1676 ../clients/cli/devices.c:1691 +#: ../clients/cli/devices.c:1755 #, c-format msgid "Device '%s' successfully disconnected.\n" msgstr "PomyÅ›lnie rozłączono urzÄ…dzenie \"%s\".\n" -#: ../clients/cli/devices.c:1674 +#: ../clients/cli/devices.c:1679 #, c-format msgid "Device '%s' successfully removed.\n" msgstr "PomyÅ›lnie usuniÄ™to urzÄ…dzenie \"%s\".\n" -#: ../clients/cli/devices.c:1734 +#: ../clients/cli/devices.c:1739 #, c-format msgid "Error: not all devices disconnected." msgstr "Błąd: nie rozłączono wszystkich połączeÅ„." -#: ../clients/cli/devices.c:1735 +#: ../clients/cli/devices.c:1740 #, c-format msgid "Error: Device '%s' (%s) disconnecting failed: %s\n" msgstr "Błąd: rozłączenie urzÄ…dzenia \"%s\" (%s) siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/devices.c:1802 ../clients/cli/devices.c:1924 +#: ../clients/cli/devices.c:1807 ../clients/cli/devices.c:1929 #, c-format msgid "Warning: argument '%s' is duplicated.\n" msgstr "Ostrzeżenie: podwójny parametr \"%s\".\n" -#: ../clients/cli/devices.c:1804 ../clients/cli/devices.c:1926 +#: ../clients/cli/devices.c:1809 ../clients/cli/devices.c:1931 #, c-format msgid "Error: Device '%s' not found.\n" msgstr "Błąd: nie odnaleziono urzÄ…dzenia \"%s\".\n" -#: ../clients/cli/devices.c:1805 ../clients/cli/devices.c:1927 +#: ../clients/cli/devices.c:1810 ../clients/cli/devices.c:1932 #, c-format msgid "Error: not all devices found." msgstr "Błąd: nie odnaleziono wszystkich urzÄ…dzeÅ„." -#: ../clients/cli/devices.c:1815 ../clients/cli/devices.c:1937 +#: ../clients/cli/devices.c:1820 ../clients/cli/devices.c:1942 #, c-format msgid "Error: no valid device provided." msgstr "Błąd: nie podano prawidÅ‚owego urzÄ…dzenia." -#: ../clients/cli/devices.c:1859 +#: ../clients/cli/devices.c:1864 #, c-format msgid "Error: not all devices deleted." msgstr "Błąd: nie usuniÄ™to wszystkich urzÄ…dzeÅ„." -#: ../clients/cli/devices.c:1860 +#: ../clients/cli/devices.c:1865 #, c-format msgid "Error: Device '%s' (%s) deletion failed: %s\n" msgstr "Błąd: usuniÄ™cie urzÄ…dzenia \"%s\" (%s) siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/devices.c:1918 +#: ../clients/cli/devices.c:1923 #, c-format msgid "Error: Device '%s' is a hardware device. It can't be deleted.\n" msgstr "" "Błąd: urzÄ…dzenie \"%s\" jest urzÄ…dzeniem sprzÄ™towym i nie może zostać " "usuniÄ™te.\n" -#: ../clients/cli/devices.c:1920 +#: ../clients/cli/devices.c:1925 #, c-format msgid "Error: not all devices valid." msgstr "Błąd: nie wszystkie urzÄ…dzenia sÄ… prawidÅ‚owe." -#: ../clients/cli/devices.c:2018 +#: ../clients/cli/devices.c:2023 msgid "Wi-Fi scan list" msgstr "Lista skanowania sieci Wi-Fi" -#: ../clients/cli/devices.c:2056 +#: ../clients/cli/devices.c:2061 #, c-format msgid "Error: 'device wifi': %s" msgstr "Błąd: \"device wifi\": %s" -#: ../clients/cli/devices.c:2098 ../clients/cli/devices.c:2179 +#: ../clients/cli/devices.c:2103 ../clients/cli/devices.c:2184 #, c-format msgid "Error: Access point with bssid '%s' not found." msgstr "Błąd: nie odnaleziono punktu dostÄ™powego z BSSID \"%s\"." -#: ../clients/cli/devices.c:2125 ../clients/cli/devices.c:2612 +#: ../clients/cli/devices.c:2130 #, c-format msgid "" "Error: Device '%s' was not recognized as a Wi-Fi device, check " @@ -4000,27 +4075,27 @@ msgstr "" "Błąd: urzÄ…dzenie \"%s\" nie zostaÅ‚o rozpoznane jako urzÄ…dzenie Wi-Fi. ProszÄ™ " "sprawdzić poprawność instalacji wtyczki Wi-Fi usÅ‚ugi NetworkManager." -#: ../clients/cli/devices.c:2127 ../clients/cli/devices.c:2445 -#: ../clients/cli/devices.c:2614 +#: ../clients/cli/devices.c:2132 ../clients/cli/devices.c:2464 +#: ../clients/cli/devices.c:2695 #, c-format msgid "Error: Device '%s' is not a Wi-Fi device." msgstr "Błąd: urzÄ…dzenie \"%s\" nie jest urzÄ…dzeniem WiFi." -#: ../clients/cli/devices.c:2338 +#: ../clients/cli/devices.c:2344 msgid "SSID or BSSID: " msgstr "SSID lub BSSID: " -#: ../clients/cli/devices.c:2343 +#: ../clients/cli/devices.c:2349 #, c-format msgid "Error: SSID or BSSID are missing." msgstr "Błąd: brak SSID lub BSSID." -#: ../clients/cli/devices.c:2367 +#: ../clients/cli/devices.c:2373 #, c-format msgid "Error: bssid argument value '%s' is not a valid BSSID." msgstr "Błąd: wartość parametru BSSID \"%s\" nie jest prawidÅ‚owym BSSID." -#: ../clients/cli/devices.c:2391 +#: ../clients/cli/devices.c:2397 #, c-format msgid "" "Error: wep-key-type argument value '%s' is invalid, use 'key' or 'phrase'." @@ -4028,75 +4103,93 @@ msgstr "" "Błąd: wartość \"%s\" parametru wep-key-type jest nieprawidÅ‚owa, należy użyć " "\"key\" lub \"phrase\"." -#: ../clients/cli/devices.c:2411 +#: ../clients/cli/devices.c:2417 ../clients/cli/devices.c:2430 #, c-format msgid "Error: %s: %s." msgstr "Błąd: %s: %s." -#: ../clients/cli/devices.c:2426 +#: ../clients/cli/devices.c:2445 #, c-format msgid "Error: BSSID to connect to (%s) differs from bssid argument (%s)." msgstr "Błąd: BSSID do połączenia (%s) różni siÄ™ od parametru BSSID (%s)." -#: ../clients/cli/devices.c:2432 +#: ../clients/cli/devices.c:2451 #, c-format msgid "Error: Parameter '%s' is neither SSID nor BSSID." msgstr "Błąd: parametr \"%s\" nie wynosi SSID ani BSSID." -#: ../clients/cli/devices.c:2447 ../clients/cli/devices.c:2617 +#: ../clients/cli/devices.c:2466 ../clients/cli/devices.c:2697 #, c-format msgid "Error: No Wi-Fi device found." msgstr "Błąd: nie odnaleziono urzÄ…dzenia WiFi." -#: ../clients/cli/devices.c:2465 +#: ../clients/cli/devices.c:2486 +#, c-format +msgid "Error: Failed to scan hidden SSID: %s." +msgstr "Błąd: skanowanie ukrytego SSID siÄ™ nie powiodÅ‚o: %s" + +#: ../clients/cli/devices.c:2511 #, c-format msgid "Error: No network with SSID '%s' found." msgstr "Błąd: nie odnaleziono sieci z SSID \"%s\"." -#: ../clients/cli/devices.c:2467 +#: ../clients/cli/devices.c:2513 #, c-format msgid "Error: No access point with BSSID '%s' found." msgstr "Błąd: nie odnaleziono punktu dostÄ™powego z BSSID \"%s\"." -#: ../clients/cli/devices.c:2506 +#: ../clients/cli/devices.c:2555 +#, c-format +msgid "" +"Warning: '%s' should be SSID for hidden APs; but it looks like a BSSID.\n" +msgstr "" +"Ostrzeżenie: \"%s\" powinno być SSID dla ukrytych punktów dostÄ™powych, ale " +"wyglÄ…da jak BSSID.\n" + +#: ../clients/cli/devices.c:2569 msgid "Password: " msgstr "HasÅ‚o: " -#: ../clients/cli/devices.c:2644 +#: ../clients/cli/devices.c:2664 +#, c-format +msgid "Error: '%s' cannot repeat." +msgstr "Błąd: \"%s\" nie może siÄ™ powtarzać." + +#: ../clients/cli/devices.c:2743 #, c-format msgid "Error: 'device wifi' command '%s' is not valid." msgstr "Błąd: polecenie \"device wifi\" \"%s\" jest nieprawidÅ‚owe." -#: ../clients/cli/devices.c:2691 +#: ../clients/cli/devices.c:2790 msgid "WiMAX NSP list" msgstr "Lista NSP sieci WiMAX" -#: ../clients/cli/devices.c:2728 +#: ../clients/cli/devices.c:2827 #, c-format msgid "Error: 'device wimax': %s" msgstr "Błąd: \"device wimax\": %s" -#: ../clients/cli/devices.c:2771 +#: ../clients/cli/devices.c:2870 #, c-format msgid "Error: NSP with name '%s' not found." msgstr "Błąd: nie odnaleziono NSP o nazwie \"%s\"." -#: ../clients/cli/devices.c:2784 +#: ../clients/cli/devices.c:2883 #, c-format msgid "Error: Device '%s' is not a WiMAX device." msgstr "Błąd: urzÄ…dzenie \"%s\" nie jest urzÄ…dzeniem WiMAX." -#: ../clients/cli/devices.c:2828 +#: ../clients/cli/devices.c:2927 #, c-format msgid "Error: Access point with nsp '%s' not found." msgstr "Błąd: nie odnaleziono punktu dostÄ™powego z NSP \"%s\"." -#: ../clients/cli/devices.c:2865 +#: ../clients/cli/devices.c:2964 #, c-format msgid "Error: 'device wimax' command '%s' is not valid." msgstr "Błąd: polecenie \"device wimax\" \"%s\" jest nieprawidÅ‚owe." -#: ../clients/cli/devices.c:3041 +#: ../clients/cli/devices.c:3140 #, c-format msgid "Error: 'dev' command '%s' is not valid." msgstr "Błąd: polecenie \"dev\" \"%s\" jest nieprawidÅ‚owe." @@ -4762,123 +4855,136 @@ msgstr "Błąd uwierzytelnienia: %s\n" msgid "Warning: polkit agent initialization failed: %s\n" msgstr "Ostrzeżenie: zainicjowanie agenta polkit siÄ™ nie powiodÅ‚o: %s\n" -#: ../clients/cli/settings.c:678 +#: ../clients/cli/settings.c:685 #, c-format msgid "%d (key)" msgstr "%d (klucz)" -#: ../clients/cli/settings.c:680 +#: ../clients/cli/settings.c:687 #, c-format msgid "%d (passphrase)" msgstr "%d (hasÅ‚o)" -#: ../clients/cli/settings.c:683 ../clients/cli/settings.c:767 +#: ../clients/cli/settings.c:690 ../clients/cli/settings.c:774 #, c-format msgid "%d (unknown)" msgstr "%d (nieznane)" -#: ../clients/cli/settings.c:712 +#: ../clients/cli/settings.c:719 msgid "0 (NONE)" msgstr "0 (BRAK)" -#: ../clients/cli/settings.c:718 +#: ../clients/cli/settings.c:725 msgid "REORDER_HEADERS, " msgstr "ZMIANA_KOLEJNOÅšCI_NAGÅÓWKÓW, " -#: ../clients/cli/settings.c:720 +#: ../clients/cli/settings.c:727 msgid "GVRP, " msgstr "GVRP, " -#: ../clients/cli/settings.c:722 +#: ../clients/cli/settings.c:729 msgid "LOOSE_BINDING, " msgstr "LUŹNE_DOWIÄ„ZANIE, " -#: ../clients/cli/settings.c:761 +#: ../clients/cli/settings.c:768 #, c-format msgid "%d (disabled)" msgstr "%d (wyłączone)" -#: ../clients/cli/settings.c:763 +#: ../clients/cli/settings.c:770 #, c-format msgid "%d (enabled, prefer public IP)" msgstr "%d (włączone, preferowanie publicznego adresu IP)" -#: ../clients/cli/settings.c:765 +#: ../clients/cli/settings.c:772 #, c-format msgid "%d (enabled, prefer temporary IP)" msgstr "%d (włączone, preferowanie tymczasowego adresu IP)" -#: ../clients/cli/settings.c:779 +#: ../clients/cli/settings.c:786 #, c-format msgid "%d (no)" msgstr "%d (nie)" -#: ../clients/cli/settings.c:781 +#: ../clients/cli/settings.c:788 #, c-format msgid "%d (yes)" msgstr "%d (tak)" -#: ../clients/cli/settings.c:784 +#: ../clients/cli/settings.c:791 #, c-format msgid "%d (default)" msgstr "%d (domyÅ›lne)" -#: ../clients/cli/settings.c:797 +#: ../clients/cli/settings.c:804 msgid "0 (none)" msgstr "0 (brak)" -#: ../clients/cli/settings.c:803 +#: ../clients/cli/settings.c:810 msgid "agent-owned, " msgstr "posiadane przez agenta, " -#: ../clients/cli/settings.c:805 +#: ../clients/cli/settings.c:812 msgid "not saved, " msgstr "niezapisane, " -#: ../clients/cli/settings.c:807 +#: ../clients/cli/settings.c:814 msgid "not required, " msgstr "niewymagane, " -#: ../clients/cli/settings.c:1098 +#: ../clients/cli/settings.c:1105 msgid "0 (disabled)" msgstr "0 (wyłączone)" -#: ../clients/cli/settings.c:1104 +#: ../clients/cli/settings.c:1111 msgid "enabled, " msgstr "włączone, " -#: ../clients/cli/settings.c:1106 +#: ../clients/cli/settings.c:1113 msgid "advertise, " msgstr "rozgÅ‚aszanie, " -#: ../clients/cli/settings.c:1108 +#: ../clients/cli/settings.c:1115 msgid "willing, " msgstr "chÄ™tne, " -#: ../clients/cli/settings.c:1136 +#: ../clients/cli/settings.c:1143 msgid "-1 (unset)" msgstr "-1 (usuniÄ™cie ustawienia)" -#: ../clients/cli/settings.c:1233 ../clients/cli/settings.c:1509 -#: ../clients/cli/settings.c:1551 +#: ../clients/cli/settings.c:1240 ../clients/cli/settings.c:1517 +#: ../clients/cli/settings.c:1619 msgid "auto" msgstr "automatyczne" -#: ../clients/cli/settings.c:1246 +#: ../clients/cli/settings.c:1253 msgid "default" msgstr "domyÅ›lne" -#: ../clients/cli/settings.c:1682 +#: ../clients/cli/settings.c:1563 +#, c-format +msgid "" +"invalid option '%s', use a combination of [%s] or 'ignore', 'default' or " +"'none'" +msgstr "" +"nieprawidÅ‚owa opcja \"%s\", należy użyć połączenia [%s] albo \"ignore\", " +"\"default\" lub \"none\"" + +#: ../clients/cli/settings.c:1574 +msgid "'default' and 'ignore' are incompatible with other flags" +msgstr "\"default\" i \"ignore\" sÄ… niezgodne z innymi flagami" + +#: ../clients/cli/settings.c:1750 #, c-format msgid "Do you also want to set '%s' to '%s'? [yes]: " msgstr "Ustawić \"%s\" na \"%s\"? [yes]: " -#: ../clients/cli/settings.c:1684 +#: ../clients/cli/settings.c:1752 #, c-format msgid "Do you also want to clear '%s'? [yes]: " msgstr "WyczyÅ›cić \"%s\"? [yes]: " -#: ../clients/cli/settings.c:1845 +#: ../clients/cli/settings.c:1913 #, c-format msgid "" "Warning: %s.%s set to '%s', but it might be ignored in infrastructure mode\n" @@ -4886,81 +4992,86 @@ msgstr "" "Ostrzeżenie: ustawiono %s.%s na \"%s\", ale może zostać zignorowane w trybie " "infrastruktury\n" -#: ../clients/cli/settings.c:1864 +#: ../clients/cli/settings.c:1932 #, c-format msgid "Warning: setting %s.%s requires removing ipv4 and ipv6 settings\n" msgstr "Ostrzeżenie: ustawienie %s.%s wymaga usuniÄ™cia ustawieÅ„ IPv4 i IPv6\n" -#: ../clients/cli/settings.c:1866 +#: ../clients/cli/settings.c:1934 msgid "Do you want to remove them? [yes] " msgstr "Usunąć je? [yes] " -#: ../clients/cli/settings.c:1962 ../clients/cli/settings.c:2297 -#: ../clients/cli/settings.c:4354 +#: ../clients/cli/settings.c:2030 ../clients/cli/settings.c:2425 +#: ../clients/cli/settings.c:4548 #, c-format msgid "'%s' is not valid" msgstr "\"%s\" jest nieprawidÅ‚owe" -#: ../clients/cli/settings.c:1985 +#: ../clients/cli/settings.c:2053 #, c-format msgid "'%d' is not valid; use <%d-%d>" msgstr "\"%d\" jest nieprawidÅ‚owe; należy użyć <%d-%d>" -#: ../clients/cli/settings.c:2007 +#: ../clients/cli/settings.c:2075 #, c-format msgid "'%lld' is not valid; use <%lld-%lld>" msgstr "\"%lld\" jest nieprawidÅ‚owe; należy użyć <%lld-%lld>" -#: ../clients/cli/settings.c:2029 +#: ../clients/cli/settings.c:2097 #, c-format msgid "'%u' is not valid; use <%u-%u>" msgstr "\"%u\" jest nieprawidÅ‚owe; należy użyć <%u-%u>" -#: ../clients/cli/settings.c:2095 +#: ../clients/cli/settings.c:2136 +#, c-format +msgid "'%u' flags are not valid; use combination of %s" +msgstr "flagi \"%u\" sÄ… nieprawidÅ‚owe; należy użyć połączenia %s" + +#: ../clients/cli/settings.c:2203 #, c-format msgid "'%s' is not valid; use <option>=<value>" msgstr "\"%s\" jest nieprawidÅ‚owe; należy użyć <opcja>=<wartość>" -#: ../clients/cli/settings.c:2129 +#: ../clients/cli/settings.c:2237 #, c-format msgid "index '%s' is not valid" msgstr "indeks \"%s\" jest nieprawidÅ‚owy" -#: ../clients/cli/settings.c:2134 ../clients/cli/settings.c:2159 +#: ../clients/cli/settings.c:2242 ../clients/cli/settings.c:2267 msgid "no item to remove" msgstr "brak elementu do usuniÄ™cia" -#: ../clients/cli/settings.c:2138 ../clients/cli/settings.c:2163 +#: ../clients/cli/settings.c:2246 ../clients/cli/settings.c:2271 #, c-format msgid "index '%d' is not in range <0-%d>" msgstr "indeks \"%d\" jest poza zakresem <0-%d>" -#: ../clients/cli/settings.c:2178 +#: ../clients/cli/settings.c:2286 #, c-format msgid "invalid option '%s'" msgstr "nieprawidÅ‚owa opcja \"%s\"" -#: ../clients/cli/settings.c:2180 +#: ../clients/cli/settings.c:2288 msgid "missing option" msgstr "brak opcji" -#: ../clients/cli/settings.c:2207 ../clients/cli/settings.c:2227 -#: ../clients/cli/settings.c:2247 +#: ../clients/cli/settings.c:2315 ../clients/cli/settings.c:2335 +#: ../clients/cli/settings.c:2355 ../clients/cli/settings.c:2375 #, c-format msgid "'%s' is not a valid number (or out of range)" msgstr "\"%s\" nie jest prawidÅ‚owÄ… liczbÄ… (lub jest poza zakresem)" -#: ../clients/cli/settings.c:2281 +#: ../clients/cli/settings.c:2409 #, c-format msgid "'%s' is not a valid value; use -1, 0 or 1" msgstr "\"%s\" nie jest prawidÅ‚owÄ… wartoÅ›ciÄ…; należy użyć -1, 0 lub 1" -#: ../clients/cli/settings.c:2313 +#: ../clients/cli/settings.c:2441 #, c-format msgid "'%s' is not a valid Ethernet MAC" msgstr "\"%s\" nie jest prawidÅ‚owym adresem MAC Ethernetu" -#: ../clients/cli/settings.c:2338 ../libnm-core/nm-setting-connection.c:817 +#: ../clients/cli/settings.c:2466 ../libnm-core/nm-setting-connection.c:836 #: ../libnm-core/nm-setting-infiniband.c:256 #: ../libnm-util/nm-setting-connection.c:835 #: ../libnm-util/nm-setting-infiniband.c:270 @@ -4968,40 +5079,40 @@ msgstr "\"%s\" nie jest prawidÅ‚owym adresem MAC Ethernetu" msgid "'%s' is not a valid interface name" msgstr "\"%s\" nie jest prawidÅ‚owÄ… nazwÄ… interfejsu" -#: ../clients/cli/settings.c:2362 +#: ../clients/cli/settings.c:2490 #, c-format msgid "'%s' is not a valid flag number; use <0-%d>" msgstr "\"%s\" nie jest prawidÅ‚owym numerem flagi; należy użyć <0-%d>" -#: ../clients/cli/settings.c:2374 +#: ../clients/cli/settings.c:2502 #, c-format msgid "Warning: '%s' sum is higher than all flags => all flags set\n" msgstr "" "Ostrzeżenie: suma \"%s\" jest wyższa niż wszystkie flagi => wszystkie " "ustawione flagi\n" -#: ../clients/cli/settings.c:2415 +#: ../clients/cli/settings.c:2543 #, c-format msgid "'%s' is not a valid hex character" msgstr "\"%s\" nie jest prawidÅ‚owym znakiem szesnastkowym" -#: ../clients/cli/settings.c:2445 +#: ../clients/cli/settings.c:2573 #, c-format msgid "'%s' is not a valid MAC" msgstr "\"%s\" nie jest prawidÅ‚owym adresem MAC" -#: ../clients/cli/settings.c:2471 ../libnm-core/nm-setting-connection.c:806 +#: ../clients/cli/settings.c:2599 ../libnm-core/nm-setting-connection.c:825 #: ../libnm-util/nm-setting-connection.c:792 #, c-format msgid "'%s' is not a valid UUID" msgstr "\"%s\" nie jest prawidÅ‚owym UUID" -#: ../clients/cli/settings.c:2538 +#: ../clients/cli/settings.c:2666 #, c-format msgid "the property doesn't contain permission '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera uprawnienia \"%s\"" -#: ../clients/cli/settings.c:2550 +#: ../clients/cli/settings.c:2678 msgid "" "Enter a list of user permissions. This is a list of user names formatted " "as:\n" @@ -5018,40 +5129,40 @@ msgstr "" "\n" "PrzykÅ‚ad: alice bob charlie\n" -#: ../clients/cli/settings.c:2569 +#: ../clients/cli/settings.c:2697 #, c-format msgid "'%s' is not valid master; use ifname or connection UUID" msgstr "" "\"%s\" nie jest prawidÅ‚owym \"master\"; należy użyć nazwy interfejsu lub " "UUID połączenia" -#: ../clients/cli/settings.c:2613 +#: ../clients/cli/settings.c:2741 #, c-format msgid "Warning: %s is not an UUID of any existing connection profile\n" msgstr "" "Ostrzeżenie: %s nie jest UUID żadnego istniejÄ…cego profilu połączenia\n" -#: ../clients/cli/settings.c:2617 ../clients/cli/settings.c:2633 +#: ../clients/cli/settings.c:2745 ../clients/cli/settings.c:2761 #, c-format msgid "'%s' is not a VPN connection profile" msgstr "\"%s\" nie jest profilem połączenia VPN" -#: ../clients/cli/settings.c:2626 +#: ../clients/cli/settings.c:2754 #, c-format msgid "'%s' is not a name of any exiting profile" msgstr "\"%s\" nie jest nazwÄ… żadnego istniejÄ…cego profilu" -#: ../clients/cli/settings.c:2660 +#: ../clients/cli/settings.c:2788 #, c-format msgid "the value '%s' is not a valid UUID" msgstr "wartość \"%s\" nie jest prawidÅ‚owym UUID" -#: ../clients/cli/settings.c:2667 +#: ../clients/cli/settings.c:2795 #, c-format msgid "the property doesn't contain UUID '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera UUID \"%s\"" -#: ../clients/cli/settings.c:2679 +#: ../clients/cli/settings.c:2807 msgid "" "Enter secondary connections that should be activated when this connection " "is\n" @@ -5072,16 +5183,31 @@ msgstr "" "\n" "PrzykÅ‚ad: private-openvpn, fe6ba5d8-c2fc-4aae-b2e3-97efddd8d9a7\n" -#: ../clients/cli/settings.c:2754 +#: ../clients/cli/settings.c:2874 +msgid "" +"Enter a value which indicates whether the connection is subject to a data\n" +"quota, usage costs or other limitations. Accepted options are:\n" +"'true','yes','on' to set the connection as metered\n" +"'false','no','off' to set the connection as not metered\n" +"'unknown' to let NetworkManager choose a value using some heuristics\n" +msgstr "" +"ProszÄ™ podać wartość wskazujÄ…cÄ…, czy połączenie posiada limit przesÅ‚anych\n" +"danych, koszty użytkowania lub inne ograniczenia. DostÄ™pne opcje:\n" +"\"true\",\"yes\",\"on\" ustawiajÄ… połączenie jako mierzone\n" +"\"false\",\"no\",\"off\" ustawiajÄ… połączenie jako niemierzone\n" +"\"unknown\" umożliwia usÅ‚udze NetworkManager wybranie wartoÅ›ci używajÄ…c " +"heurystyki\n" + +#: ../clients/cli/settings.c:2948 msgid "private key password not provided" msgstr "nie podano hasÅ‚a klucza prywatnego" -#: ../clients/cli/settings.c:2782 +#: ../clients/cli/settings.c:2976 #, c-format msgid "the property doesn't contain EAP method '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera metody EAP \"%s\"" -#: ../clients/cli/settings.c:2799 +#: ../clients/cli/settings.c:2993 msgid "" "Enter file path to CA certificate (optionally prefixed with file://).\n" " [file://]<file path>\n" @@ -5095,12 +5221,12 @@ msgstr "" "danych typu blob.\n" "PrzykÅ‚ad: /home/cimrman/cacert.crt\n" -#: ../clients/cli/settings.c:2818 +#: ../clients/cli/settings.c:3012 #, c-format msgid "the property doesn't contain alternative subject match '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera alternatywnego dopasowania tematu \"%s\"" -#: ../clients/cli/settings.c:2834 +#: ../clients/cli/settings.c:3028 msgid "" "Enter file path to client certificate (optionally prefixed with file://).\n" " [file://]<file path>\n" @@ -5114,7 +5240,7 @@ msgstr "" "danych typu blob.\n" "PrzykÅ‚ad: /home/cimrman/jara.crt\n" -#: ../clients/cli/settings.c:2846 +#: ../clients/cli/settings.c:3040 msgid "" "Enter file path to CA certificate for inner authentication (optionally " "prefixed\n" @@ -5130,13 +5256,13 @@ msgstr "" "danych typu blob.\n" "PrzykÅ‚ad: /home/cimrman/ca-zweite-phase.crt\n" -#: ../clients/cli/settings.c:2866 +#: ../clients/cli/settings.c:3060 #, c-format msgid "the property doesn't contain \"phase2\" alternative subject match '%s'" msgstr "" "wÅ‚aÅ›ciwość nie zawiera alternatywnego dopasowania tematu \"phase2\" \"%s\"" -#: ../clients/cli/settings.c:2882 +#: ../clients/cli/settings.c:3076 msgid "" "Enter file path to client certificate for inner authentication (optionally " "prefixed\n" @@ -5152,7 +5278,7 @@ msgstr "" "danych typu blob.\n" "PrzykÅ‚ad: /home/cimrman/jara-zweite-phase.crt\n" -#: ../clients/cli/settings.c:2902 +#: ../clients/cli/settings.c:3096 msgid "" "Enter path to a private key and the key password (if not set yet):\n" " [file://]<file path> [<password>]\n" @@ -5166,7 +5292,7 @@ msgstr "" "surowych danych typu blob.\n" "PrzykÅ‚ad: /home/cimrman/jara-priv-key Dardanely\n" -#: ../clients/cli/settings.c:2973 +#: ../clients/cli/settings.c:3167 msgid "" "Enter bytes as a list of hexadecimal values.\n" "Two formats are accepted:\n" @@ -5187,7 +5313,7 @@ msgstr "" "PrzykÅ‚ady: ab0455a6ea3a74C2\n" " ab 4 55 0xa6 ea 3a 74 C2\n" -#: ../clients/cli/settings.c:3076 +#: ../clients/cli/settings.c:3270 #, c-format msgid "" "Enter a list of bonding options formatted as:\n" @@ -5218,33 +5344,33 @@ msgstr "" "\n" "PrzykÅ‚ad: mode=2,miimon=120\n" -#: ../clients/cli/settings.c:3107 +#: ../clients/cli/settings.c:3301 #, c-format msgid "'%s' is not a valid InfiniBand MAC" msgstr "\"%s\" nie jest prawidÅ‚owym adresem MAC InfiniBand" -#: ../clients/cli/settings.c:3144 +#: ../clients/cli/settings.c:3338 #, c-format msgid "'%s' is not a valid IBoIP P_Key" msgstr "\"%s\" nie jest prawidÅ‚owym P_Key IBoIP" -#: ../clients/cli/settings.c:3175 +#: ../clients/cli/settings.c:3369 #, c-format msgid "'%s' is not valid (the format is: ip[/prefix] [next-hop] [metric])" msgstr "" "\"%s\" jest nieprawidÅ‚owe (format: ip[/przedrostek] [next-hop] [parametry])" -#: ../clients/cli/settings.c:3223 ../clients/cli/settings.c:3242 +#: ../clients/cli/settings.c:3417 ../clients/cli/settings.c:3436 #, c-format msgid "invalid IPv4 address '%s'" msgstr "nieprawidÅ‚owy adres IPv4 \"%s\"" -#: ../clients/cli/settings.c:3248 ../clients/cli/settings.c:3518 +#: ../clients/cli/settings.c:3442 ../clients/cli/settings.c:3712 #, c-format msgid "the property doesn't contain DNS server '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera serwera DNS \"%s\"" -#: ../clients/cli/settings.c:3260 +#: ../clients/cli/settings.c:3454 msgid "" "Enter a list of IPv4 addresses of DNS servers.\n" "\n" @@ -5254,17 +5380,17 @@ msgstr "" "\n" "PrzykÅ‚ad: 8.8.8.8, 8.8.4.4\n" -#: ../clients/cli/settings.c:3296 ../clients/cli/settings.c:3572 +#: ../clients/cli/settings.c:3490 ../clients/cli/settings.c:3766 #, c-format msgid "the property doesn't contain DNS search domain '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera domeny wyszukiwania DNS \"%s\"" -#: ../clients/cli/settings.c:3350 ../clients/cli/settings.c:3625 +#: ../clients/cli/settings.c:3544 ../clients/cli/settings.c:3819 #, c-format msgid "the property doesn't contain IP address '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera adresu IP \"%s\"" -#: ../clients/cli/settings.c:3363 +#: ../clients/cli/settings.c:3557 msgid "" "Enter a list of IPv4 addresses formatted as:\n" " ip[/prefix], ip[/prefix],...\n" @@ -5278,17 +5404,17 @@ msgstr "" "\n" "PrzykÅ‚ad: 192.168.1.5/24, 10.0.0.11/24\n" -#: ../clients/cli/settings.c:3379 ../clients/cli/settings.c:3654 +#: ../clients/cli/settings.c:3573 ../clients/cli/settings.c:3848 #, c-format msgid "invalid gateway address '%s'" msgstr "nieprawidÅ‚owy adres bramy \"%s\"" -#: ../clients/cli/settings.c:3434 ../clients/cli/settings.c:3709 +#: ../clients/cli/settings.c:3628 ../clients/cli/settings.c:3903 #, c-format msgid "the property doesn't contain route '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera trasy \"%s\"" -#: ../clients/cli/settings.c:3447 +#: ../clients/cli/settings.c:3641 msgid "" "Enter a list of IPv4 routes formatted as:\n" " ip[/prefix] [next-hop] [metric],...\n" @@ -5311,12 +5437,12 @@ msgstr "" "PrzykÅ‚ady: 192.168.2.0/24 192.168.2.1 3, 10.1.0.0/16 10.0.0.254\n" " 10.1.2.0/24\n" -#: ../clients/cli/settings.c:3493 ../clients/cli/settings.c:3512 +#: ../clients/cli/settings.c:3687 ../clients/cli/settings.c:3706 #, c-format msgid "invalid IPv6 address '%s'" msgstr "nieprawidÅ‚owy adres IPv6 \"%s\"" -#: ../clients/cli/settings.c:3530 +#: ../clients/cli/settings.c:3724 msgid "" "Enter a list of IPv6 addresses of DNS servers. If the IPv6 configuration " "method is 'auto' these DNS servers are appended to those (if any) returned " @@ -5337,7 +5463,7 @@ msgstr "" "\n" "PrzykÅ‚ad: 2607:f0d0:1002:51::4, 2607:f0d0:1002:51::1\n" -#: ../clients/cli/settings.c:3638 +#: ../clients/cli/settings.c:3832 msgid "" "Enter a list of IPv6 addresses formatted as:\n" " ip[/prefix], ip[/prefix],...\n" @@ -5351,7 +5477,7 @@ msgstr "" "\n" "PrzykÅ‚ad: 2607:f0d0:1002:51::4/64, 1050:0:0:0:5:600:300c:326b\n" -#: ../clients/cli/settings.c:3722 +#: ../clients/cli/settings.c:3916 msgid "" "Enter a list of IPv6 routes formatted as:\n" " ip[/prefix] [next-hop] [metric],...\n" @@ -5376,28 +5502,28 @@ msgstr "" "db8:beef::3 2\n" " abbe::/64 55\n" -#: ../clients/cli/settings.c:3739 ../libnm-core/nm-setting-gsm.c:308 +#: ../clients/cli/settings.c:3933 ../libnm-core/nm-setting-gsm.c:308 #: ../libnm-util/nm-setting-gsm.c:365 #, c-format msgid "'%s' is not a number" msgstr "\"%s\" nie jest liczbÄ…" -#: ../clients/cli/settings.c:3746 +#: ../clients/cli/settings.c:3940 #, c-format msgid "'%s' is not valid; use 0, 1, or 2" msgstr "\"%s\" jest nieprawidÅ‚owe; należy użyć 0, 1 lub 2" -#: ../clients/cli/settings.c:3763 +#: ../clients/cli/settings.c:3957 #, c-format msgid "'%s' is not a valid channel; use <1-13>" msgstr "\"%s\" nie jest prawidÅ‚owym kanaÅ‚em; należy użyć <1-13>" -#: ../clients/cli/settings.c:3800 +#: ../clients/cli/settings.c:3994 #, c-format msgid "'%s' is not valid; use [e, o, n]" msgstr "\"%s\" jest nieprawidÅ‚owe; należy użyć [e, o, n]" -#: ../clients/cli/settings.c:3828 +#: ../clients/cli/settings.c:4022 msgid "" "nmcli can accepts both direct JSON configuration data and a file name " "containing the configuration. In the latter case the file is read and the " @@ -5415,16 +5541,16 @@ msgstr "" "\"roundrobin\"}, \"ports\": {\"eth1\": {}, \"eth2\": {}} }\n" " set team.config /etc/mój-zespół.conf\n" -#: ../clients/cli/settings.c:3868 +#: ../clients/cli/settings.c:4062 msgid "no priority to remove" msgstr "brak priorytetu do usuniÄ™cia" -#: ../clients/cli/settings.c:3872 +#: ../clients/cli/settings.c:4066 #, c-format msgid "index '%d' is not in the range of <0-%d>" msgstr "indeks \"%d\" jest poza zakresem <0-%d>" -#: ../clients/cli/settings.c:3911 +#: ../clients/cli/settings.c:4105 #, c-format msgid "" "Warning: only one mapping at a time is supported; taking the first one (%s)\n" @@ -5432,33 +5558,31 @@ msgstr "" "Ostrzeżenie: obsÅ‚ugiwane jest tylko jedno mapowanie na raz; przyjmowanie " "pierwszego (%s)\n" -#: ../clients/cli/settings.c:3918 +#: ../clients/cli/settings.c:4112 #, c-format msgid "the property doesn't contain mapping '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera mapowania \"%s\"" -#: ../clients/cli/settings.c:4027 ../clients/cli/settings.c:4183 -#: ../libnm-core/nm-setting-wired.c:604 -#: ../libnm-core/nm-setting-wireless.c:785 -#: ../libnm-core/nm-setting-wireless.c:797 -#: ../libnm-util/nm-setting-wired.c:647 +#: ../clients/cli/settings.c:4221 ../clients/cli/settings.c:4377 +#: ../libnm-core/nm-setting-wired.c:646 ../libnm-core/nm-setting-wireless.c:784 +#: ../libnm-core/nm-setting-wireless.c:796 ../libnm-util/nm-setting-wired.c:647 #: ../libnm-util/nm-setting-wireless.c:842 #: ../libnm-util/nm-setting-wireless.c:856 #, c-format msgid "'%s' is not a valid MAC address" msgstr "\"%s\" nie jest prawidÅ‚owym adresem MAC" -#: ../clients/cli/settings.c:4033 ../clients/cli/settings.c:4189 +#: ../clients/cli/settings.c:4227 ../clients/cli/settings.c:4383 #, c-format msgid "the property doesn't contain MAC address '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera adresu MAC \"%s\"" -#: ../clients/cli/settings.c:4052 +#: ../clients/cli/settings.c:4246 #, c-format msgid "'%s' is not valid; 2 or 3 strings should be provided" msgstr "\"%s\" jest nieprawidÅ‚owe; powinny zostać podane dwa lub trzy ciÄ…gi" -#: ../clients/cli/settings.c:4066 +#: ../clients/cli/settings.c:4260 msgid "" "Enter a list of subchannels (comma or space separated).\n" "\n" @@ -5468,7 +5592,7 @@ msgstr "" "\n" "PrzykÅ‚ad: 0.0.0e20 0.0.0e21 0.0.0e22\n" -#: ../clients/cli/settings.c:4109 +#: ../clients/cli/settings.c:4303 #, c-format msgid "" "Enter a list of S/390 options formatted as:\n" @@ -5479,23 +5603,23 @@ msgstr "" " opcja = <wartość>, opcja = <wartość>,...\n" "PrawidÅ‚owe opcje: %s\n" -#: ../clients/cli/settings.c:4155 +#: ../clients/cli/settings.c:4349 #, c-format msgid "'%s' is not a valid channel" msgstr "\"%s\" nie jest prawidÅ‚owym kanaÅ‚em" -#: ../clients/cli/settings.c:4161 +#: ../clients/cli/settings.c:4355 #, c-format msgid "'%ld' is not a valid channel" msgstr "\"%ld\" nie jest prawidÅ‚owym kanaÅ‚em" -#: ../clients/cli/settings.c:4248 ../clients/cli/settings.c:4286 -#: ../clients/cli/settings.c:4324 +#: ../clients/cli/settings.c:4442 ../clients/cli/settings.c:4480 +#: ../clients/cli/settings.c:4518 #, c-format msgid "the property doesn't contain protocol '%s'" msgstr "wÅ‚aÅ›ciwość nie zawiera protokoÅ‚u \"%s\"" -#: ../clients/cli/settings.c:4363 +#: ../clients/cli/settings.c:4557 #, c-format msgid "" "'%s' not compatible with %s '%s', please change the key or set the right %s " @@ -5504,23 +5628,23 @@ msgstr "" "\"%s\" nie jest zgodne z %s \"%s\", proszÄ™ zmienić klucz lub ustawić " "najpierw wÅ‚aÅ›ciwe %s." -#: ../clients/cli/settings.c:4371 +#: ../clients/cli/settings.c:4565 #, c-format msgid "WEP key is guessed to be of '%s'\n" msgstr "Klucz WEP jest prawdopodobnie typu \"%s\"\n" -#: ../clients/cli/settings.c:4373 +#: ../clients/cli/settings.c:4567 #, c-format msgid "WEP key index set to '%d'\n" msgstr "Ustawiono indeks klucza WEP na \"%d\"\n" -#: ../clients/cli/settings.c:4396 +#: ../clients/cli/settings.c:4590 #, c-format msgid "'%s' not among [0 (unknown), 1 (key), 2 (passphrase)]" msgstr "\"%s\" nie jest jednym z [0 (unknown), 1 (key), 2 (passphrase)]" -#: ../clients/cli/settings.c:4412 ../clients/cli/settings.c:4415 -#: ../clients/cli/settings.c:4418 ../clients/cli/settings.c:4421 +#: ../clients/cli/settings.c:4606 ../clients/cli/settings.c:4609 +#: ../clients/cli/settings.c:4612 ../clients/cli/settings.c:4615 #, c-format msgid "" "Warning: '%s' is not compatible with '%s' type, please change or delete the " @@ -5529,7 +5653,7 @@ msgstr "" "Ostrzeżenie: \"%s\" nie jest zgodne z typem \"%s\", proszÄ™ zmienić lub " "usunąć klucz.\n" -#: ../clients/cli/settings.c:4434 +#: ../clients/cli/settings.c:4628 #, c-format msgid "" "Enter the type of WEP keys. The accepted values are: 0 or unknown, 1 or key, " @@ -5538,36 +5662,36 @@ msgstr "" "ProszÄ™ podać typ kluczy WEP. Możliwe wartoÅ›ci: 0 lub \"unknown\", 1 lub \"key" "\" i 2 lub \"passphrase\".\n" -#: ../clients/cli/settings.c:4447 +#: ../clients/cli/settings.c:4641 #, c-format msgid "'%s' is not a valid PSK" msgstr "\"%s\" nie jest prawidÅ‚owym PSK" -#: ../clients/cli/settings.c:4491 +#: ../clients/cli/settings.c:4685 #, c-format msgid "'%s' is not a valid DCB flag" msgstr "\"%s\" nie jest prawidÅ‚owÄ… flagÄ… DCB" -#: ../clients/cli/settings.c:4514 +#: ../clients/cli/settings.c:4708 #, c-format msgid "'%s' is not a DCB app priority" msgstr "\"%s\" nie jest prawidÅ‚owym priorytetem aplikacji DCB" -#: ../clients/cli/settings.c:4540 +#: ../clients/cli/settings.c:4734 msgid "must contain 8 comma-separated numbers" msgstr "musi zawierać osiem liczb oddzielonych przecinkami" -#: ../clients/cli/settings.c:4557 +#: ../clients/cli/settings.c:4751 #, c-format msgid "'%s' not a number between 0 and %u (inclusive) or %u" msgstr "\"%s\" nie jest liczbÄ… miÄ™dzy 0 a %u (włącznie) lub %u" -#: ../clients/cli/settings.c:4560 +#: ../clients/cli/settings.c:4754 #, c-format msgid "'%s' not a number between 0 and %u (inclusive)" msgstr "\"%s\" nie jest liczbÄ… miÄ™dzy 0 a %u (włącznie)" -#: ../clients/cli/settings.c:4582 +#: ../clients/cli/settings.c:4776 #, c-format msgid "" "Warning: changes will have no effect until '%s' includes 1 (enabled)\n" @@ -5577,33 +5701,33 @@ msgstr "" "(włączone)\n" "\n" -#: ../clients/cli/settings.c:4635 +#: ../clients/cli/settings.c:4829 #, c-format msgid "bandwidth percentages must total 100%%" msgstr "procenty szerokoÅ›ci pasma muszÄ… razem wynosić 100%%" -#: ../clients/cli/settings.c:6336 +#: ../clients/cli/settings.c:6551 msgid "don't know how to get the property value" msgstr "nie wiadomo, jak uzyskać wartość wÅ‚aÅ›ciwoÅ›ci" -#: ../clients/cli/settings.c:6389 ../clients/cli/settings.c:6429 +#: ../clients/cli/settings.c:6604 ../clients/cli/settings.c:6644 msgid "the property can't be changed" msgstr "nie można zmieniać tej wÅ‚aÅ›ciwoÅ›ci" -#: ../clients/cli/settings.c:6513 +#: ../clients/cli/settings.c:6728 msgid "(not available)" msgstr "(niedostÄ™pne)" -#: ../clients/cli/settings.c:6538 +#: ../clients/cli/settings.c:6753 msgid "[NM property description]" msgstr "[opis wÅ‚aÅ›ciwoÅ›ci NM]" -#: ../clients/cli/settings.c:6543 +#: ../clients/cli/settings.c:6758 msgid "[nmcli specific description]" msgstr "[konkretny opis nmcli]" #. ---------------------------------------------------------------------------- -#: ../clients/cli/settings.c:6592 +#: ../clients/cli/settings.c:6807 msgid "<hidden>" msgstr "<ukryte>" @@ -5632,47 +5756,55 @@ msgstr "Błąd podczas konwertowania adresu IPv4 \"0x%X\" na formÄ™ tekstowÄ…" msgid "Error converting IP6 address '%s' to text form" msgstr "Błąd podczas konwertowania adresu IPv6 \"%s\" na formÄ™ tekstowÄ…" -#: ../clients/cli/utils.c:410 +#. Translators: the first %s is the partial value entered by +#. * the user, the second %s a list of compatible values. +#. +#: ../clients/cli/utils.c:413 ../clients/cli/utils.c:444 #, c-format -msgid "'%s' is ambiguous (on x off)" -msgstr "\"%s\" jest niejednoznaczne (on x off)" +msgid "'%s' is ambiguous (%s)" +msgstr "\"%s\" jest niejednoznaczne (%s)" -#: ../clients/cli/utils.c:420 +#: ../clients/cli/utils.c:423 #, c-format msgid "'%s' is not valid; use [%s] or [%s]" -msgstr "\"%s\" jest nieprawidÅ‚owy; należy użyć [%s] lub [%s]" +msgstr "\"%s\" jest nieprawidÅ‚owe; należy użyć [%s] lub [%s]" + +#: ../clients/cli/utils.c:456 +#, c-format +msgid "'%s' is not valid; use [%s], [%s] or [%s]" +msgstr "\"%s\" jest nieprawidÅ‚owe; należy użyć [%s], [%s] lub [%s]" -#: ../clients/cli/utils.c:519 +#: ../clients/cli/utils.c:555 #, c-format msgid "'%s' is ambiguous (%s x %s)" msgstr "\"%s\" jest niejednoznaczne (%s x %s)" -#: ../clients/cli/utils.c:531 +#: ../clients/cli/utils.c:567 #, c-format msgid "missing name, try one of [%s]" msgstr "brak nazwy, należy spróbować jednej z [%s]" -#: ../clients/cli/utils.c:772 +#: ../clients/cli/utils.c:808 #, c-format msgid "field '%s' has to be alone" msgstr "pole \"%s\" musi być same" -#: ../clients/cli/utils.c:775 +#: ../clients/cli/utils.c:811 #, c-format msgid "invalid field '%s'; allowed fields: %s" msgstr "nieprawidÅ‚owe pole \"%s\"; dozwolone pola: %s" -#: ../clients/cli/utils.c:832 +#: ../clients/cli/utils.c:868 msgid "Option '--terse' requires specifying '--fields'" msgstr "Opcja \"--terse\" wymaga podania opcji \"--fields\"" -#: ../clients/cli/utils.c:836 +#: ../clients/cli/utils.c:872 #, c-format msgid "Option '--terse' requires specific '--fields' option values , not '%s'" msgstr "" "Opcja \"--terse\" wymaga konkretnej wartoÅ›ci opcji \"--fields\", nie \"%s\"" -#: ../clients/cli/utils.c:1154 +#: ../clients/cli/utils.c:1190 #, c-format msgid "" "Warning: nmcli (%s) and NetworkManager (%s) versions don't match. Use --" @@ -5681,7 +5813,7 @@ msgstr "" "Ostrzeżenie: wersje programu nmcli (%s) i usÅ‚ugi NetworkManager (%s) siÄ™ nie " "zgadzajÄ…. Użycie opcji --nocheck ukrywa ostrzeżenie.\n" -#: ../clients/cli/utils.c:1163 +#: ../clients/cli/utils.c:1199 #, c-format msgid "" "Error: nmcli (%s) and NetworkManager (%s) versions don't match. Force " @@ -5787,8 +5919,8 @@ msgstr "Wymagane jest hasÅ‚o, aby połączyć z \"%s\"." #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rÅÄ…czenie" +msgid "Connecting" +msgstr "ÅÄ…czenie" #: ../clients/nm-online.c:149 msgid "" @@ -5872,7 +6004,7 @@ msgid "InfiniBand connection %d" msgstr "Połączenie InfiniBand %d" #: ../clients/tui/nm-editor-utils.c:173 ../libnm-glib/nm-device.c:1799 -#: ../libnm/nm-device.c:1624 +#: ../libnm/nm-device.c:1644 msgid "Mobile Broadband" msgstr "Komórkowe" @@ -5890,9 +6022,9 @@ msgstr "DSL" msgid "DSL connection %d" msgstr "Połączenie DSL %d" -#: ../clients/tui/nm-editor-utils.c:191 ../libnm-core/nm-connection.c:1605 +#: ../clients/tui/nm-editor-utils.c:191 ../libnm-core/nm-connection.c:1606 #: ../libnm-glib/nm-device.c:1803 ../libnm-util/nm-connection.c:1608 -#: ../libnm/nm-device.c:1628 ../src/settings/plugins/ifcfg-rh/reader.c:3922 +#: ../libnm/nm-device.c:1648 ../src/settings/plugins/ifcfg-rh/reader.c:4059 msgid "Bond" msgstr "WiÄ…zane" @@ -5901,9 +6033,9 @@ msgstr "WiÄ…zane" msgid "Bond connection %d" msgstr "Połączenie wiÄ…zane %d" -#: ../clients/tui/nm-editor-utils.c:200 ../libnm-core/nm-connection.c:1609 +#: ../clients/tui/nm-editor-utils.c:200 ../libnm-core/nm-connection.c:1610 #: ../libnm-glib/nm-device.c:1807 ../libnm-util/nm-connection.c:1612 -#: ../libnm/nm-device.c:1632 ../src/settings/plugins/ifcfg-rh/reader.c:4213 +#: ../libnm/nm-device.c:1652 ../src/settings/plugins/ifcfg-rh/reader.c:4350 msgid "Bridge" msgstr "Mostek" @@ -5912,9 +6044,9 @@ msgstr "Mostek" msgid "Bridge connection %d" msgstr "Połączenie mostkowane %d" -#: ../clients/tui/nm-editor-utils.c:209 ../libnm-core/nm-connection.c:1607 +#: ../clients/tui/nm-editor-utils.c:209 ../libnm-core/nm-connection.c:1608 #: ../libnm-glib/nm-device.c:1805 ../libnm-util/nm-connection.c:1610 -#: ../libnm/nm-device.c:1630 ../src/settings/plugins/ifcfg-rh/reader.c:4028 +#: ../libnm/nm-device.c:1650 ../src/settings/plugins/ifcfg-rh/reader.c:4165 msgid "Team" msgstr "Zespół" @@ -6221,7 +6353,11 @@ msgstr "Trasowanie" msgid "Never use this network for default route" msgstr "Bez używania tej sieci jako domyÅ›lnej trasy" -#: ../clients/tui/nmt-page-ip4.c:184 +#: ../clients/tui/nmt-page-ip4.c:182 ../clients/tui/nmt-page-ip6.c:180 +msgid "Ignore automatically obtained routes" +msgstr "Ignorowanie automatycznie uzyskanych tras" + +#: ../clients/tui/nmt-page-ip4.c:190 msgid "Require IPv4 addressing for this connection" msgstr "Wymaganie adresowania IPv4 dla tego połączenia" @@ -6237,7 +6373,7 @@ msgstr "Automatyczne (tylko DHCP)" msgid "IPv6 CONFIGURATION" msgstr "KONFIGURACJA IPv6" -#: ../clients/tui/nmt-page-ip6.c:182 +#: ../clients/tui/nmt-page-ip6.c:188 msgid "Require IPv6 addressing for this connection" msgstr "Wymaganie adresowania IPv6 dla tego połączenia" @@ -6470,38 +6606,38 @@ msgstr "Dodaj..." msgid "Remove" msgstr "UsuÅ„" -#: ../clients/tui/nmtui-connect.c:90 +#: ../clients/tui/nmtui-connect.c:92 msgid "Activation failed" msgstr "Aktywacja siÄ™ nie powiodÅ‚a" -#: ../clients/tui/nmtui-connect.c:145 +#: ../clients/tui/nmtui-connect.c:147 msgid "Connecting..." msgstr "ÅÄ…czenie..." -#: ../clients/tui/nmtui-connect.c:180 ../clients/tui/nmtui-connect.c:211 +#: ../clients/tui/nmtui-connect.c:182 ../clients/tui/nmtui-connect.c:213 #, c-format msgid "Could not activate connection: %s" msgstr "Nie można aktywować połączenia: %s" -#: ../clients/tui/nmtui-connect.c:271 ../clients/tui/nmtui-connect.c:320 +#: ../clients/tui/nmtui-connect.c:273 ../clients/tui/nmtui-connect.c:322 msgid "Activate" msgstr "Aktywuj" -#: ../clients/tui/nmtui-connect.c:273 +#: ../clients/tui/nmtui-connect.c:275 msgid "Deactivate" -msgstr "Deaktywuj" +msgstr "Dezaktywuj" -#: ../clients/tui/nmtui-connect.c:325 ../clients/tui/nmtui-edit.c:121 +#: ../clients/tui/nmtui-connect.c:327 ../clients/tui/nmtui-edit.c:121 #: ../clients/tui/nmtui.c:111 msgid "Quit" msgstr "ZakoÅ„cz" -#: ../clients/tui/nmtui-connect.c:348 +#: ../clients/tui/nmtui-connect.c:350 #, c-format msgid "No such connection '%s'" msgstr "Brak połączenia \"%s\"" -#: ../clients/tui/nmtui-connect.c:350 +#: ../clients/tui/nmtui-connect.c:352 msgid "Connection is already active" msgstr "Połączenie jest już aktywne" @@ -6951,33 +7087,30 @@ msgstr "Znormalizowanie połączenia niespodziewanie siÄ™ nie powiodÅ‚o" #: ../libnm-core/nm-setting-8021x.c:2524 ../libnm-core/nm-setting-8021x.c:2548 #: ../libnm-core/nm-setting-8021x.c:2713 ../libnm-core/nm-setting-adsl.c:190 #: ../libnm-core/nm-setting-bluetooth.c:121 -#: ../libnm-core/nm-setting-bluetooth.c:139 -#: ../libnm-core/nm-setting-cdma.c:142 -#: ../libnm-core/nm-setting-connection.c:790 -#: ../libnm-core/nm-setting-connection.c:829 -#: ../libnm-core/nm-setting-connection.c:930 -#: ../libnm-core/nm-setting-ip-config.c:1841 -#: ../libnm-core/nm-setting-olpc-mesh.c:113 +#: ../libnm-core/nm-setting-bluetooth.c:139 ../libnm-core/nm-setting-cdma.c:142 +#: ../libnm-core/nm-setting-connection.c:809 +#: ../libnm-core/nm-setting-connection.c:848 +#: ../libnm-core/nm-setting-connection.c:961 +#: ../libnm-core/nm-setting-ip-config.c:1844 +#: ../libnm-core/nm-setting-olpc-mesh.c:112 #: ../libnm-core/nm-setting-pppoe.c:143 ../libnm-core/nm-setting-vpn.c:400 #: ../libnm-core/nm-setting-wimax.c:117 #: ../libnm-core/nm-setting-wireless-security.c:862 -#: ../libnm-core/nm-setting-wireless.c:694 ../libnm-util/nm-setting.c:1372 +#: ../libnm-core/nm-setting-wireless.c:693 ../libnm-util/nm-setting.c:1372 #: ../libnm-util/nm-setting.c:1391 ../libnm-util/nm-setting.c:1409 #: ../libnm-util/nm-setting-8021x.c:2326 ../libnm-util/nm-setting-8021x.c:2343 #: ../libnm-util/nm-setting-8021x.c:2384 ../libnm-util/nm-setting-8021x.c:2401 #: ../libnm-util/nm-setting-8021x.c:2453 ../libnm-util/nm-setting-8021x.c:2465 #: ../libnm-util/nm-setting-8021x.c:2483 ../libnm-util/nm-setting-8021x.c:2495 #: ../libnm-util/nm-setting-8021x.c:2519 ../libnm-util/nm-setting-8021x.c:2681 -#: ../libnm-util/nm-setting-adsl.c:210 -#: ../libnm-util/nm-setting-bluetooth.c:143 -#: ../libnm-util/nm-setting-bluetooth.c:161 -#: ../libnm-util/nm-setting-cdma.c:163 +#: ../libnm-util/nm-setting-adsl.c:210 ../libnm-util/nm-setting-bluetooth.c:143 +#: ../libnm-util/nm-setting-bluetooth.c:161 ../libnm-util/nm-setting-cdma.c:163 #: ../libnm-util/nm-setting-connection.c:769 #: ../libnm-util/nm-setting-connection.c:785 #: ../libnm-util/nm-setting-connection.c:846 #: ../libnm-util/nm-setting-ip4-config.c:852 #: ../libnm-util/nm-setting-ip6-config.c:835 -#: ../libnm-util/nm-setting-ip6-config.c:899 +#: ../libnm-util/nm-setting-ip6-config.c:898 #: ../libnm-util/nm-setting-olpc-mesh.c:124 #: ../libnm-util/nm-setting-pppoe.c:164 ../libnm-util/nm-setting-vpn.c:424 #: ../libnm-util/nm-setting-wimax.c:139 @@ -7058,7 +7191,7 @@ msgid "ignoring invalid DNS server IPv6 address '%s'" msgstr "ignorowanie nieprawidÅ‚owego adresu IPv6 serwera DNS \"%s\"" #: ../libnm-core/nm-keyfile-reader.c:611 ../libnm-core/nm-keyfile-reader.c:752 -#: ../libnm-core/nm-keyfile-reader.c:1411 +#: ../libnm-core/nm-keyfile-reader.c:1423 #, c-format msgid "ignoring invalid byte element '%d' (not between 0 and 255 inclusive)" msgstr "" @@ -7081,8 +7214,7 @@ msgstr "ignorowanie nieprawidÅ‚owego SSID" msgid "ignoring invalid raw password" msgstr "ignorowanie nieprawidÅ‚owego surowego hasÅ‚a" -#: ../libnm-core/nm-keyfile-reader.c:875 -#: ../libnm-core/nm-keyfile-reader.c:1041 +#: ../libnm-core/nm-keyfile-reader.c:875 ../libnm-core/nm-keyfile-reader.c:1041 #, c-format msgid "certificate or key file '%s' does not exist" msgstr "certyfikat lub plik klucza \"%s\" nie istnieje" @@ -7114,37 +7246,37 @@ msgstr "nieprawidÅ‚owa wartość klucz/certyfikat" msgid "invalid parity value '%s'" msgstr "nieprawidÅ‚owa wartość parzystoÅ›ci \"%s\"" -#: ../libnm-core/nm-keyfile-reader.c:1315 +#: ../libnm-core/nm-keyfile-reader.c:1324 #, c-format msgid "error loading setting value: %s" msgstr "błąd podczas wczytywania wartoÅ›ci ustawienia: %s" -#: ../libnm-core/nm-keyfile-reader.c:1344 +#: ../libnm-core/nm-keyfile-reader.c:1356 #, c-format msgid "invalid negative value (%i)" msgstr "nieprawidÅ‚owa wartość ujemna (%i)" -#: ../libnm-core/nm-keyfile-reader.c:1365 +#: ../libnm-core/nm-keyfile-reader.c:1377 #, c-format msgid "invalid char value (%i)" msgstr "nieprawidÅ‚owa wartość znaku (%i)" -#: ../libnm-core/nm-keyfile-reader.c:1388 +#: ../libnm-core/nm-keyfile-reader.c:1400 #, c-format msgid "invalid int64 value (%s)" msgstr "nieprawidÅ‚owa wartość int64 (%s)" -#: ../libnm-core/nm-keyfile-reader.c:1447 +#: ../libnm-core/nm-keyfile-reader.c:1459 #, c-format msgid "too large FLAGS property '%s' (%llu)" msgstr "za duża wÅ‚aÅ›ciwość FLAGS \"%s\" (%llu)" -#: ../libnm-core/nm-keyfile-reader.c:1460 +#: ../libnm-core/nm-keyfile-reader.c:1472 #, c-format msgid "unhandled setting property type '%s'" msgstr "nieobsÅ‚użony typ wÅ‚aÅ›ciwoÅ›ci ustawienia \"%s\"" -#: ../libnm-core/nm-keyfile-reader.c:1491 +#: ../libnm-core/nm-keyfile-reader.c:1503 #, c-format msgid "invalid setting name '%s'" msgstr "nieprawidÅ‚owa nazwa ustawienia \"%s\"" @@ -7193,10 +7325,9 @@ msgstr "nieprawidÅ‚owy klucz prywatny drugiego etapu" #: ../libnm-core/nm-setting-8021x.c:2518 ../libnm-core/nm-setting-8021x.c:2530 #: ../libnm-core/nm-setting-8021x.c:2555 ../libnm-core/nm-setting-adsl.c:197 #: ../libnm-core/nm-setting-cdma.c:158 -#: ../libnm-core/nm-setting-connection.c:797 -#: ../libnm-core/nm-setting-connection.c:840 -#: ../libnm-core/nm-setting-gsm.c:226 ../libnm-core/nm-setting-gsm.c:283 -#: ../libnm-core/nm-setting-ip-config.c:1848 +#: ../libnm-core/nm-setting-connection.c:816 +#: ../libnm-core/nm-setting-connection.c:859 ../libnm-core/nm-setting-gsm.c:226 +#: ../libnm-core/nm-setting-gsm.c:283 ../libnm-core/nm-setting-ip-config.c:1851 #: ../libnm-core/nm-setting-ip4-config.c:178 #: ../libnm-core/nm-setting-pppoe.c:150 ../libnm-core/nm-setting-pppoe.c:159 #: ../libnm-core/nm-setting-vpn.c:409 ../libnm-core/nm-setting-vpn.c:419 @@ -7210,9 +7341,8 @@ msgstr "nieprawidÅ‚owy klucz prywatny drugiego etapu" #: ../libnm-util/nm-setting-8021x.c:2526 ../libnm-util/nm-setting-adsl.c:217 #: ../libnm-util/nm-setting-cdma.c:179 #: ../libnm-util/nm-setting-connection.c:776 -#: ../libnm-util/nm-setting-connection.c:853 -#: ../libnm-util/nm-setting-gsm.c:283 ../libnm-util/nm-setting-gsm.c:340 -#: ../libnm-util/nm-setting-ip4-config.c:917 +#: ../libnm-util/nm-setting-connection.c:853 ../libnm-util/nm-setting-gsm.c:283 +#: ../libnm-util/nm-setting-gsm.c:340 ../libnm-util/nm-setting-ip4-config.c:917 #: ../libnm-util/nm-setting-ip4-config.c:926 #: ../libnm-util/nm-setting-pppoe.c:171 ../libnm-util/nm-setting-pppoe.c:180 #: ../libnm-util/nm-setting-vpn.c:433 ../libnm-util/nm-setting-vpn.c:443 @@ -7239,25 +7369,25 @@ msgstr "certyfikat jest nieprawidÅ‚owy: %s" #: ../libnm-core/nm-setting-infiniband.c:193 #: ../libnm-core/nm-setting-infiniband.c:208 #: ../libnm-core/nm-setting-ip4-config.c:169 -#: ../libnm-core/nm-setting-ip6-config.c:166 -#: ../libnm-core/nm-setting-olpc-mesh.c:142 -#: ../libnm-core/nm-setting-wimax.c:135 ../libnm-core/nm-setting-wired.c:618 -#: ../libnm-core/nm-setting-wired.c:628 +#: ../libnm-core/nm-setting-ip6-config.c:165 +#: ../libnm-core/nm-setting-olpc-mesh.c:141 +#: ../libnm-core/nm-setting-wimax.c:135 ../libnm-core/nm-setting-wired.c:660 +#: ../libnm-core/nm-setting-wired.c:670 #: ../libnm-core/nm-setting-wireless-security.c:935 #: ../libnm-core/nm-setting-wireless-security.c:944 #: ../libnm-core/nm-setting-wireless-security.c:953 #: ../libnm-core/nm-setting-wireless-security.c:989 #: ../libnm-core/nm-setting-wireless-security.c:999 -#: ../libnm-core/nm-setting-wireless.c:755 -#: ../libnm-core/nm-setting-wireless.c:764 -#: ../libnm-core/nm-setting-wireless.c:773 ../libnm-util/nm-setting.c:1382 +#: ../libnm-core/nm-setting-wireless.c:754 +#: ../libnm-core/nm-setting-wireless.c:763 +#: ../libnm-core/nm-setting-wireless.c:772 ../libnm-util/nm-setting.c:1382 #: ../libnm-util/nm-setting.c:1400 ../libnm-util/nm-setting.c:1419 #: ../libnm-util/nm-setting-8021x.c:2656 ../libnm-util/nm-setting-8021x.c:2690 #: ../libnm-util/nm-setting-bluetooth.c:152 #: ../libnm-util/nm-setting-infiniband.c:206 #: ../libnm-util/nm-setting-infiniband.c:222 #: ../libnm-util/nm-setting-ip4-config.c:908 -#: ../libnm-util/nm-setting-ip6-config.c:890 +#: ../libnm-util/nm-setting-ip6-config.c:889 #: ../libnm-util/nm-setting-olpc-mesh.c:152 #: ../libnm-util/nm-setting-wimax.c:157 ../libnm-util/nm-setting-wired.c:659 #: ../libnm-util/nm-setting-wired.c:668 @@ -7275,14 +7405,12 @@ msgstr "wÅ‚aÅ›ciwość jest nieprawidÅ‚owa" #: ../libnm-core/nm-setting-8021x.c:2747 ../libnm-core/nm-setting-8021x.c:2757 #: ../libnm-core/nm-setting-8021x.c:2767 ../libnm-core/nm-setting-8021x.c:2777 #: ../libnm-core/nm-setting-8021x.c:2787 ../libnm-core/nm-setting-adsl.c:209 -#: ../libnm-core/nm-setting-adsl.c:221 -#: ../libnm-core/nm-setting-bluetooth.c:147 +#: ../libnm-core/nm-setting-adsl.c:221 ../libnm-core/nm-setting-bluetooth.c:147 #: ../libnm-core/nm-setting-wireless-security.c:871 #: ../libnm-util/nm-setting-8021x.c:2715 ../libnm-util/nm-setting-8021x.c:2725 #: ../libnm-util/nm-setting-8021x.c:2735 ../libnm-util/nm-setting-8021x.c:2745 #: ../libnm-util/nm-setting-8021x.c:2755 ../libnm-util/nm-setting-adsl.c:229 -#: ../libnm-util/nm-setting-adsl.c:241 -#: ../libnm-util/nm-setting-bluetooth.c:169 +#: ../libnm-util/nm-setting-adsl.c:241 ../libnm-util/nm-setting-bluetooth.c:169 #: ../libnm-util/nm-setting-wireless-security.c:901 #, c-format msgid "'%s' is not a valid value for the property" @@ -7391,55 +7519,57 @@ msgstr "" msgid "value '%d' is out of range <%d-%d>" msgstr "wartość \"%d\" jest poza zakresem <%d-%d>" -#: ../libnm-core/nm-setting-bridge.c:227 ../libnm-core/nm-setting-wired.c:592 -#: ../libnm-core/nm-setting-wired.c:652 ../libnm-util/nm-setting-bridge.c:287 -#: ../libnm-util/nm-setting-wired.c:634 ../libnm-util/nm-setting-wired.c:692 +#: ../libnm-core/nm-setting-bridge.c:227 ../libnm-core/nm-setting-wired.c:634 +#: ../libnm-core/nm-setting-wired.c:694 ../libnm-core/nm-setting-wired.c:722 +#: ../libnm-util/nm-setting-bridge.c:287 ../libnm-util/nm-setting-wired.c:634 +#: ../libnm-util/nm-setting-wired.c:692 msgid "is not a valid MAC address" msgstr "nie jest prawidÅ‚owym adresem MAC" -#: ../libnm-core/nm-setting-cdma.c:149 ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "wÅ‚aÅ›ciwość jest pusta\"" - -#: ../libnm-core/nm-setting-connection.c:769 +#: ../libnm-core/nm-setting-connection.c:788 #, c-format msgid "setting required for connection of type '%s'" msgstr "wymagane jest ustawienie dla połączenia typu \"%s\"." -#: ../libnm-core/nm-setting-connection.c:850 +#: ../libnm-core/nm-setting-connection.c:869 #, c-format msgid "connection type '%s' is not valid" msgstr "typ połączenia \"%s\" jest nieprawidÅ‚owy" -#: ../libnm-core/nm-setting-connection.c:885 +#: ../libnm-core/nm-setting-connection.c:904 #: ../libnm-util/nm-setting-connection.c:878 #, c-format msgid "Unknown slave type '%s'" msgstr "Nieznany typ podrzÄ™dny \"%s\"" -#: ../libnm-core/nm-setting-connection.c:895 +#: ../libnm-core/nm-setting-connection.c:914 #: ../libnm-util/nm-setting-connection.c:888 #, c-format msgid "Slave connections need a valid '%s' property" msgstr "Połączenia podrzÄ™dne wymagajÄ… prawidÅ‚owej wÅ‚aÅ›ciwoÅ›ci \"%s\"" -#: ../libnm-core/nm-setting-connection.c:916 +#: ../libnm-core/nm-setting-connection.c:935 #: ../libnm-util/nm-setting-connection.c:898 #, c-format msgid "Cannot set '%s' without '%s'" msgstr "Nie można ustawić \"%s\" bez \"%s\"" -#: ../libnm-core/nm-setting-connection.c:939 +#: ../libnm-core/nm-setting-connection.c:949 +#, c-format +msgid "metered value %d is not valid" +msgstr "mierzona wartość %d jest nieprawidÅ‚owa" + +#: ../libnm-core/nm-setting-connection.c:970 #, c-format msgid "property type should be set to '%s'" msgstr "typ wÅ‚aÅ›ciwoÅ›ci powinien zostać ustawiony na \"%s\"" -#: ../libnm-core/nm-setting-connection.c:954 +#: ../libnm-core/nm-setting-connection.c:985 #, c-format msgid "slave-type '%s' requires a '%s' setting in the connection" msgstr "slave-type \"%s\" wymaga ustawienia \"%s\" w połączeniu" -#: ../libnm-core/nm-setting-connection.c:964 +#: ../libnm-core/nm-setting-connection.c:995 #, c-format msgid "" "Detect a slave connection with '%s' set and a port type '%s'. '%s' should be " @@ -7524,65 +7654,75 @@ msgid "mtu for transport mode '%s' can be at most %d but it is %d" msgstr "" "MTU dla trybu przesyÅ‚ania \"%s\" może wynosić co najwyżej %d, ale wynosi %d" -#: ../libnm-core/nm-setting-ip-config.c:79 +#: ../libnm-core/nm-setting-ip-config.c:77 +#, c-format +msgid "Missing IPv4 address" +msgstr "Brak adresu IPv4" + +#: ../libnm-core/nm-setting-ip-config.c:77 +#, c-format +msgid "Missing IPv6 address" +msgstr "Brak adresu IPv6" + +#: ../libnm-core/nm-setting-ip-config.c:82 #, c-format msgid "Invalid IPv4 address '%s'" msgstr "NieprawidÅ‚owy adres IPv4 \"%s\"" -#: ../libnm-core/nm-setting-ip-config.c:79 +#: ../libnm-core/nm-setting-ip-config.c:82 #, c-format msgid "Invalid IPv6 address '%s" msgstr "NieprawidÅ‚owy adres IPv6 \"%s\"" -#: ../libnm-core/nm-setting-ip-config.c:93 +#: ../libnm-core/nm-setting-ip-config.c:96 #, c-format msgid "Invalid IPv4 address prefix '%u'" msgstr "NieprawidÅ‚owy przedrostek adresu IPv4 \"%u\"" -#: ../libnm-core/nm-setting-ip-config.c:93 +#: ../libnm-core/nm-setting-ip-config.c:96 #, c-format msgid "Invalid IPv6 address prefix '%u" msgstr "NieprawidÅ‚owy przedrostek adresu IPv6 \"%u\"" -#: ../libnm-core/nm-setting-ip-config.c:111 +#: ../libnm-core/nm-setting-ip-config.c:114 #, c-format msgid "Invalid routing metric '%s'" msgstr "NieprawidÅ‚owe parametry trasy \"%s\"" -#: ../libnm-core/nm-setting-ip-config.c:1861 +#: ../libnm-core/nm-setting-ip-config.c:1864 #, c-format msgid "%d. DNS server address is invalid" msgstr "%d. adres serwera DNS jest nieprawidÅ‚owy" -#: ../libnm-core/nm-setting-ip-config.c:1877 +#: ../libnm-core/nm-setting-ip-config.c:1880 #, c-format msgid "%d. IP address is invalid" msgstr "%d. adres IP jest nieprawidÅ‚owy" -#: ../libnm-core/nm-setting-ip-config.c:1889 +#: ../libnm-core/nm-setting-ip-config.c:1892 #, c-format msgid "%d. IP address has 'label' property with invalid type" msgstr "%d. adres IP posiada wÅ‚aÅ›ciwość \"label\" z nieprawidÅ‚owym typem" -#: ../libnm-core/nm-setting-ip-config.c:1898 +#: ../libnm-core/nm-setting-ip-config.c:1901 #, c-format msgid "%d. IP address has invalid label '%s'" msgstr "%d. adres IP posiada nieprawidÅ‚owÄ… etykietÄ™ \"%s\"" -#: ../libnm-core/nm-setting-ip-config.c:1912 +#: ../libnm-core/nm-setting-ip-config.c:1915 msgid "gateway cannot be set if there are no addresses configured" msgstr "brama nie może być ustawiona, jeÅ›li nie skonfigurowano żadnych adresów" -#: ../libnm-core/nm-setting-ip-config.c:1921 +#: ../libnm-core/nm-setting-ip-config.c:1924 msgid "gateway is invalid" msgstr "brama jest nieprawidÅ‚owa" -#: ../libnm-core/nm-setting-ip-config.c:1935 +#: ../libnm-core/nm-setting-ip-config.c:1938 #, c-format msgid "%d. route is invalid" msgstr "%d. trasa jest nieprawidÅ‚owa" -#: ../libnm-core/nm-setting-ip-config.c:1944 +#: ../libnm-core/nm-setting-ip-config.c:1947 #, c-format msgid "%d. route cannot be a default route" msgstr "%d trasa nie może być domyÅ›lnÄ… trasÄ…" @@ -7598,34 +7738,28 @@ msgstr "ta wÅ‚aÅ›ciwość nie może być pusta dla \"%s=%s\"" #: ../libnm-core/nm-setting-ip4-config.c:135 #: ../libnm-core/nm-setting-ip4-config.c:145 #: ../libnm-core/nm-setting-ip4-config.c:157 -#: ../libnm-core/nm-setting-ip6-config.c:134 -#: ../libnm-core/nm-setting-ip6-config.c:144 -#: ../libnm-core/nm-setting-ip6-config.c:154 +#: ../libnm-core/nm-setting-ip6-config.c:133 +#: ../libnm-core/nm-setting-ip6-config.c:143 +#: ../libnm-core/nm-setting-ip6-config.c:153 #: ../libnm-util/nm-setting-ip4-config.c:874 #: ../libnm-util/nm-setting-ip4-config.c:884 #: ../libnm-util/nm-setting-ip4-config.c:896 -#: ../libnm-util/nm-setting-ip6-config.c:858 -#: ../libnm-util/nm-setting-ip6-config.c:868 -#: ../libnm-util/nm-setting-ip6-config.c:878 +#: ../libnm-util/nm-setting-ip6-config.c:857 +#: ../libnm-util/nm-setting-ip6-config.c:867 +#: ../libnm-util/nm-setting-ip6-config.c:877 #, c-format msgid "this property is not allowed for '%s=%s'" msgstr "ta wÅ‚aÅ›ciwość nie jest dozwolona dla \"%s=%s\"" -#: ../libnm-core/nm-setting-ip6-config.c:133 -#: ../libnm-util/nm-setting-ip6-config.c:857 -#, c-format -msgid "'%s' not allowed for %s=%s" -msgstr "\"%s\" nie jest dozwolone dla %s=%s" - -#: ../libnm-core/nm-setting-olpc-mesh.c:123 -#: ../libnm-core/nm-setting-wireless.c:704 +#: ../libnm-core/nm-setting-olpc-mesh.c:122 +#: ../libnm-core/nm-setting-wireless.c:703 #: ../libnm-util/nm-setting-olpc-mesh.c:133 #: ../libnm-util/nm-setting-wireless.c:761 msgid "SSID length is out of range <1-32> bytes" msgstr "dÅ‚ugość SSID jest poza zakresem <1-32> bajtów" -#: ../libnm-core/nm-setting-olpc-mesh.c:132 -#: ../libnm-core/nm-setting-wireless.c:744 +#: ../libnm-core/nm-setting-olpc-mesh.c:131 +#: ../libnm-core/nm-setting-wireless.c:743 #: ../libnm-util/nm-setting-olpc-mesh.c:142 #: ../libnm-util/nm-setting-wireless.c:801 #, c-format @@ -7692,21 +7826,33 @@ msgstr "przekonwertowanie wartoÅ›ci \"%s\" na uint siÄ™ nie powiodÅ‚o" msgid "secret flags property not found" msgstr "nie odnaleziono wÅ‚aÅ›ciwoÅ›ci flag hasÅ‚a" -#: ../libnm-core/nm-setting-wired.c:572 ../libnm-util/nm-setting-wired.c:614 +#: ../libnm-core/nm-setting-wired.c:614 ../libnm-util/nm-setting-wired.c:614 #, c-format msgid "'%s' is not a valid Ethernet port value" msgstr "\"%s\" nie jest prawidÅ‚owÄ… wartoÅ›ciÄ… portu Ethernet" -#: ../libnm-core/nm-setting-wired.c:582 ../libnm-util/nm-setting-wired.c:624 +#: ../libnm-core/nm-setting-wired.c:624 ../libnm-util/nm-setting-wired.c:624 #, c-format msgid "'%s' is not a valid duplex value" msgstr "\"%s\" nie jest prawidÅ‚owÄ… wartoÅ›ciÄ… dupleksu" -#: ../libnm-core/nm-setting-wired.c:641 ../libnm-util/nm-setting-wired.c:681 +#: ../libnm-core/nm-setting-wired.c:683 ../libnm-util/nm-setting-wired.c:681 #, c-format msgid "invalid '%s' or its value '%s'" msgstr "nieprawidÅ‚owe \"%s\" lub jego wartość \"%s\"" +#: ../libnm-core/nm-setting-wired.c:704 +msgid "Wake-on-LAN mode 'default' and 'ignore' are exclusive flags" +msgstr "" +"Tryby \"Wake-on-LAN\" \"default\" i \"ignore\" sÄ… wzajemnie siÄ™ " +"wykluczajÄ…cymi flagami" + +#: ../libnm-core/nm-setting-wired.c:713 +msgid "Wake-on-LAN password can only be used with magic packet mode" +msgstr "" +"HasÅ‚o \"Wake-on-LAN\" może być używane tylko za pomocÄ… trybu magicznego " +"pakietu" + #: ../libnm-core/nm-setting-wireless-security.c:883 #: ../libnm-util/nm-setting-wireless-security.c:913 #, c-format @@ -7737,19 +7883,19 @@ msgstr "połączenia \"%s\" wymagajÄ… \"%s\" w tej wÅ‚aÅ›ciwoÅ›ci" msgid "'%s' can only be used with '%s=%s' (WEP)" msgstr "\"%s\" może być używane tylko z \"%s=%s\" (WEP)" -#: ../libnm-core/nm-setting-wireless.c:713 +#: ../libnm-core/nm-setting-wireless.c:712 #: ../libnm-util/nm-setting-wireless.c:770 #, c-format msgid "'%s' is not a valid Wi-Fi mode" msgstr "\"%s\" nie jest prawidÅ‚owym trybem Wi-Fi" -#: ../libnm-core/nm-setting-wireless.c:723 +#: ../libnm-core/nm-setting-wireless.c:722 #: ../libnm-util/nm-setting-wireless.c:780 #, c-format msgid "'%s' is not a valid band" msgstr "\"%s\" nie jest prawidÅ‚owym pasmem" -#: ../libnm-core/nm-setting-wireless.c:733 +#: ../libnm-core/nm-setting-wireless.c:732 #, c-format msgid "'%s' requires setting '%s' property" msgstr "\"%s\" wymaga ustawienia wÅ‚aÅ›ciwoÅ›ci \"%s\"" @@ -7767,28 +7913,24 @@ msgstr "nie odnaleziono hasÅ‚a" msgid "secret is not set" msgstr "nie ustawiono hasÅ‚a" -#: ../libnm-core/nm-utils.c:2465 ../libnm-util/nm-utils.c:1813 +#: ../libnm-core/nm-utils.c:2480 ../libnm-util/nm-utils.c:1828 #, c-format msgid "Could not find \"%s\" binary" msgstr "Nie można odnaleźć pliku binarnego \"%s\"" -#: ../libnm-glib/nm-device.c:1793 ../libnm/nm-device.c:1618 +#: ../libnm-glib/nm-device.c:1793 ../libnm/nm-device.c:1638 msgid "Bluetooth" msgstr "Bluetooth" -#: ../libnm-glib/nm-device.c:1811 ../libnm/nm-device.c:1636 -msgid "ADSL" -msgstr "ADSL" - -#: ../libnm-glib/nm-device.c:1839 ../libnm/nm-device.c:1664 +#: ../libnm-glib/nm-device.c:1839 ../libnm/nm-device.c:1684 msgid "Wired" msgstr "Przewodowe" -#: ../libnm-glib/nm-device.c:1870 ../libnm/nm-device.c:1695 +#: ../libnm-glib/nm-device.c:1870 ../libnm/nm-device.c:1715 msgid "PCI" msgstr "PCI" -#: ../libnm-glib/nm-device.c:1872 ../libnm/nm-device.c:1697 +#: ../libnm-glib/nm-device.c:1872 ../libnm/nm-device.c:1717 msgid "USB" msgstr "USB" @@ -7799,7 +7941,7 @@ msgstr "USB" #. * the strings otherwise. #. #: ../libnm-glib/nm-device.c:1968 ../libnm-glib/nm-device.c:1987 -#: ../libnm/nm-device.c:1791 ../libnm/nm-device.c:1810 +#: ../libnm/nm-device.c:1811 ../libnm/nm-device.c:1830 #, c-format msgctxt "long device name" msgid "%s %s" @@ -7845,17 +7987,17 @@ msgid "%d. IPv4 address has invalid prefix" msgstr "%d. adres IPv4 posiada nieprawidÅ‚owy przedrostek" #: ../libnm-util/nm-setting-ip4-config.c:966 -#: ../libnm-util/nm-setting-ip6-config.c:939 +#: ../libnm-util/nm-setting-ip6-config.c:938 #, c-format msgid "%d. route has invalid prefix" msgstr "%d. trasa posiada nieprawidÅ‚owy przedrostek" -#: ../libnm-util/nm-setting-ip6-config.c:913 +#: ../libnm-util/nm-setting-ip6-config.c:912 #, c-format msgid "%d. IPv6 address is invalid" msgstr "%d. adres IPv6 jest nieprawidÅ‚owy" -#: ../libnm-util/nm-setting-ip6-config.c:923 +#: ../libnm-util/nm-setting-ip6-config.c:922 #, c-format msgid "%d. IPv6 address has invalid prefix" msgstr "%d. adres IPv6 posiada nieprawidÅ‚owy przedrostek" @@ -7911,12 +8053,12 @@ msgid "The connection was not an Ethernet or PPPoE connection." msgstr "Połączenie nie byÅ‚o połączeniem ethernetowym ani PPPoE." #: ../libnm/nm-device-ethernet.c:154 ../libnm/nm-device-infiniband.c:105 -#: ../libnm/nm-device-wifi.c:492 ../libnm/nm-device-wimax.c:311 +#: ../libnm/nm-device-wifi.c:598 ../libnm/nm-device-wimax.c:311 msgid "Invalid device MAC address." msgstr "NieprawidÅ‚owy adres MAC urzÄ…dzenia." #: ../libnm/nm-device-ethernet.c:160 ../libnm/nm-device-infiniband.c:113 -#: ../libnm/nm-device-wifi.c:499 ../libnm/nm-device-wimax.c:318 +#: ../libnm/nm-device-wifi.c:605 ../libnm/nm-device-wimax.c:318 msgid "The MACs of the device and the connection didn't match." msgstr "Adresy MAC urzÄ…dzenia i połączenia siÄ™ nie zgadzajÄ…." @@ -7964,15 +8106,15 @@ msgstr "Identyfikatory VLAN urzÄ…dzenia i połączenia siÄ™ nie zgadzajÄ…." msgid "The hardware address of the device and the connection didn't match." msgstr "Adres sprzÄ™towy urzÄ…dzenia i połączenia siÄ™ nie zgadza." -#: ../libnm/nm-device-wifi.c:483 +#: ../libnm/nm-device-wifi.c:589 msgid "The connection was not a Wi-Fi connection." msgstr "Połączenie nie jest połączeniem Wi-Fi." -#: ../libnm/nm-device-wifi.c:519 +#: ../libnm/nm-device-wifi.c:625 msgid "The device is lacking WPA capabilities required by the connection." msgstr "UrzÄ…dzenie nie posiada możliwoÅ›ci WPA wymaganych przez połączenie." -#: ../libnm/nm-device-wifi.c:526 +#: ../libnm/nm-device-wifi.c:632 msgid "The device is lacking WPA2/RSN capabilities required by the connection." msgstr "" "UrzÄ…dzenie nie posiada możliwoÅ›ci WPA2/RSN wymaganych przez połączenie." @@ -7981,21 +8123,21 @@ msgstr "" msgid "The connection was not a WiMAX connection." msgstr "Połączenie nie jest połączeniem WiMAX." -#: ../libnm/nm-device.c:2136 +#: ../libnm/nm-device.c:2174 #, c-format msgid "The connection was not valid: %s" msgstr "Połączenie jest nieprawidÅ‚owe: %s" -#: ../libnm/nm-device.c:2145 +#: ../libnm/nm-device.c:2183 #, c-format msgid "The interface names of the device and the connection didn't match." msgstr "Nazwy interfejsu urzÄ…dzenia i połączenia siÄ™ nie zgadzajÄ…." -#: ../libnm/nm-manager.c:858 +#: ../libnm/nm-manager.c:861 msgid "Active connection could not be attached to the device" msgstr "Nie można podłączyć aktywnego połączenia do urzÄ…dzenia" -#: ../libnm/nm-manager.c:1082 +#: ../libnm/nm-manager.c:1085 msgid "Active connection removed before it was initialized" msgstr "UsuniÄ™to aktywne połączenie przed jego inicjacjÄ…" @@ -8007,7 +8149,7 @@ msgstr "DzwoniÄ…cy nie podaÅ‚ Å›cieżki D-Bus do obiektu" msgid "Connection removed before it was initialized" msgstr "UsuniÄ™to połączenie przed jego zainicjowaniem" -#: ../libnm/nm-vpn-plugin-old.c:885 +#: ../libnm/nm-vpn-plugin-old.c:892 msgid "No service name specified" msgstr "Nie podano nazwy usÅ‚ugi" @@ -8128,30 +8270,30 @@ msgid "%s %d" msgstr "%s %d" #. Logging/debugging -#: ../src/main.c:235 ../src/nm-iface-helper.c:299 +#: ../src/main.c:235 ../src/nm-iface-helper.c:300 msgid "Print NetworkManager version and exit" msgstr "WyÅ›wietla wersjÄ™ usÅ‚ugi NetworkManager i koÅ„czy dziaÅ‚anie" -#: ../src/main.c:236 ../src/nm-iface-helper.c:300 +#: ../src/main.c:236 ../src/nm-iface-helper.c:301 msgid "Don't become a daemon" msgstr "Bez zmiany w usÅ‚ugÄ™" -#: ../src/main.c:237 ../src/nm-iface-helper.c:301 +#: ../src/main.c:237 ../src/nm-iface-helper.c:302 msgid "Don't become a daemon, and log to stderr" msgstr "" "Bez zmiany w usÅ‚ugÄ™ i zapisywanie dziennika do standardowego wyjÅ›cia błędów" -#: ../src/main.c:238 ../src/nm-iface-helper.c:302 +#: ../src/main.c:238 ../src/nm-iface-helper.c:303 #, c-format msgid "Log level: one of [%s]" msgstr "Poziom dziennika: jeden z [%s]" -#: ../src/main.c:240 ../src/nm-iface-helper.c:304 +#: ../src/main.c:240 ../src/nm-iface-helper.c:305 #, c-format msgid "Log domains separated by ',': any combination of [%s]" msgstr "Domeny dziennika oddzielone przez \",\": dowolne połączenie [%s]" -#: ../src/main.c:242 ../src/nm-iface-helper.c:306 +#: ../src/main.c:242 ../src/nm-iface-helper.c:307 msgid "Make all warnings fatal" msgstr "Wszystkie ostrzeżenia jako krytyczne" @@ -8163,7 +8305,7 @@ msgstr "Podaje poÅ‚ożenie pliku PID" msgid "State file location" msgstr "PoÅ‚ożenie pliku stanu" -#: ../src/main.c:256 +#: ../src/main.c:255 msgid "" "NetworkManager monitors all network connections and automatically\n" "chooses the best connection to use. It also allows the user to\n" @@ -8175,35 +8317,35 @@ msgstr "" "wybranie bezprzewodowych punktów dostÄ™powych, z którymi karty\n" "sieciowe w komputerze powinny być powiÄ…zane." -#: ../src/main.c:346 ../src/main-utils.c:246 ../src/nm-iface-helper.c:383 +#: ../src/main.c:345 ../src/main-utils.c:246 ../src/nm-iface-helper.c:384 #, c-format msgid "%s. Please use --help to see a list of valid options.\n" msgstr "%s. Parametr --help wyÅ›wietli listÄ™ prawidÅ‚owych opcji.\n" -#: ../src/main.c:351 ../src/nm-iface-helper.c:388 +#: ../src/main.c:350 ../src/nm-iface-helper.c:389 #, c-format msgid "Ignoring unrecognized log domain(s) '%s' passed on command line.\n" msgstr "" "Ignorowanie nierozpoznanych domen dziennika \"%s\" przekazanych w wierszu " "poleceÅ„.\n" -#: ../src/main.c:361 +#: ../src/main.c:360 #, c-format msgid "Failed to read configuration: (%d) %s\n" msgstr "Odczytanie konfiguracji siÄ™ nie powiodÅ‚o: (%d) %s\n" -#: ../src/main.c:377 +#: ../src/main.c:376 #, c-format msgid "Error in configuration file: %s.\n" msgstr "Błąd w pliku konfiguracji: %s.\n" -#: ../src/main.c:382 +#: ../src/main.c:381 #, c-format msgid "Ignoring unrecognized log domain(s) '%s' from config files.\n" msgstr "" "Ignorowanie nierozpoznanych domen dziennika \"%s\" z plików konfiguracji.\n" -#: ../src/main.c:393 ../src/nm-iface-helper.c:398 +#: ../src/main.c:392 ../src/nm-iface-helper.c:399 #, c-format msgid "Could not daemonize: %s [error %u]\n" msgstr "Nie można zmienić w usÅ‚ugÄ™: %s [błąd %u]\n" @@ -8272,7 +8414,7 @@ msgstr "Poniższe serwery nazw nie mogÄ… nie zostać rozpoznane." msgid "ADSL connection" msgstr "Połączenie ADSL" -#: ../src/devices/bluetooth/nm-bluez-device.c:200 +#: ../src/devices/bluetooth/nm-bluez-device.c:201 #, c-format msgid "%s Network" msgstr "Sieć %s" @@ -8312,9 +8454,9 @@ msgid "Unknown/unhandled Bluetooth connection type" msgstr "Nieznany/nieobsÅ‚ugiwany typ połączenia Bluetooth" #: ../src/devices/bluetooth/nm-device-bt.c:337 -#: ../src/devices/nm-device-ethernet.c:1376 +#: ../src/devices/nm-device-ethernet.c:1446 #: ../src/devices/nm-device-infiniband.c:204 -#: ../src/devices/wifi/nm-device-wifi.c:1115 +#: ../src/devices/wifi/nm-device-wifi.c:1112 #: ../src/devices/wimax/nm-device-wimax.c:454 msgid "connection does not match device" msgstr "połączenie nie pasuje do urzÄ…dzenia" @@ -8327,11 +8469,11 @@ msgstr "Połączenie wiÄ…zane" msgid "Bridge connection" msgstr "Połączenie mostkowane" -#: ../src/devices/nm-device-ethernet.c:1357 +#: ../src/devices/nm-device-ethernet.c:1427 msgid "PPPoE connection" msgstr "Połączenie PPPoE" -#: ../src/devices/nm-device-ethernet.c:1357 +#: ../src/devices/nm-device-ethernet.c:1427 msgid "Wired connection" msgstr "Połączenie przewodowe" @@ -8344,11 +8486,11 @@ msgstr "Połączenie przewodowe %d" msgid "InfiniBand connection" msgstr "Połączenie InfiniBand" -#: ../src/devices/nm-device-vlan.c:306 +#: ../src/devices/nm-device-vlan.c:339 msgid "VLAN connection" msgstr "Połączenie VLAN" -#: ../src/devices/team/nm-device-team.c:133 +#: ../src/devices/team/nm-device-team.c:134 msgid "Team connection" msgstr "Połączenie zespoÅ‚owe" @@ -8356,7 +8498,7 @@ msgstr "Połączenie zespoÅ‚owe" msgid "Mesh" msgstr "Sieć kratowa" -#: ../src/devices/wifi/nm-device-wifi.c:1083 +#: ../src/devices/wifi/nm-device-wifi.c:1080 msgid "WPA Ad-Hoc disabled due to kernel bugs" msgstr "Wyłączono WPA Ad-Hoc z powodu błędów jÄ…dra" @@ -8434,7 +8576,7 @@ msgstr "WPA-PSK wymaga uwierzytelnienia \"open\"" #: ../src/devices/wifi/nm-wifi-ap-utils.c:336 msgid "WPA Ad-Hoc authentication requires an Ad-Hoc mode AP" -msgstr "Uwierzytelnianie WPA Ad-Hoc wymaga AP w trybie Ad-Hoc" +msgstr "Uwierzytelnianie WPA Ad-Hoc wymaga punktu dostÄ™powego w trybie Ad-Hoc" #: ../src/devices/wifi/nm-wifi-ap-utils.c:349 msgid "WPA Ad-Hoc authentication requires 'wpa' protocol" @@ -8521,7 +8663,8 @@ msgstr "" #: ../src/devices/wifi/nm-wifi-ap-utils.c:760 msgid "Failed to determine AP security information" -msgstr "Ustalenie informacji o zabezpieczeniach AP siÄ™ nie powiodÅ‚o" +msgstr "" +"Ustalenie informacji o zabezpieczeniach punktu dostÄ™powego siÄ™ nie powiodÅ‚o" #: ../src/devices/wwan/nm-modem-broadband.c:527 msgid "GSM mobile broadband connection requires a 'gsm' setting" @@ -8561,75 +8704,75 @@ msgid "The expected start of the response" msgstr "Oczekiwany poczÄ…tek odpowiedzi" #. Interface/IP config -#: ../src/nm-iface-helper.c:285 +#: ../src/nm-iface-helper.c:286 msgid "The interface to manage" msgstr "Interfejs do zarzÄ…dzania" -#: ../src/nm-iface-helper.c:285 +#: ../src/nm-iface-helper.c:286 msgid "eth0" msgstr "eth0" -#: ../src/nm-iface-helper.c:286 +#: ../src/nm-iface-helper.c:287 msgid "Connection UUID" msgstr "UUID połączenia" -#: ../src/nm-iface-helper.c:286 +#: ../src/nm-iface-helper.c:287 msgid "661e8cd0-b618-46b8-9dc9-31a52baaa16b" msgstr "661e8cd0-b618-46b8-9dc9-31a52baaa16b" -#: ../src/nm-iface-helper.c:287 +#: ../src/nm-iface-helper.c:288 msgid "Whether to manage IPv6 SLAAC" msgstr "Czy zarzÄ…dzać SLAAC IPv6" -#: ../src/nm-iface-helper.c:288 +#: ../src/nm-iface-helper.c:289 msgid "Whether SLAAC must be successful" msgstr "Czy SLAAC musi siÄ™ powieść" -#: ../src/nm-iface-helper.c:289 +#: ../src/nm-iface-helper.c:290 msgid "Use an IPv6 temporary privacy address" msgstr "Użycie tymczasowego adresu prywatnego IPv6" -#: ../src/nm-iface-helper.c:290 +#: ../src/nm-iface-helper.c:291 msgid "Current DHCPv4 address" msgstr "Bieżący adres DHCPv4" -#: ../src/nm-iface-helper.c:291 +#: ../src/nm-iface-helper.c:292 msgid "Whether DHCPv4 must be successful" msgstr "Czy DHCPv4 musi siÄ™ powieść" -#: ../src/nm-iface-helper.c:292 +#: ../src/nm-iface-helper.c:293 msgid "Hex-encoded DHCPv4 client ID" msgstr "Identyfikator klienta DHCPv4 zakodowany szesnastkowo" -#: ../src/nm-iface-helper.c:293 +#: ../src/nm-iface-helper.c:294 msgid "Hostname to send to DHCP server" msgstr "Nazwa komputera wysyÅ‚ana do serwera DHCP" -#: ../src/nm-iface-helper.c:293 +#: ../src/nm-iface-helper.c:294 msgid "barbar" msgstr "barbar" -#: ../src/nm-iface-helper.c:294 +#: ../src/nm-iface-helper.c:295 msgid "Route priority for IPv4" msgstr "Priorytet trasy dla IPv4" -#: ../src/nm-iface-helper.c:294 +#: ../src/nm-iface-helper.c:295 msgid "0" msgstr "0" -#: ../src/nm-iface-helper.c:295 +#: ../src/nm-iface-helper.c:296 msgid "Route priority for IPv6" msgstr "Priorytet trasy dla IPv6" -#: ../src/nm-iface-helper.c:295 +#: ../src/nm-iface-helper.c:296 msgid "1024" msgstr "1024" -#: ../src/nm-iface-helper.c:296 +#: ../src/nm-iface-helper.c:297 msgid "Hex-encoded Interface Identifier" msgstr "Identyfikator interfejsu zakodowany szesnastkowo" -#: ../src/nm-iface-helper.c:316 +#: ../src/nm-iface-helper.c:317 msgid "" "nm-iface-helper is a small, standalone process that manages a single network " "interface." @@ -8637,17 +8780,17 @@ msgstr "" "nm-iface-helper to maÅ‚y, samodzielny proces zarzÄ…dzajÄ…cy pojedynczym " "interfejsem sieciowym." -#: ../src/nm-iface-helper.c:364 +#: ../src/nm-iface-helper.c:365 #, c-format msgid "An interface name and UUID are required\n" msgstr "Wymagana jest nazwa interfejsu i UUID\n" -#: ../src/nm-iface-helper.c:370 +#: ../src/nm-iface-helper.c:371 #, c-format msgid "Failed to find interface index for %s (%s)\n" msgstr "Odnalezienie indeksu interfejsu dla %s (%s) siÄ™ nie powiodÅ‚o\n" -#: ../src/nm-iface-helper.c:430 +#: ../src/nm-iface-helper.c:431 #, c-format msgid "(%s): Invalid IID %s\n" msgstr "(%s): nieprawidÅ‚owy IID %s\n" @@ -8662,7 +8805,7 @@ msgstr "Nieznany poziom dziennika \"%s\"" msgid "Unknown log domain '%s'" msgstr "Nieznana domena dziennika \"%s\"" -#: ../src/nm-manager.c:3367 +#: ../src/nm-manager.c:3423 msgid "VPN connection" msgstr "Połączenie VPN" diff --git a/po/pt_BR.po b/po/pt_BR.po index 245809f2..670b5262 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -5221,10 +5221,6 @@ msgstr "\"%d\" não é um valor válido para a propriedade (deveria ser <= %d)" msgid "value '%d' is out of range <%d-%d>" msgstr "valor \"%d\" está fora da faixa <%d-%d>" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "propriedade está vazia" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5908,8 +5904,8 @@ msgstr "Ponte" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" -msgstr "\rConectando" +msgid "Connecting" +msgstr "Conectando" #: ../test/nm-online.c:104 msgid "" diff --git a/po/ru.po b/po/ru.po index 5a0aaad9..b8c60718 100644 --- a/po/ru.po +++ b/po/ru.po @@ -5958,7 +5958,7 @@ msgstr "Ð”Ð»Ñ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ðº «%s» требуетÑÑ Ð¿Ð°Ñ€Ð¾Ð»ÑŒ. #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" +msgid "Connecting" msgstr "Подключение..." #: ../clients/nm-online.c:149 @@ -7410,10 +7410,6 @@ msgstr "значение «%d» выходит за пределы допуÑтРmsgid "is not a valid MAC address" msgstr "недопуÑтимый MAC-адреÑ" -#: ../libnm-core/nm-setting-cdma.c:149 ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "пуÑтое ÑвойÑтво" - #: ../libnm-core/nm-setting-connection.c:747 #, fuzzy, c-format #| msgid "Could not create editor for connection '%s' of type '%s'." diff --git a/po/sl.po b/po/sl.po index 3cad67f7..62094776 100644 --- a/po/sl.po +++ b/po/sl.po @@ -2838,8 +2838,8 @@ msgstr "Vez" #: ../test/nm-online.c:111 #, c-format -msgid "\rConnecting" -msgstr "\rPonovno vzpostavljanje povezave" +msgid "Connecting" +msgstr "Ponovno vzpostavljanje povezave" #: ../test/nm-online.c:142 msgid "Time to wait for a connection, in seconds (default is 30)" diff --git a/po/sv.po b/po/sv.po index c617da6e..b4569081 100644 --- a/po/sv.po +++ b/po/sv.po @@ -1,104 +1,178 @@ # Swedish messages for NetworkManager. -# Copyright © 2004-2014 Free Software Foundation, Inc. +# Copyright © 2004-2015 Free Software Foundation, Inc. # Christian Rose <menthos@menthos.com>, 2004, 2005, 2006. # Daniel Nylander <po@danielnylander.se>, 2006, 2008, 2009, 2010, 2012. -# Josef Andersson <josef.andersson@fripost.org>, 2014. +# Josef Andersson <josef.andersson@fripost.org>, 2014, 2015. +# Anders Jonsson <anders.jonsson@norsjovallen.se>, 2015. # msgid "" msgstr "" "Project-Id-Version: NetworkManager\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=NetworkManager&keywords=I18N+L10N&component=Translations\n" -"POT-Creation-Date: 2014-10-27 23:12+0000\n" -"PO-Revision-Date: 2014-10-26 16:03+0100\n" -"Last-Translator: Josef Andersson <josef.andersson@fripost.org>\n" -"Language-Team: Svenska <tp-sv@listor.tp-sv.se>\n" +"POT-Creation-Date: 2015-11-18 13:58+0000\n" +"PO-Revision-Date: 2015-11-19 20:42+0100\n" +"Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n" +"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" "Language: sv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Gtranslator 2.91.6\n" +"X-Generator: Poedit 1.8.6\n" +"X-Project-Style: gnome\n" -#: ../clients/cli/common.c:38 ../clients/cli/common.c:50 -#: ../clients/cli/common.c:58 ../clients/cli/common.c:69 -#: ../clients/cli/connections.c:170 ../clients/cli/connections.c:192 +#: ../clients/cli/agent.c:42 +#, c-format +msgid "" +"Usage: nmcli agent { COMMAND | help }\n" +"\n" +"COMMAND := { secret | polkit | all }\n" +"\n" +msgstr "" +"Användning: nmcli agent { KOMMANDO | help }\n" +"\n" +"KOMMANDO := { secret | polkit | all }\n" +"\n" + +#: ../clients/cli/agent.c:50 +#, c-format +msgid "" +"Usage: nmcli agent secret { help }\n" +"\n" +"Runs nmcli as NetworkManager secret agent. When NetworkManager requires\n" +"a password it asks registered agents for it. This command keeps nmcli " +"running\n" +"and if a password is required asks the user for it.\n" +"\n" +msgstr "" +"Användning: nmcli agent secret { help }\n" +"\n" +"Kör nmcli som en hemlig agent för Nätverkshanteraren. När " +"Nätverkshanteraren\n" +"begär ett lösenord kommer den att att frÃ¥ga registrerade agenter om detta.\n" +"Detta kommando hÃ¥ller nmcli körandes, och om ett lösenord begärs frÃ¥gas\n" +"användaren om det.\n" +"\n" + +#: ../clients/cli/agent.c:60 +#, c-format +msgid "" +"Usage: nmcli agent polkit { help }\n" +"\n" +"Registers nmcli as a polkit action for the user session.\n" +"When a polkit daemon requires an authorization, nmcli asks the user and " +"gives\n" +"the response back to polkit.\n" +"\n" +msgstr "" +"Användning: nmcli agent polkit { help }\n" +"\n" +"Registrerar nmcli som en polkit-Ã¥tgärd för användarsessionen.\n" +"När en polkit-demon begär behörighet frÃ¥gar nmcli användaren och ger\n" +"tillbaka svaret till polkit.\n" +"\n" + +#: ../clients/cli/agent.c:70 +#, c-format +msgid "" +"Usage: nmcli agent all { help }\n" +"\n" +"Runs nmcli as both NetworkManager secret and a polkit agent.\n" +"\n" +msgstr "" +"Användning: nmcli agent all { help }\n" +"\n" +"Kör nmcli som bÃ¥de hemlig Nätverkshanterare och en polkit-agent.\n" +"\n" + +#: ../clients/cli/agent.c:152 +#, c-format +msgid "nmcli successfully registered as a NetworkManager's secret agent.\n" +msgstr "nmcli registrerades som en hemlig Nätverkshanteraragent.\n" + +#: ../clients/cli/agent.c:154 +#, c-format +msgid "Error: secret agent initialization failed" +msgstr "Fel: misslyckades med initiering av hemlig agent" + +#: ../clients/cli/agent.c:169 +#, c-format +msgid "Error: polkit agent initialization failed: %s" +msgstr "Fel: Initiering av polkit-agent misslyckades: %s" + +#: ../clients/cli/agent.c:177 +#, c-format +msgid "nmcli successfully registered as a polkit agent.\n" +msgstr "nmcli registrerade en polkit-agent.\n" + +#: ../clients/cli/agent.c:209 ../clients/cli/connections.c:9091 +#: ../clients/cli/connections.c:9117 ../clients/cli/connections.c:9258 +#: ../clients/cli/devices.c:3060 ../clients/cli/general.c:325 +#: ../clients/cli/general.c:463 +#, c-format +msgid "Error: NetworkManager is not running." +msgstr "Fel: Nätverkshanteraren är inte igÃ¥ng." + +#: ../clients/cli/agent.c:245 +#, c-format +msgid "Error: 'agent' command '%s' is not valid." +msgstr "Fel: â€agentâ€-kommandot â€%s†är inte giltigt." + +#: ../clients/cli/common.c:40 ../clients/cli/common.c:53 +#: ../clients/cli/common.c:61 ../clients/cli/common.c:73 +#: ../clients/cli/connections.c:173 ../clients/cli/connections.c:195 msgid "GROUP" msgstr "GRUPP" #. 0 -#: ../clients/cli/common.c:39 ../clients/cli/common.c:59 +#: ../clients/cli/common.c:41 ../clients/cli/common.c:62 msgid "ADDRESS" msgstr "ADRESS" #. 1 -#: ../clients/cli/common.c:40 ../clients/cli/common.c:60 +#. 2 +#: ../clients/cli/common.c:42 ../clients/cli/common.c:63 +#: ../clients/cli/connections.c:198 +msgid "GATEWAY" +msgstr "GATEWAY" + +#. 2 +#: ../clients/cli/common.c:43 ../clients/cli/common.c:64 msgid "ROUTE" msgstr "RUTT" -#. 2 -#: ../clients/cli/common.c:41 ../clients/cli/common.c:61 +#. 3 +#: ../clients/cli/common.c:44 ../clients/cli/common.c:65 msgid "DNS" msgstr "DNS" -#. 3 -#: ../clients/cli/common.c:42 ../clients/cli/common.c:62 +#. 4 +#: ../clients/cli/common.c:45 ../clients/cli/common.c:66 msgid "DOMAIN" msgstr "DOMÄN" -#. 4 -#: ../clients/cli/common.c:43 +#. 5 +#: ../clients/cli/common.c:46 msgid "WINS" msgstr "WINS" #. 0 -#: ../clients/cli/common.c:51 ../clients/cli/common.c:70 +#: ../clients/cli/common.c:54 ../clients/cli/common.c:74 msgid "OPTION" msgstr "FLAGGA" -#: ../clients/cli/common.c:377 ../clients/cli/settings.c:3078 -#: ../clients/cli/settings.c:3097 -#, c-format -msgid "invalid IPv4 address '%s'" -msgstr "ogiltig IPv4-adress â€%sâ€" - -#: ../clients/cli/common.c:385 -#, c-format -msgid "invalid prefix '%s'; <1-32> allowed" -msgstr "ogiltigt prefix â€%sâ€; <1-32> tillÃ¥tet" - -#: ../clients/cli/common.c:392 ../clients/cli/common.c:445 -#, c-format -msgid "invalid gateway '%s'" -msgstr "ogiltig gateway â€%sâ€" - -#: ../clients/cli/common.c:430 ../clients/cli/settings.c:3424 -#: ../clients/cli/settings.c:3443 -#, c-format -msgid "invalid IPv6 address '%s'" -msgstr "ogiltig IPv6-adress â€%sâ€" - -#: ../clients/cli/common.c:438 -#, c-format -msgid "invalid prefix '%s'; <1-128> allowed" -msgstr "ogiltigt prefix â€%sâ€; <1-128> tillÃ¥tet" - -#: ../clients/cli/common.c:521 -#, c-format -msgid "invalid route destination address '%s'" -msgstr "ogiltig destinationsadress för rutten â€%sâ€" - -#: ../clients/cli/common.c:528 +#: ../clients/cli/common.c:378 ../clients/cli/common.c:438 #, c-format msgid "invalid prefix '%s'; <1-%d> allowed" msgstr "ogiltigt prefix â€%sâ€; <1-%d> tillÃ¥tet" -#: ../clients/cli/common.c:538 +#: ../clients/cli/common.c:386 #, c-format -msgid "invalid next hop address '%s'" -msgstr "ogiltigt nästa-hoppadress â€%sâ€" +msgid "invalid IP address: %s" +msgstr "ogiltig IP-adress â€%sâ€" -#: ../clients/cli/common.c:543 +#: ../clients/cli/common.c:450 #, c-format msgid "" "the second component of route ('%s') is neither a next hop address nor a " @@ -107,391 +181,468 @@ msgstr "" "andra komponenten pÃ¥ rutten (â€%sâ€) är varken nästa hoppadress eller ett " "mätvärde" -#: ../clients/cli/common.c:553 +#: ../clients/cli/common.c:459 #, c-format msgid "invalid metric '%s'" msgstr "ogiltigt mätvärde â€%sâ€" -#: ../clients/cli/common.c:562 +#: ../clients/cli/common.c:467 +#, c-format +msgid "invalid route: %s" +msgstr "ogiltig rutt: â€%sâ€" + +#: ../clients/cli/common.c:479 msgid "default route cannot be added (NetworkManager handles it by itself)" msgstr "" "standardrutten kan inte läggas till (Nätverkshanteraren klarar det själv)" -#: ../clients/cli/common.c:650 +#: ../clients/cli/common.c:496 msgid "unmanaged" msgstr "ohanterad" -#: ../clients/cli/common.c:652 +#: ../clients/cli/common.c:498 msgid "unavailable" msgstr "otillgänglig" -#: ../clients/cli/common.c:654 ../clients/cli/general.c:259 +#: ../clients/cli/common.c:500 ../clients/cli/general.c:260 msgid "disconnected" msgstr "frÃ¥nkopplad" -#: ../clients/cli/common.c:656 +#: ../clients/cli/common.c:502 msgid "connecting (prepare)" msgstr "ansluter (förbereder)" -#: ../clients/cli/common.c:658 +#: ../clients/cli/common.c:504 msgid "connecting (configuring)" msgstr "ansluter (konfigurerar)" -#: ../clients/cli/common.c:660 +#: ../clients/cli/common.c:506 msgid "connecting (need authentication)" msgstr "ansluter (behöver autentisering)" -#: ../clients/cli/common.c:662 +#: ../clients/cli/common.c:508 msgid "connecting (getting IP configuration)" msgstr "ansluter (hämtar IP-konfiguration)" -#: ../clients/cli/common.c:664 +#: ../clients/cli/common.c:510 msgid "connecting (checking IP connectivity)" msgstr "ansluter (kontrollerar IP-anslutning)" -#: ../clients/cli/common.c:666 +#: ../clients/cli/common.c:512 msgid "connecting (starting secondary connections)" msgstr "ansluter (startar sekundära anslutningar)" -#: ../clients/cli/common.c:668 ../clients/cli/general.c:255 +#: ../clients/cli/common.c:514 ../clients/cli/general.c:256 msgid "connected" msgstr "ansluten" -#: ../clients/cli/common.c:670 ../clients/cli/connections.c:534 +#: ../clients/cli/common.c:516 ../clients/cli/connections.c:544 msgid "deactivating" msgstr "inaktiverar" -#: ../clients/cli/common.c:672 +#: ../clients/cli/common.c:518 msgid "connection failed" msgstr "anslutningen misslyckades" -#: ../clients/cli/common.c:674 ../clients/cli/connections.c:539 -#: ../clients/cli/connections.c:562 ../clients/cli/connections.c:1674 -#: ../clients/cli/devices.c:877 ../clients/cli/general.c:262 -#: ../clients/cli/general.c:280 ../clients/cli/general.c:410 -#: ../clients/cli/general.c:426 ../clients/cli/settings.c:704 -#: ../clients/cli/settings.c:766 ../clients/cli/settings.c:1059 -#: ../clients/cli/utils.c:1123 ../src/main.c:509 ../src/main.c:537 +#: ../clients/cli/common.c:520 ../clients/cli/common.c:537 +#: ../clients/cli/connections.c:549 ../clients/cli/connections.c:572 +#: ../clients/cli/connections.c:1712 ../clients/cli/devices.c:891 +#: ../clients/cli/devices.c:932 ../clients/cli/devices.c:934 +#: ../clients/cli/general.c:263 ../clients/cli/general.c:281 +#: ../clients/cli/general.c:411 ../clients/cli/general.c:427 +#: ../clients/cli/settings.c:732 ../clients/cli/settings.c:817 +#: ../clients/cli/settings.c:1118 ../clients/cli/settings.c:2839 +#: ../clients/cli/utils.c:1200 ../src/main.c:362 ../src/main.c:412 msgid "unknown" msgstr "okänd" -#: ../clients/cli/common.c:683 +#. "CAPABILITIES" +#: ../clients/cli/common.c:529 ../clients/cli/connections.c:819 +#: ../clients/cli/connections.c:821 ../clients/cli/connections.c:823 +#: ../clients/cli/connections.c:855 ../clients/cli/connections.c:922 +#: ../clients/cli/connections.c:923 ../clients/cli/connections.c:925 +#: ../clients/cli/connections.c:3158 ../clients/cli/connections.c:7239 +#: ../clients/cli/connections.c:7240 ../clients/cli/devices.c:598 +#: ../clients/cli/devices.c:648 ../clients/cli/devices.c:856 +#: ../clients/cli/devices.c:857 ../clients/cli/devices.c:858 +#: ../clients/cli/devices.c:859 ../clients/cli/devices.c:895 +#: ../clients/cli/devices.c:897 ../clients/cli/devices.c:925 +#: ../clients/cli/devices.c:926 ../clients/cli/devices.c:927 +#: ../clients/cli/devices.c:928 ../clients/cli/devices.c:929 +#: ../clients/cli/devices.c:930 ../clients/cli/devices.c:931 +#: ../clients/cli/devices.c:933 ../clients/cli/devices.c:935 +#: ../clients/cli/general.c:421 ../clients/cli/settings.c:2834 +msgid "yes" +msgstr "ja" + +#: ../clients/cli/common.c:531 ../clients/cli/connections.c:819 +#: ../clients/cli/connections.c:821 ../clients/cli/connections.c:823 +#: ../clients/cli/connections.c:922 ../clients/cli/connections.c:923 +#: ../clients/cli/connections.c:925 ../clients/cli/connections.c:3159 +#: ../clients/cli/connections.c:7239 ../clients/cli/connections.c:7240 +#: ../clients/cli/devices.c:598 ../clients/cli/devices.c:648 +#: ../clients/cli/devices.c:856 ../clients/cli/devices.c:857 +#: ../clients/cli/devices.c:858 ../clients/cli/devices.c:859 +#: ../clients/cli/devices.c:895 ../clients/cli/devices.c:897 +#: ../clients/cli/devices.c:925 ../clients/cli/devices.c:926 +#: ../clients/cli/devices.c:927 ../clients/cli/devices.c:928 +#: ../clients/cli/devices.c:929 ../clients/cli/devices.c:930 +#: ../clients/cli/devices.c:931 ../clients/cli/devices.c:933 +#: ../clients/cli/devices.c:935 ../clients/cli/general.c:423 +#: ../clients/cli/settings.c:2836 +msgid "no" +msgstr "nej" + +#: ../clients/cli/common.c:533 +msgid "yes (guessed)" +msgstr "ja (gissat)" + +#: ../clients/cli/common.c:535 +msgid "no (guessed)" +msgstr "nej (gissat)" + +#: ../clients/cli/common.c:546 msgid "No reason given" msgstr "Ingen anledning angiven" -#: ../clients/cli/common.c:686 ../clients/cli/connections.c:2444 +#: ../clients/cli/common.c:549 ../clients/cli/connections.c:2729 #, c-format msgid "Unknown error" msgstr "Okänt fel" -#: ../clients/cli/common.c:689 +#: ../clients/cli/common.c:552 msgid "Device is now managed" msgstr "Enheten är nu hanterad" -#: ../clients/cli/common.c:692 +#: ../clients/cli/common.c:555 msgid "Device is now unmanaged" msgstr "Enheten är nu ohanterad" -#: ../clients/cli/common.c:695 +#: ../clients/cli/common.c:558 msgid "The device could not be readied for configuration" msgstr "Enheten kunde inte göras redo för konfiguration" -#: ../clients/cli/common.c:698 +#: ../clients/cli/common.c:561 msgid "" "IP configuration could not be reserved (no available address, timeout, etc.)" msgstr "" "IP-konfigurationen kunde inte reserveras (ingen tillgänglig adress, " "tidsgräns, etc.)" -#: ../clients/cli/common.c:701 +#: ../clients/cli/common.c:564 msgid "The IP configuration is no longer valid" msgstr "IP-konfigurationen är inte längre giltig" -#: ../clients/cli/common.c:704 +#: ../clients/cli/common.c:567 msgid "Secrets were required, but not provided" msgstr "Hemligheter krävdes men tillhandahölls ej" -#: ../clients/cli/common.c:707 +#: ../clients/cli/common.c:570 msgid "802.1X supplicant disconnected" msgstr "802.1X-supplikanten kopplade frÃ¥n" -#: ../clients/cli/common.c:710 +#: ../clients/cli/common.c:573 msgid "802.1X supplicant configuration failed" msgstr "Konfiguration av 802.1X-supplikanten misslyckades" -#: ../clients/cli/common.c:713 +#: ../clients/cli/common.c:576 msgid "802.1X supplicant failed" msgstr "802.1X-supplikanten misslyckades" -#: ../clients/cli/common.c:716 +#: ../clients/cli/common.c:579 msgid "802.1X supplicant took too long to authenticate" msgstr "802.1X-supplikanten tog för lÃ¥ng tid att autentisera" -#: ../clients/cli/common.c:719 +#: ../clients/cli/common.c:582 msgid "PPP service failed to start" msgstr "PPP-tjänsten misslyckades med att starta" -#: ../clients/cli/common.c:722 +#: ../clients/cli/common.c:585 msgid "PPP service disconnected" msgstr "PPP-tjänsten kopplades frÃ¥n" -#: ../clients/cli/common.c:725 +#: ../clients/cli/common.c:588 msgid "PPP failed" msgstr "PPP misslyckades" -#: ../clients/cli/common.c:728 +#: ../clients/cli/common.c:591 msgid "DHCP client failed to start" msgstr "DHCP-klienten misslyckades med att starta" -#: ../clients/cli/common.c:731 +#: ../clients/cli/common.c:594 msgid "DHCP client error" msgstr "Fel i DHCP-klienten" -#: ../clients/cli/common.c:734 +#: ../clients/cli/common.c:597 msgid "DHCP client failed" msgstr "DHCP-klienten misslyckades" -#: ../clients/cli/common.c:737 +#: ../clients/cli/common.c:600 msgid "Shared connection service failed to start" msgstr "Tjänsten för delad anslutning misslyckades med att starta" -#: ../clients/cli/common.c:740 +#: ../clients/cli/common.c:603 msgid "Shared connection service failed" msgstr "Tjänsten för delad anslutning misslyckades" -#: ../clients/cli/common.c:743 +#: ../clients/cli/common.c:606 msgid "AutoIP service failed to start" msgstr "AutoIP-tjänsten misslyckades med att starta" -#: ../clients/cli/common.c:746 +#: ../clients/cli/common.c:609 msgid "AutoIP service error" msgstr "Fel i AutoIP-tjänsten" -#: ../clients/cli/common.c:749 +#: ../clients/cli/common.c:612 msgid "AutoIP service failed" msgstr "AutoIP-tjänsten misslyckades" -#: ../clients/cli/common.c:752 +#: ../clients/cli/common.c:615 msgid "The line is busy" msgstr "Linjen är upptagen" -#: ../clients/cli/common.c:755 +#: ../clients/cli/common.c:618 msgid "No dial tone" msgstr "Ingen rington" -#: ../clients/cli/common.c:758 +#: ../clients/cli/common.c:621 msgid "No carrier could be established" msgstr "Ingen bärare kunde etableras" -#: ../clients/cli/common.c:761 +#: ../clients/cli/common.c:624 msgid "The dialing request timed out" msgstr "Uppringningsbegäran översteg tidsgränsen" -#: ../clients/cli/common.c:764 +#: ../clients/cli/common.c:627 msgid "The dialing attempt failed" msgstr "Uppringningsförsöket misslyckades" -#: ../clients/cli/common.c:767 +#: ../clients/cli/common.c:630 msgid "Modem initialization failed" msgstr "Initiering av modem misslyckades" -#: ../clients/cli/common.c:770 +#: ../clients/cli/common.c:633 msgid "Failed to select the specified APN" msgstr "Misslyckades med att välja angiven APN" -#: ../clients/cli/common.c:773 +#: ../clients/cli/common.c:636 msgid "Not searching for networks" msgstr "Söker inte efter nätverk" -#: ../clients/cli/common.c:776 +#: ../clients/cli/common.c:639 msgid "Network registration denied" msgstr "Nätverksregistreringen nekades" -#: ../clients/cli/common.c:779 +#: ../clients/cli/common.c:642 msgid "Network registration timed out" msgstr "Tidsgränsen för nätverksregistrering överstegs" -#: ../clients/cli/common.c:782 +#: ../clients/cli/common.c:645 msgid "Failed to register with the requested network" msgstr "Misslyckades med att registrera mot det begärda nätverket" -#: ../clients/cli/common.c:785 +#: ../clients/cli/common.c:648 msgid "PIN check failed" msgstr "Kontroll av PIN-kod misslyckades" -#: ../clients/cli/common.c:788 +#: ../clients/cli/common.c:651 msgid "Necessary firmware for the device may be missing" msgstr "Nödvändig fast programvara för enheten kanske saknas" -#: ../clients/cli/common.c:791 +#: ../clients/cli/common.c:654 msgid "The device was removed" msgstr "Enheten togs bort" -#: ../clients/cli/common.c:794 +#: ../clients/cli/common.c:657 msgid "NetworkManager went to sleep" msgstr "Nätverkshanteraren somnade" -#: ../clients/cli/common.c:797 +#: ../clients/cli/common.c:660 msgid "The device's active connection disappeared" msgstr "Enhetens aktiva anslutning försvann" -#: ../clients/cli/common.c:800 +#: ../clients/cli/common.c:663 msgid "Device disconnected by user or client" msgstr "Enheten kopplades frÃ¥n av användare eller klient" -#: ../clients/cli/common.c:803 +#: ../clients/cli/common.c:666 msgid "Carrier/link changed" msgstr "Bärare/länk ändrades" -#: ../clients/cli/common.c:806 +#: ../clients/cli/common.c:669 msgid "The device's existing connection was assumed" msgstr "Enhetens befintliga anslutning antogs" -#: ../clients/cli/common.c:809 +#: ../clients/cli/common.c:672 msgid "The supplicant is now available" msgstr "Supplikanten finns nu tillgänglig" -#: ../clients/cli/common.c:812 +#: ../clients/cli/common.c:675 msgid "The modem could not be found" msgstr "Modemet kunde inte hittas" -#: ../clients/cli/common.c:815 +#: ../clients/cli/common.c:678 msgid "The Bluetooth connection failed or timed out" msgstr "Bluetoothanslutningen misslyckades eller översteg tidsgränsen" -#: ../clients/cli/common.c:818 +#: ../clients/cli/common.c:681 msgid "GSM Modem's SIM card not inserted" msgstr "SIM-kortet i GSM-modemet är inte anslutet" -#: ../clients/cli/common.c:821 +#: ../clients/cli/common.c:684 msgid "GSM Modem's SIM PIN required" msgstr "PIN-kod för SIM-kortet i GSM-modemet krävs" -#: ../clients/cli/common.c:824 +#: ../clients/cli/common.c:687 msgid "GSM Modem's SIM PUK required" msgstr "PUK-kod för SIM-kortet i GSM-modemet krävs" -#: ../clients/cli/common.c:827 +#: ../clients/cli/common.c:690 msgid "GSM Modem's SIM wrong" msgstr "SIM-kortet i GSM-modemet är felaktigt" -#: ../clients/cli/common.c:830 +#: ../clients/cli/common.c:693 msgid "InfiniBand device does not support connected mode" msgstr "InfiniBand-enheten saknar stöd för anslutet läge" -#: ../clients/cli/common.c:833 +#: ../clients/cli/common.c:696 msgid "A dependency of the connection failed" msgstr "Ett beroende till anslutningen misslyckades" -#: ../clients/cli/common.c:836 +#: ../clients/cli/common.c:699 msgid "A problem with the RFC 2684 Ethernet over ADSL bridge" msgstr "Ett problem med RFC 2684 över ADSL-brygga" -#: ../clients/cli/common.c:839 +#: ../clients/cli/common.c:702 msgid "ModemManager is unavailable" msgstr "ModemManager är inte tillgängligt" -#: ../clients/cli/common.c:842 +#: ../clients/cli/common.c:705 msgid "The Wi-Fi network could not be found" msgstr "TrÃ¥dlösa nätverket kunde inte hittas" -#: ../clients/cli/common.c:845 +#: ../clients/cli/common.c:708 msgid "A secondary connection of the base connection failed" msgstr "En sekundär anslutning för basanslutningen misslyckades" -#: ../clients/cli/common.c:848 +#: ../clients/cli/common.c:711 msgid "DCB or FCoE setup failed" msgstr "DCB eller FCoE-inställning misslyckades" -#: ../clients/cli/common.c:851 +#: ../clients/cli/common.c:714 msgid "teamd control failed" msgstr "teamd-kontroll misslyckades" -#: ../clients/cli/common.c:854 +#: ../clients/cli/common.c:717 msgid "Modem failed or no longer available" msgstr "Modemet misslyckades eller är inte tillgängligt längre" -#: ../clients/cli/common.c:857 +#: ../clients/cli/common.c:720 msgid "Modem now ready and available" msgstr "Modemet redo och tillgängligt" -#: ../clients/cli/common.c:860 +#: ../clients/cli/common.c:723 msgid "SIM PIN was incorrect" msgstr "SIM PIN var felaktig" +#: ../clients/cli/common.c:726 +msgid "New connection activation was enqueued" +msgstr "Aktivering av ny anslutning köades" + +#: ../clients/cli/common.c:729 +msgid "The device's parent changed" +msgstr "Den överordnade enheten ändrades" + +#: ../clients/cli/common.c:732 +msgid "The device parent's management changed" +msgstr "Den överordnade enhetens hantering ändrades" + #. TRANSLATORS: Unknown reason for a device state change (NMDeviceStateReason) -#: ../clients/cli/common.c:864 ../clients/cli/devices.c:616 -#: ../libnm-glib/nm-device.c:1812 ../libnm/nm-device.c:1622 +#: ../clients/cli/common.c:736 ../clients/cli/devices.c:628 +#: ../libnm-glib/nm-device.c:1813 ../libnm/nm-device.c:1658 msgid "Unknown" msgstr "Okänd" -#: ../clients/cli/common.c:906 +#: ../clients/cli/common.c:778 #, c-format msgid "invalid priority map '%s'" msgstr "ogiltig prioritetshash â€%sâ€" -#: ../clients/cli/common.c:913 ../clients/cli/common.c:919 +#: ../clients/cli/common.c:785 ../clients/cli/common.c:791 #, c-format msgid "priority '%s' is not valid (<0-%ld>)" msgstr "prioriteten â€%s†är inte giltig (<0-%ld>)" -#: ../clients/cli/common.c:986 +#: ../clients/cli/common.c:858 #, c-format msgid "'%s' is not a valid team configuration or file name." -msgstr "â€%s†är inte en giltig teamkonfiguration eller ett giltigt filnamn," +msgstr "â€%s†är inte en giltig teamkonfiguration eller ett giltigt filnamn." + +#: ../clients/cli/common.c:959 +#, c-format +msgid "" +"Warning: password for '%s' not given in 'passwd-file' and nmcli cannot ask " +"without '--ask' option.\n" +msgstr "" +"Varning: Lösenord för â€%s†inte angivet i â€passwd-file†och nmcli kan inte " +"frÃ¥ga utan alternativet â€--askâ€.\n" #. define some prompts for connection editor -#: ../clients/cli/connections.c:40 +#: ../clients/cli/connections.c:42 msgid "Setting name? " msgstr "Inställningsnamn? " -#: ../clients/cli/connections.c:41 +#: ../clients/cli/connections.c:43 msgid "Property name? " msgstr "Egenskapsnamn? " -#: ../clients/cli/connections.c:42 +#: ../clients/cli/connections.c:44 msgid "Enter connection type: " msgstr "Ange anslutningstyp: " #. define some other prompts -#: ../clients/cli/connections.c:45 +#: ../clients/cli/connections.c:47 msgid "Connection type: " msgstr "Anslutningstyp: " -#: ../clients/cli/connections.c:46 +#: ../clients/cli/connections.c:48 msgid "VPN type: " msgstr "VPN-typ: " -#: ../clients/cli/connections.c:47 +#: ../clients/cli/connections.c:49 msgid "Bond master: " -msgstr "Master för kombination: " +msgstr "Master för kombinering: " -#: ../clients/cli/connections.c:48 +#: ../clients/cli/connections.c:50 msgid "Team master: " msgstr "Master för grupp: " -#: ../clients/cli/connections.c:49 +#: ../clients/cli/connections.c:51 msgid "Bridge master: " msgstr "Master för brygga: " -#: ../clients/cli/connections.c:50 +#: ../clients/cli/connections.c:52 msgid "Connection (name, UUID, or path): " msgstr "Anslutning (namn, UUID eller sökväg): " +#: ../clients/cli/connections.c:53 +msgid "Connection(s) (name, UUID, or path): " +msgstr "Anslutning(ar) (namn, UUID eller sökväg): " + #. 0 -#: ../clients/cli/connections.c:58 ../clients/cli/connections.c:171 -#: ../clients/cli/devices.c:55 ../clients/cli/devices.c:84 -#: ../clients/cli/devices.c:94 ../clients/cli/devices.c:105 -#: ../clients/cli/devices.c:114 ../clients/cli/devices.c:129 -#: ../clients/cli/devices.c:142 ../clients/cli/devices.c:168 -#: ../clients/cli/devices.c:183 ../clients/cli/devices.c:192 -#: ../clients/cli/devices.c:201 +#: ../clients/cli/connections.c:61 ../clients/cli/connections.c:174 +#: ../clients/cli/devices.c:58 ../clients/cli/devices.c:91 +#: ../clients/cli/devices.c:101 ../clients/cli/devices.c:112 +#: ../clients/cli/devices.c:121 ../clients/cli/devices.c:138 +#: ../clients/cli/devices.c:151 ../clients/cli/devices.c:177 +#: ../clients/cli/devices.c:192 ../clients/cli/devices.c:201 +#: ../clients/cli/devices.c:211 msgid "NAME" msgstr "NAMN" #. 0 #. 1 -#: ../clients/cli/connections.c:59 ../clients/cli/connections.c:172 +#: ../clients/cli/connections.c:62 ../clients/cli/connections.c:175 msgid "UUID" msgstr "UUID" @@ -499,35 +650,35 @@ msgstr "UUID" #. 0 #. 1 #. 2 -#: ../clients/cli/connections.c:60 ../clients/cli/connections.c:193 -#: ../clients/cli/devices.c:41 ../clients/cli/devices.c:57 -#: ../clients/cli/devices.c:171 +#: ../clients/cli/connections.c:63 ../clients/cli/connections.c:196 +#: ../clients/cli/devices.c:44 ../clients/cli/devices.c:60 +#: ../clients/cli/devices.c:180 msgid "TYPE" msgstr "TYP" #. 2 -#: ../clients/cli/connections.c:61 +#: ../clients/cli/connections.c:64 msgid "TIMESTAMP" msgstr "TIDSSTÄMPEL" #. 3 -#: ../clients/cli/connections.c:62 +#: ../clients/cli/connections.c:65 msgid "TIMESTAMP-REAL" msgstr "TIDSSTÄMPEL-REELL" #. 4 -#. 15 -#: ../clients/cli/connections.c:63 ../clients/cli/devices.c:71 +#. 16 +#: ../clients/cli/connections.c:66 ../clients/cli/devices.c:75 msgid "AUTOCONNECT" msgstr "AUTOANSLUT" #. 5 -#: ../clients/cli/connections.c:64 +#: ../clients/cli/connections.c:67 msgid "AUTOCONNECT-PRIORITY" msgstr "AUTOANSLUT-PRIORITET" #. 6 -#: ../clients/cli/connections.c:65 +#: ../clients/cli/connections.c:68 msgid "READONLY" msgstr "SKRIVSKYDDAD" @@ -536,17 +687,17 @@ msgstr "SKRIVSKYDDAD" #. 2 #. 15 #. 5 -#: ../clients/cli/connections.c:66 ../clients/cli/connections.c:179 -#: ../clients/cli/devices.c:43 ../clients/cli/devices.c:158 -#: ../clients/cli/devices.c:174 +#: ../clients/cli/connections.c:69 ../clients/cli/connections.c:182 +#: ../clients/cli/devices.c:46 ../clients/cli/devices.c:167 +#: ../clients/cli/devices.c:183 msgid "DBUS-PATH" msgstr "DBUS-SÖKVÄG" #. 8 #. 13 #. 4 -#: ../clients/cli/connections.c:67 ../clients/cli/devices.c:156 -#: ../clients/cli/devices.c:173 +#: ../clients/cli/connections.c:70 ../clients/cli/devices.c:165 +#: ../clients/cli/devices.c:182 msgid "ACTIVE" msgstr "AKTIV" @@ -554,129 +705,124 @@ msgstr "AKTIV" #. 0 #. 12 #. 3 -#: ../clients/cli/connections.c:68 ../clients/cli/devices.c:40 -#: ../clients/cli/devices.c:56 ../clients/cli/devices.c:155 -#: ../clients/cli/devices.c:172 +#: ../clients/cli/connections.c:71 ../clients/cli/devices.c:43 +#: ../clients/cli/devices.c:59 ../clients/cli/devices.c:164 +#: ../clients/cli/devices.c:181 msgid "DEVICE" msgstr "ENHET" #. 10 #. 3 #. 1 -#. 9 +#. 10 #. 1 -#: ../clients/cli/connections.c:69 ../clients/cli/connections.c:174 -#: ../clients/cli/devices.c:42 ../clients/cli/devices.c:65 -#: ../clients/cli/general.c:36 +#: ../clients/cli/connections.c:72 ../clients/cli/connections.c:177 +#: ../clients/cli/devices.c:45 ../clients/cli/devices.c:69 +#: ../clients/cli/general.c:37 msgid "STATE" msgstr "TILLSTÃ…ND" #. 11 -#: ../clients/cli/connections.c:70 +#: ../clients/cli/connections.c:73 msgid "ACTIVE-PATH" msgstr "AKTIV-SÖKVÄG" #. 2 -#: ../clients/cli/connections.c:173 +#: ../clients/cli/connections.c:176 msgid "DEVICES" msgstr "ENHETER" #. 4 -#: ../clients/cli/connections.c:175 +#: ../clients/cli/connections.c:178 msgid "DEFAULT" msgstr "STANDARD" #. 5 -#: ../clients/cli/connections.c:176 +#: ../clients/cli/connections.c:179 msgid "DEFAULT6" msgstr "STANDARD6" #. 6 -#: ../clients/cli/connections.c:177 +#: ../clients/cli/connections.c:180 msgid "SPEC-OBJECT" msgstr "SPEC-OBJEKT" #. 7 #. 4 #. Ask for optional 'vpn' arguments. -#: ../clients/cli/connections.c:178 ../clients/cli/connections.c:216 -#: ../clients/cli/connections.c:3498 ../clients/tui/nm-editor-utils.c:234 -#: ../clients/tui/nmt-connect-connection-list.c:407 +#: ../clients/cli/connections.c:181 ../clients/cli/connections.c:219 +#: ../clients/cli/connections.c:3863 ../clients/tui/nm-editor-utils.c:234 +#: ../clients/tui/nmt-connect-connection-list.c:406 msgid "VPN" msgstr "VPN" #. 9 #. 5 -#. 19 -#: ../clients/cli/connections.c:180 ../clients/cli/devices.c:46 -#: ../clients/cli/devices.c:75 +#. 21 +#: ../clients/cli/connections.c:183 ../clients/cli/devices.c:49 +#: ../clients/cli/devices.c:80 msgid "CON-PATH" -msgstr "ANS-SÖKV" +msgstr "ANSL-SÖKV" #. 10 -#: ../clients/cli/connections.c:181 +#: ../clients/cli/connections.c:184 msgid "ZONE" msgstr "ZON" #. 11 -#: ../clients/cli/connections.c:182 +#: ../clients/cli/connections.c:185 msgid "MASTER-PATH" msgstr "HUVUDSÖKVÄG" #. 1 -#: ../clients/cli/connections.c:194 +#: ../clients/cli/connections.c:197 msgid "USERNAME" msgstr "ANVÄNDARNAMN" -#. 2 -#: ../clients/cli/connections.c:195 -msgid "GATEWAY" -msgstr "GATEWAY" - #. 3 -#: ../clients/cli/connections.c:196 +#: ../clients/cli/connections.c:199 msgid "BANNER" msgstr "BANDEROLL" #. 4 -#: ../clients/cli/connections.c:197 +#: ../clients/cli/connections.c:200 msgid "VPN-STATE" msgstr "VPN-TILLSTÃ…ND" #. 5 -#: ../clients/cli/connections.c:198 +#: ../clients/cli/connections.c:201 msgid "CFG" msgstr "KFG" -#: ../clients/cli/connections.c:211 ../clients/cli/devices.c:216 +#: ../clients/cli/connections.c:214 ../clients/cli/devices.c:226 msgid "GENERAL" msgstr "ALLMÄNT" #. 0 #. 6 -#: ../clients/cli/connections.c:212 ../clients/cli/devices.c:223 +#: ../clients/cli/connections.c:215 ../clients/cli/devices.c:233 msgid "IP4" msgstr "IP4" #. 1 #. 7 -#: ../clients/cli/connections.c:213 ../clients/cli/devices.c:224 +#: ../clients/cli/connections.c:216 ../clients/cli/devices.c:234 msgid "DHCP4" msgstr "DHCP4" #. 2 #. 8 -#: ../clients/cli/connections.c:214 ../clients/cli/devices.c:225 +#: ../clients/cli/connections.c:217 ../clients/cli/devices.c:235 msgid "IP6" msgstr "IP6" #. 3 #. 9 -#: ../clients/cli/connections.c:215 ../clients/cli/devices.c:226 +#: ../clients/cli/connections.c:218 ../clients/cli/devices.c:236 msgid "DHCP6" msgstr "DHCP6" -#: ../clients/cli/connections.c:249 +#: ../clients/cli/connections.c:253 #, c-format msgid "" "Usage: nmcli connection { COMMAND | help }\n" @@ -684,13 +830,15 @@ msgid "" "COMMAND := { show | up | down | add | modify | edit | delete | reload | " "load }\n" "\n" -" show [--active] [[id | uuid | path | apath] <ID>] ...\n" +" show [--active] [[--show-secrets] [id | uuid | path | apath] <ID>] ...\n" "\n" -" up [[id | uuid | path] <ID>] [ifname <ifname>] [ap <BSSID>] [nsp <name>]\n" +" up [[id | uuid | path] <ID>] [ifname <ifname>] [ap <BSSID>] [nsp <name>] " +"[passwd-file <file with passwords>]\n" "\n" -" up [[id | uuid | path] <ID>] [ifname <ifname>] [ap <BSSID>]\n" +" up [[id | uuid | path] <ID>] [ifname <ifname>] [ap <BSSID>] [passwd-file " +"<file with passwords>]\n" "\n" -" down [id | uuid | path | apath] <ID>\n" +" down [id | uuid | path | apath] <ID> ...\n" "\n" " add COMMON_OPTIONS TYPE_SPECIFIC_OPTIONS IP_OPTIONS\n" "\n" @@ -712,15 +860,17 @@ msgstr "" "KOMMANDO := { show | up | down | add | modify | edit | delete | reload | " "load }\n" "\n" -" show [--active] [[id | uuid | path | apath] <ID>] …\n" +" show [--active] [[--show-secrets] [id | uuid | path | apath] <ID>] …\n" "\n" -" up [[id | uuid | path] <ID>] [ifname <grnamn>] [ap <BSSID>] [nsp <namn>]\n" +" up [[id | uuid | path] <ID>] [ifname <grnamn>] [ap <BSSID>] [nsp <namn>] " +"[passwd-file <fil med lösenord>]\n" "\n" -" up [[id | uuid | path] <ID>] [ifname <grnamn>] [ap <BSSID>]\n" +" up [[id | uuid | path] <ID>] [ifname <grnamn>] [ap <BSSID>] [passwd-file " +"<fil med lösenord>]\n" "\n" -" down [id | uuid | path | apath] <ID>\n" +" down [id | uuid | path | apath] <ID> …\n" "\n" -" add COMMON_OPTIONS TYPE_SPECIFIC_OPTIONS IP_OPTIONS\n" +" add VANLIGA_FLAGGOR TYPSPECIFIKA_FLAGGOR IP-FLAGGOR\n" "\n" " modify [--temporary] [id | uuid | path] <ID> ([+|-]<inställning>." "<egenskap> <värde>)+\n" @@ -732,10 +882,10 @@ msgstr "" "\n" " reload\n" "\n" -" load <filnamn> [ <filnamn>... ]\n" +" load <filnamn> [ <filnamn>… ]\n" "\n" -#: ../clients/cli/connections.c:270 +#: ../clients/cli/connections.c:274 #, c-format msgid "" "Usage: nmcli connection show { ARGUMENTS | help }\n" @@ -748,7 +898,8 @@ msgid "" "profiles are listed. When --active option is specified, only the active\n" "profiles are shown.\n" "\n" -"ARGUMENTS := [--active] [id | uuid | path | apath] <ID> ...\n" +"ARGUMENTS := [--active] [--show-secrets] [id | uuid | path | apath] " +"<ID> ...\n" "\n" "Show details for specified connections. By default, both static " "configuration\n" @@ -757,7 +908,7 @@ msgid "" "using global '--fields' option. Refer to the manual page for more " "information.\n" "When --active option is specified, only the active profiles are taken into\n" -"account.\n" +"account. --show-secrets option will reveal associated secrets as well.\n" msgstr "" "Användning: nmcli connection show { ARGUMENT | help }\n" "\n" @@ -769,47 +920,51 @@ msgstr "" "profiler att listas. Om flaggan -- active anges kommer endast de aktiva\n" "profilerna att visas.\n" "\n" -"ARGUMENT := [--active] [id | uuid | sökväg | apath] <ID> …\n" +"ARGUMENT := [--active] [--show-secrets] [id | uuid | sökväg | apath] <ID> …\n" "\n" "Visar detaljer för angivna anslutningar. Som standard visas bÃ¥de statiska " "och aktiva\n" "konfigurationer. Det är möjligt att filtrera utdata\n" -"med globala flaggan '--fields'. Se manualen för mer information.\n" +"med globala flaggan â€--fieldsâ€. Se handboken för mer information.\n" "När flaggan --active anges kommer endast den aktiva profilen att\n" -"räknas.\n" +"räknas. Alternativet --show-secrets kommer dessutom att visa associerade " +"hemligheter.\n" -#: ../clients/cli/connections.c:291 +#: ../clients/cli/connections.c:295 #, c-format msgid "" "Usage: nmcli connection up { ARGUMENTS | help }\n" "\n" "ARGUMENTS := [id | uuid | path] <ID> [ifname <ifname>] [ap <BSSID>] [nsp " -"<name>]\n" +"<name>] [passwd-file <file with passwords>]\n" "\n" "Activate a connection on a device. The profile to activate is identified by " "its\n" "name, UUID or D-Bus path.\n" "\n" -"ARGUMENTS := ifname <ifname> [ap <BSSID>] [nsp <name>]\n" +"ARGUMENTS := ifname <ifname> [ap <BSSID>] [nsp <name>] [passwd-file <file " +"with passwords>]\n" "\n" "Activate a device with a connection. The connection profile is selected\n" "automatically by NetworkManager.\n" "\n" -"ifname - specifies the device to active the connection on\n" -"ap - specifies AP to connect to (only valid for Wi-Fi)\n" -"nsp - specifies NSP to connect to (only valid for WiMAX)\n" +"ifname - specifies the device to active the connection on\n" +"ap - specifies AP to connect to (only valid for Wi-Fi)\n" +"nsp - specifies NSP to connect to (only valid for WiMAX)\n" +"passwd-file - file with password(s) required to activate the connection\n" "\n" msgstr "" "Användning: nmcli connection up { ARGUMENT | help }\n" "\n" "ARGUMENT := [id | uuid | path ] <ID> [ifname <grnamn>] [ap <BSSID>] [nsp " -"<namn>]\n" +"<namn>] [passwd-file <fil med lösenord>]\n" "\n" "Aktivera en anslutning pÃ¥ en enhet. Profilen som ska aktiveras identifieras " "genom dess\n" "namn, UUID eller D-Bus-sökväg.\n" "\n" -"ARGUMENT := ifname <grnamn> [ap <BSSID>] [nsp <namn>]\n" +"ARGUMENT := ifname <grnamn> [ap <BSSID>] [nsp <namn>] [passwd-file <file " +"med lösenord>]\n" "\n" "Aktivera en enhet med en anslutning. Anslutningsprofilen väljs\n" "automatiskt av Nätverkshanteraren.\n" @@ -817,14 +972,15 @@ msgstr "" "ifname - anger enhet att aktivera anslutningen pÃ¥\n" "ap - anger AP att ansluta till (endast giltig för Wi-Fi)\n" "nsp - anger NSP att ansluta till (endast giltigt för WiMAX)\n" +"passwd-file - fil med lösenord som krävs för att aktivera anslutningen\n" "\n" -#: ../clients/cli/connections.c:311 +#: ../clients/cli/connections.c:316 #, c-format msgid "" "Usage: nmcli connection down { ARGUMENTS | help }\n" "\n" -"ARGUMENTS := [id | uuid | path | apath] <ID>\n" +"ARGUMENTS := [id | uuid | path | apath] <ID> ...\n" "\n" "Deactivate a connection from a device (without preventing the device from\n" "further auto-activation). The profile to deactivate is identified by its " @@ -834,7 +990,7 @@ msgid "" msgstr "" "Användning: nmcli connection down { ARGUMENT | help }\n" "\n" -"ARGUMENT := [id | uuid | path | apath] <ID>\n" +"ARGUMENT := [id | uuid | path | apath] <ID> …\n" "\n" "Inaktivera en anslutning frÃ¥n en enhet (utan att hindra enheten frÃ¥n\n" "vidare autoaktivering). Profilen att inaktivera identifieras genom dess " @@ -842,7 +998,7 @@ msgstr "" "UUID eller D-Bus-sökväg.\n" "\n" -#: ../clients/cli/connections.c:323 +#: ../clients/cli/connections.c:328 #, c-format msgid "" "Usage: nmcli connection add { ARGUMENTS | help }\n" @@ -866,6 +1022,7 @@ msgid "" " [mac <MAC address>]\n" " [cloned-mac <cloned MAC address>]\n" " [mtu <MTU>]\n" +" [mode infrastructure|ap|adhoc]\n" "\n" " wimax: [mac <MAC address>]\n" " [nsp <NSP>]\n" @@ -939,6 +1096,11 @@ msgid "" " [channel <1-13>]\n" " [dhcp-anycast <MAC address>]\n" "\n" +" adsl: username <username>\n" +" protocol pppoa|pppoe|ipoatm\n" +" [password <password>]\n" +" [encapsulation vcmux|llc]\n" +"\n" " IP_OPTIONS:\n" " [ip4 <IPv4 address>] [gw4 <IPv4 gateway>]\n" " [ip6 <IPv6 address>] [gw6 <IPv6 gateway>]\n" @@ -946,7 +1108,7 @@ msgid "" msgstr "" "Användning: nmcli connection add { ARGUMENT | help }\n" "\n" -"ARGUMENT := VANLIGA_FLAGGOR TYP_SPECIFIKA_FLAGGOR IP_FLAGGOR\n" +"ARGUMENT := VANLIGA_FLAGGOR TYPSPECIFIKA_FLAGGOR IP-FLAGGOR\n" "\n" " VANLIGA_FLAGGOR:\n" " type <typ>\n" @@ -956,7 +1118,7 @@ msgstr "" "\n" " [save yes|no]\n" "\n" -" TYP_SPECIFIKA_FLAGGOR:\n" +" TYPSPECIFIKA_FLAGGOR:\n" " ethernet: [mac <MAC-adress>]\n" " [cloned-mac <klonad MAC-adress>]\n" " [mtu <MTU>]\n" @@ -965,6 +1127,7 @@ msgstr "" " [mac <MAC-adress>]\n" " [cloned-mac <klonad MAC-adress>]\n" " [mtu <MTU>]\n" +" [mode infrastructure|ap|adhoc]\n" "\n" " wimax: [mac <MAC-adress>]\n" " [nsp <NSP>]\n" @@ -991,7 +1154,7 @@ msgstr "" " bluetooth: [addr <bluetoothadress>]\n" " [bt-type panu|dun-gsm|dun-cdma]\n" "\n" -" vlan: dev <parent device (connection UUID, ifname, or MAC)>\n" +" vlan: dev <parent device (anslutnings-UUID, grnamn eller MAC)>\n" " id <VLAN-ID>\n" " [flags <VLAN-flaggor>]\n" " [ingress <ingress priority mapping>]\n" @@ -1013,11 +1176,11 @@ msgstr "" " bond-slave: master <master (grnamn, eller anslutnings-UUID eller " "namn)>\n" "\n" -" team: [config <file>|<rÃ¥ JSON-data>]\n" +" team: [config <fil>|<rÃ¥ JSON-data>]\n" "\n" " team-slave: master <master (grnamn, eller anslutnings-UUID eller " "namn)>\n" -" [config <file>|<rÃ¥ JSON-data>]\n" +" [config <fil>|<rÃ¥ JSON-data>]\n" "\n" " bridge: [stp yes|no]\n" " [priority <num>]\n" @@ -1041,12 +1204,18 @@ msgstr "" " [channel <1-13>]\n" " [dhcp-anycast <MAC-adress>]\n" "\n" -" IP_ALTERNATIV:\n" +" adsl: username <användarnamn>\n" +" protocol pppoa|pppoe|ipoatm\n" +" [password <lösenord>]\n" +" [encapsulation vcmux|llc]\n" +"\n" +"\n" +" IP-FLAGGOR:\n" " [ip4 <IPv4-adress>] [gw4 <IPv4-gateway>]\n" " [ip6 <IPv6-adress>] [gw6 <IPv6-gateway>]\n" "\n" -#: ../clients/cli/connections.c:402 +#: ../clients/cli/connections.c:412 #, c-format msgid "" "Usage: nmcli connection modify { ARGUMENTS | help }\n" @@ -1078,25 +1247,25 @@ msgstr "" "Modifiera en eller flera av anslutningsprofilens egenskaper.\n" "Profilen identifieras genom dess namn, UUID eller D-BUS-sökväg. För " "egenskaper\n" -"med flera värden kan du valfritt ange prefix '+' eller '-' till " +"med flera värden kan du valfritt ange prefix â€+†eller â€-†till " "egenskapsnamnet.\n" -"'+'-tecknet gör det möjligt att lägga till objekt istället för att skriva " +"â€+â€-tecknet gör det möjligt att lägga till objekt istället för att skriva " "över hela värdet.\n" -"'-'-tecknet gör det möjligt att ta bort markerade objekt istället för hela " +"â€-â€-tecknet gör det möjligt att ta bort markerade objekt istället för hela " "värdet.\n" "\n" "Exempel:\n" "nmcli con mod home-wifi wifi.ssid rakosnicek\n" -"nmcli con mod em1-1 ipv4.method manual ipv4.addr â€192.168.1.2/24, " -"10.10.1.5/8â€\n" +"nmcli con mod em1-1 ipv4.method manual ipv4.addr \"192.168.1.2/24, " +"10.10.1.5/8\"\n" "nmcli con mod em1-1 +ipv4.dns 8.8.4.4\n" "nmcli con mod em1-1 -ipv4.dns 1\n" -"nmcli con mod em1-1 -ipv6.addr â€abbe::cafe/56â€\n" +"nmcli con mod em1-1 -ipv6.addr \"abbe::cafe/56\"\n" "nmcli con mod bond0 +bond.options mii=500\n" "nmcli con mod bond0 -bond.options downdelay\n" "\n" -#: ../clients/cli/connections.c:425 +#: ../clients/cli/connections.c:435 #, c-format msgid "" "Usage: nmcli connection edit { ARGUMENTS | help }\n" @@ -1123,7 +1292,7 @@ msgstr "" "Lägg till en ny anslutningsprofil i en interaktiv redigerare.\n" "\n" -#: ../clients/cli/connections.c:440 +#: ../clients/cli/connections.c:450 #, c-format msgid "" "Usage: nmcli connection delete { ARGUMENTS | help }\n" @@ -1142,7 +1311,7 @@ msgstr "" "Profilen identifieras genom dess namn, UUID, och D-Bus-sökväg.\n" "\n" -#: ../clients/cli/connections.c:451 +#: ../clients/cli/connections.c:461 #, c-format msgid "" "Usage: nmcli connection reload { help }\n" @@ -1155,7 +1324,7 @@ msgstr "" "Läs om alla anslutningsfiler frÃ¥n disk.\n" "\n" -#: ../clients/cli/connections.c:459 +#: ../clients/cli/connections.c:469 #, c-format msgid "" "Usage: nmcli connection load { ARGUMENTS | help }\n" @@ -1179,219 +1348,192 @@ msgstr "" "tillstÃ¥nd.\n" "\n" -#: ../clients/cli/connections.c:530 +#: ../clients/cli/connections.c:540 msgid "activating" msgstr "aktiverar" -#: ../clients/cli/connections.c:532 +#: ../clients/cli/connections.c:542 msgid "activated" msgstr "aktiverad" -#: ../clients/cli/connections.c:536 +#: ../clients/cli/connections.c:546 msgid "deactivated" msgstr "inaktiverad" -#: ../clients/cli/connections.c:548 +#: ../clients/cli/connections.c:558 msgid "VPN connecting (prepare)" msgstr "VPN ansluter (förbereder)" -#: ../clients/cli/connections.c:550 +#: ../clients/cli/connections.c:560 msgid "VPN connecting (need authentication)" msgstr "VPN ansluter (behöver autentisering)" -#: ../clients/cli/connections.c:552 +#: ../clients/cli/connections.c:562 msgid "VPN connecting" msgstr "VPN ansluter" -#: ../clients/cli/connections.c:554 +#: ../clients/cli/connections.c:564 msgid "VPN connecting (getting IP configuration)" msgstr "VPN ansluter (hämtar IP-konfiguration)" -#: ../clients/cli/connections.c:556 +#: ../clients/cli/connections.c:566 msgid "VPN connected" msgstr "VPN ansluten" -#: ../clients/cli/connections.c:558 +#: ../clients/cli/connections.c:568 msgid "VPN connection failed" msgstr "VPN-anslutning misslyckades" -#: ../clients/cli/connections.c:560 +#: ../clients/cli/connections.c:570 msgid "VPN disconnected" msgstr "VPN frÃ¥nkopplad" -#: ../clients/cli/connections.c:628 +#: ../clients/cli/connections.c:640 +#, c-format +msgid "Error updating secrets for %s: %s\n" +msgstr "Fel vid uppdatering av hemligheterna för %s: %s\n" + +#: ../clients/cli/connections.c:660 msgid "Connection profile details" msgstr "Detaljer för anslutningsprofil" -#: ../clients/cli/connections.c:640 ../clients/cli/connections.c:1050 +#: ../clients/cli/connections.c:672 ../clients/cli/connections.c:1081 #, c-format msgid "Error: 'connection show': %s" msgstr "Fel: â€connection showâ€: %s" -#: ../clients/cli/connections.c:786 +#: ../clients/cli/connections.c:818 msgid "never" msgstr "aldrig" -#. "CAPABILITIES" -#: ../clients/cli/connections.c:787 ../clients/cli/connections.c:789 -#: ../clients/cli/connections.c:791 ../clients/cli/connections.c:823 -#: ../clients/cli/connections.c:890 ../clients/cli/connections.c:891 -#: ../clients/cli/connections.c:893 ../clients/cli/connections.c:2817 -#: ../clients/cli/connections.c:6544 ../clients/cli/connections.c:6545 -#: ../clients/cli/devices.c:586 ../clients/cli/devices.c:636 -#: ../clients/cli/devices.c:845 ../clients/cli/devices.c:846 -#: ../clients/cli/devices.c:847 ../clients/cli/devices.c:848 -#: ../clients/cli/devices.c:881 ../clients/cli/devices.c:883 -#: ../clients/cli/devices.c:911 ../clients/cli/devices.c:912 -#: ../clients/cli/devices.c:913 ../clients/cli/devices.c:914 -#: ../clients/cli/devices.c:915 ../clients/cli/devices.c:916 -#: ../clients/cli/devices.c:917 ../clients/cli/general.c:420 -msgid "yes" -msgstr "ja" - -#: ../clients/cli/connections.c:787 ../clients/cli/connections.c:789 -#: ../clients/cli/connections.c:791 ../clients/cli/connections.c:890 -#: ../clients/cli/connections.c:891 ../clients/cli/connections.c:893 -#: ../clients/cli/connections.c:2818 ../clients/cli/connections.c:6544 -#: ../clients/cli/connections.c:6545 ../clients/cli/devices.c:586 -#: ../clients/cli/devices.c:636 ../clients/cli/devices.c:845 -#: ../clients/cli/devices.c:846 ../clients/cli/devices.c:847 -#: ../clients/cli/devices.c:848 ../clients/cli/devices.c:881 -#: ../clients/cli/devices.c:883 ../clients/cli/devices.c:911 -#: ../clients/cli/devices.c:912 ../clients/cli/devices.c:913 -#: ../clients/cli/devices.c:914 ../clients/cli/devices.c:915 -#: ../clients/cli/devices.c:916 ../clients/cli/devices.c:917 -#: ../clients/cli/general.c:422 -msgid "no" -msgstr "nej" - -#: ../clients/cli/connections.c:1038 +#: ../clients/cli/connections.c:1069 msgid "Activate connection details" msgstr "Aktivera anslutningsdetaljer" -#: ../clients/cli/connections.c:1271 +#: ../clients/cli/connections.c:1305 #, c-format msgid "invalid field '%s'; allowed fields: %s and %s, or %s,%s" msgstr "ogiltigt fält â€%sâ€; tillÃ¥tna fält: %s och %s, eller %s, %s" -#: ../clients/cli/connections.c:1286 ../clients/cli/connections.c:1294 +#: ../clients/cli/connections.c:1320 ../clients/cli/connections.c:1328 #, c-format msgid "'%s' has to be alone" msgstr "â€%s†mÃ¥ste vara ensamt" #. Add headers -#: ../clients/cli/connections.c:1348 +#: ../clients/cli/connections.c:1383 msgid "NetworkManager active profiles" msgstr "Aktiva profiler för Nätverkshanteraren" -#: ../clients/cli/connections.c:1349 +#: ../clients/cli/connections.c:1384 msgid "NetworkManager connection profiles" msgstr "Anslutningsprofiler för Nätverkshanteraren" -#: ../clients/cli/connections.c:1389 ../clients/cli/connections.c:1998 -#: ../clients/cli/connections.c:2014 ../clients/cli/connections.c:2023 -#: ../clients/cli/connections.c:2033 ../clients/cli/connections.c:2112 -#: ../clients/cli/connections.c:8052 ../clients/cli/connections.c:8269 -#: ../clients/cli/devices.c:1866 ../clients/cli/devices.c:1874 -#: ../clients/cli/devices.c:2190 ../clients/cli/devices.c:2197 -#: ../clients/cli/devices.c:2211 ../clients/cli/devices.c:2218 -#: ../clients/cli/devices.c:2235 ../clients/cli/devices.c:2243 -#: ../clients/cli/devices.c:2431 ../clients/cli/devices.c:2527 -#: ../clients/cli/devices.c:2534 +#: ../clients/cli/connections.c:1424 ../clients/cli/connections.c:2152 +#: ../clients/cli/connections.c:2174 ../clients/cli/connections.c:2183 +#: ../clients/cli/connections.c:2193 ../clients/cli/connections.c:2203 +#: ../clients/cli/connections.c:2365 ../clients/cli/connections.c:8815 +#: ../clients/cli/connections.c:9020 ../clients/cli/devices.c:2028 +#: ../clients/cli/devices.c:2036 ../clients/cli/devices.c:2359 +#: ../clients/cli/devices.c:2366 ../clients/cli/devices.c:2380 +#: ../clients/cli/devices.c:2387 ../clients/cli/devices.c:2404 +#: ../clients/cli/devices.c:2412 ../clients/cli/devices.c:2425 +#: ../clients/cli/devices.c:2669 ../clients/cli/devices.c:2676 +#: ../clients/cli/devices.c:2795 ../clients/cli/devices.c:2802 #, c-format msgid "Error: %s argument is missing." msgstr "Fel: %s-argument saknas." -#: ../clients/cli/connections.c:1404 +#: ../clients/cli/connections.c:1439 #, c-format msgid "Error: %s - no such connection profile." msgstr "Fel: %s - inga sÃ¥dana anslutningsprofiler." -#: ../clients/cli/connections.c:1461 ../clients/cli/connections.c:2057 -#: ../clients/cli/connections.c:8558 ../clients/cli/devices.c:2410 -#: ../clients/cli/devices.c:2875 ../clients/cli/general.c:517 -#: ../clients/cli/general.c:563 ../clients/cli/general.c:580 -#: ../clients/cli/general.c:619 ../clients/cli/general.c:633 -#: ../clients/cli/general.c:748 ../clients/cli/general.c:792 -#: ../clients/cli/general.c:812 +#: ../clients/cli/connections.c:1498 ../clients/cli/connections.c:2226 +#: ../clients/cli/connections.c:9331 ../clients/cli/devices.c:2636 +#: ../clients/cli/devices.c:3149 ../clients/cli/general.c:518 +#: ../clients/cli/general.c:567 ../clients/cli/general.c:584 +#: ../clients/cli/general.c:623 ../clients/cli/general.c:637 +#: ../clients/cli/general.c:755 ../clients/cli/general.c:802 +#: ../clients/cli/general.c:822 #, c-format msgid "Error: %s." msgstr "Fel: %s." -#: ../clients/cli/connections.c:1556 +#: ../clients/cli/connections.c:1594 #, c-format msgid "no active connection on device '%s'" msgstr "ingen aktiv anslutning pÃ¥ enheten â€%sâ€" -#: ../clients/cli/connections.c:1564 +#: ../clients/cli/connections.c:1602 msgid "no active connection or device" msgstr "ingen aktiv anslutning eller enhet" -#: ../clients/cli/connections.c:1635 +#: ../clients/cli/connections.c:1673 #, c-format msgid "device '%s' not compatible with connection '%s'" msgstr "enheten â€%s†är inte kompatibel med anslutningen â€%sâ€" -#: ../clients/cli/connections.c:1638 +#: ../clients/cli/connections.c:1676 #, c-format msgid "no device found for connection '%s'" msgstr "ingen enhet hittades för anslutningen â€%sâ€" -#: ../clients/cli/connections.c:1650 +#: ../clients/cli/connections.c:1688 msgid "unknown reason" msgstr "okänd anledning" -#: ../clients/cli/connections.c:1652 ../clients/cli/general.c:271 +#: ../clients/cli/connections.c:1690 ../clients/cli/general.c:272 msgid "none" msgstr "ingen" -#: ../clients/cli/connections.c:1654 +#: ../clients/cli/connections.c:1692 msgid "the user was disconnected" msgstr "användaren kopplades frÃ¥n" -#: ../clients/cli/connections.c:1656 +#: ../clients/cli/connections.c:1694 msgid "the base network connection was interrupted" msgstr "basnätverksanslutningen avbröts" -#: ../clients/cli/connections.c:1658 +#: ../clients/cli/connections.c:1696 msgid "the VPN service stopped unexpectedly" msgstr "VPN-tjänsten stoppades oväntat" -#: ../clients/cli/connections.c:1660 +#: ../clients/cli/connections.c:1698 msgid "the VPN service returned invalid configuration" msgstr "VPN-tjänsten returnerade en ogiltig konfiguration" -#: ../clients/cli/connections.c:1662 +#: ../clients/cli/connections.c:1700 msgid "the connection attempt timed out" msgstr "anslutningsförsöket översteg tidsgränsen" -#: ../clients/cli/connections.c:1664 +#: ../clients/cli/connections.c:1702 msgid "the VPN service did not start in time" msgstr "VPN-tjänsten startade inte i tid" -#: ../clients/cli/connections.c:1666 +#: ../clients/cli/connections.c:1704 msgid "the VPN service failed to start" msgstr "VPN-tjänsten misslyckades med att starta" -#: ../clients/cli/connections.c:1668 +#: ../clients/cli/connections.c:1706 msgid "no valid VPN secrets" msgstr "inga giltiga VPN-hemligheter" -#: ../clients/cli/connections.c:1670 +#: ../clients/cli/connections.c:1708 msgid "invalid VPN secrets" msgstr "ogiltiga VPN-hemligheter" -#: ../clients/cli/connections.c:1672 +#: ../clients/cli/connections.c:1710 msgid "the connection was removed" msgstr "anslutningen togs bort" -#: ../clients/cli/connections.c:1694 ../clients/cli/connections.c:1722 -#: ../clients/cli/connections.c:1877 ../clients/cli/connections.c:6435 +#: ../clients/cli/connections.c:1732 ../clients/cli/connections.c:1760 +#: ../clients/cli/connections.c:1921 ../clients/cli/connections.c:7130 #, c-format msgid "Connection successfully activated (D-Bus active path: %s)\n" msgstr "Anslutning aktiverades (aktiv sökväg för D-Bus: %s)\n" -#: ../clients/cli/connections.c:1701 +#: ../clients/cli/connections.c:1739 #, c-format msgid "" "Connection successfully activated (master waiting for slaves) (D-Bus active " @@ -1400,580 +1542,669 @@ msgstr "" "Anslutning aktiverades (master väntar pÃ¥ slavar) (aktiv sökväg för D-Bus: " "%s)\n" -#: ../clients/cli/connections.c:1705 ../clients/cli/connections.c:1728 +#: ../clients/cli/connections.c:1743 ../clients/cli/connections.c:1765 #, c-format msgid "Error: Connection activation failed." msgstr "Fel: Aktivering av anslutning misslyckades." -#: ../clients/cli/connections.c:1772 +#: ../clients/cli/connections.c:1816 #, c-format msgid "VPN connection successfully activated (D-Bus active path: %s)\n" msgstr "VPN-anslutning aktiverad (aktiv sökväg för D-Bus: %s)\n" -#: ../clients/cli/connections.c:1780 +#: ../clients/cli/connections.c:1824 #, c-format msgid "Error: Connection activation failed: %s." msgstr "Fel: Aktivering av anslutning misslyckades: %s." -#: ../clients/cli/connections.c:1799 ../clients/cli/devices.c:1319 +#: ../clients/cli/connections.c:1843 ../clients/cli/devices.c:1339 #, c-format msgid "Error: Timeout %d sec expired." msgstr "Fel: Tidsgränsen %d sekunder gick ut." -#: ../clients/cli/connections.c:1859 +#: ../clients/cli/connections.c:1903 #, c-format msgid "Error: Connection activation failed: %s" msgstr "Fel: Aktivering av anslutning misslyckades: %s" -#: ../clients/cli/connections.c:1936 ../clients/cli/connections.c:2058 +#: ../clients/cli/connections.c:1988 +#, c-format +msgid "failed to read passwd-file '%s': %s" +msgstr "misslyckades med att läsa lösenordsfilen â€%sâ€: %s" + +#: ../clients/cli/connections.c:2000 +#, c-format +msgid "missing colon in 'password' entry '%s'" +msgstr "saknar kolon i â€passwordâ€-posten â€%sâ€" + +#: ../clients/cli/connections.c:2008 +#, c-format +msgid "missing dot in 'password' entry '%s'" +msgstr "saknar punkt i â€passwordâ€-posten â€%sâ€" + +#: ../clients/cli/connections.c:2021 +#, c-format +msgid "invalid setting name in 'password' entry '%s'" +msgstr "ogiltig inställning i â€passwordâ€-posten â€%sâ€" + +#: ../clients/cli/connections.c:2068 ../clients/cli/connections.c:2227 msgid "unknown error" -msgstr "Okänt fel" +msgstr "okänt fel" -#: ../clients/cli/connections.c:1944 +#: ../clients/cli/connections.c:2077 #, c-format msgid "unknown device '%s'." -msgstr "Okänd enhet â€%sâ€" +msgstr "okänd enhet â€%sâ€." -#: ../clients/cli/connections.c:1949 +#: ../clients/cli/connections.c:2082 msgid "neither a valid connection nor device given" msgstr "ingen aktiv anslutning eller enhet angiven" -#: ../clients/cli/connections.c:2042 ../clients/cli/devices.c:1218 -#: ../clients/cli/devices.c:1880 ../clients/cli/devices.c:2254 -#: ../clients/cli/devices.c:2540 +#: ../clients/cli/connections.c:2165 +#, c-format +msgid "Error: Connection '%s' does not exist." +msgstr "Fel: anslutningen â€%s†finns inte." + +#: ../clients/cli/connections.c:2211 ../clients/cli/devices.c:1238 +#: ../clients/cli/devices.c:2042 ../clients/cli/devices.c:2436 +#: ../clients/cli/devices.c:2682 ../clients/cli/devices.c:2808 #, c-format msgid "Unknown parameter: %s\n" msgstr "Okänd parameter: %s\n" -#: ../clients/cli/connections.c:2066 +#: ../clients/cli/connections.c:2235 msgid "preparing" msgstr "förbereder" -#: ../clients/cli/connections.c:2094 ../clients/cli/connections.c:8250 -#: ../clients/cli/connections.c:8364 +#: ../clients/cli/connections.c:2259 +#, c-format +msgid "Connection '%s' (%s) successfully deleted.\n" +msgstr "Anslutningen â€%s†(%s) togs bort.\n" + +#: ../clients/cli/connections.c:2275 +#, c-format +msgid "Connection '%s' successfully deactivated (D-Bus active path: %s)\n" +msgstr "Anslutningen â€%s†inaktiverades (aktiv sökväg för D-Bus: %s)\n" + +#: ../clients/cli/connections.c:2347 ../clients/cli/connections.c:9006 +#: ../clients/cli/connections.c:9123 #, c-format msgid "Error: No connection specified." msgstr "Fel: Ingen anslutning angiven." -#: ../clients/cli/connections.c:2122 +#: ../clients/cli/connections.c:2379 +#, c-format +msgid "Error: '%s' is not an active connection.\n" +msgstr "Fel: â€%s†är inte en aktiv anslutning.\n" + +#: ../clients/cli/connections.c:2380 ../clients/cli/connections.c:9035 #, c-format -msgid "Error: '%s' is not an active connection." -msgstr "Fel: â€%s†är inte en aktiv anslutning." +msgid "Error: not all active connections found." +msgstr "Fel: hittade inte alla aktiva anslutningar." -#: ../clients/cli/connections.c:2423 ../clients/cli/utils.c:517 +#: ../clients/cli/connections.c:2389 +#, c-format +msgid "Error: no active connection provided." +msgstr "Fel: inga aktiva anslutningar tillhandahÃ¥llna." + +#: ../clients/cli/connections.c:2708 ../clients/cli/utils.c:569 #, c-format msgid "'%s' not among [%s]" msgstr "â€%s†inte bland [%s]" -#: ../clients/cli/connections.c:2502 +#: ../clients/cli/connections.c:2787 #, c-format msgid "Error: '%s': '%s' is not a valid %s MAC address." -msgstr "Fel: '%s': '%s' är inte en giltig %s-MAC-adress." +msgstr "Fel: â€%sâ€: â€%s†är inte en giltig %s-MAC-adress." #. Ask for optional arguments -#: ../clients/cli/connections.c:2503 ../clients/cli/connections.c:2933 -#: ../clients/tui/nm-editor-utils.c:164 ../libnm-core/nm-connection.c:1490 -#: ../libnm-glib/nm-device.c:1800 ../libnm/nm-device.c:1610 +#: ../clients/cli/connections.c:2788 ../clients/cli/connections.c:3273 +#: ../clients/tui/nm-editor-utils.c:164 ../libnm-core/nm-connection.c:1614 +#: ../libnm-glib/nm-device.c:1801 ../libnm/nm-device.c:1646 msgid "InfiniBand" msgstr "InfiniBand" -#: ../clients/cli/connections.c:2503 ../clients/tui/nm-editor-utils.c:147 -#: ../libnm-glib/nm-device.c:1788 ../libnm/nm-device.c:1598 +#: ../clients/cli/connections.c:2788 ../clients/tui/nm-editor-utils.c:147 +#: ../libnm-glib/nm-device.c:1789 ../libnm/nm-device.c:1634 msgid "Ethernet" msgstr "Ethernet" -#: ../clients/cli/connections.c:2523 +#: ../clients/cli/connections.c:2808 #, c-format msgid "Error: 'mtu': '%s' is not a valid MTU." msgstr "Fel: â€mtuâ€: â€%s†är inte ett giltigt MTU." -#: ../clients/cli/connections.c:2539 +#: ../clients/cli/connections.c:2824 #, c-format msgid "Error: 'parent': '%s' is not a valid interface name." msgstr "Fel: â€parentâ€: â€%s†är inte ett giltigt gränssnittsnamn." -#: ../clients/cli/connections.c:2560 +#: ../clients/cli/connections.c:2845 #, c-format msgid "Error: 'p-key': '%s' is not a valid InfiniBand P_KEY." msgstr "Fel: â€p-keyâ€: â€%s†är inte en giltig InfiniBand P_KEY." -#: ../clients/cli/connections.c:2589 +#: ../clients/cli/connections.c:2890 #, c-format -msgid "" -"Error: 'mode': '%s' is not a valid InfiniBand transport mode [datagram, " -"connected]." -msgstr "" -"Fel: â€mode“: â€%s†är inte ett giltigt transportläge för InfiniBand " -"[datagram, connected]." +msgid "Error: '%s': '%s' is not a valid %s %s." +msgstr "Fel: â€%sâ€: â€%s†är inte en giltig %s %s." + +#: ../clients/cli/connections.c:2903 +msgid "Wi-Fi mode" +msgstr "Wi-Fi-läge" + +#: ../clients/cli/connections.c:2912 +msgid "InfiniBand transport mode" +msgstr "InfiniBand transportläge" -#: ../clients/cli/connections.c:2603 +#: ../clients/cli/connections.c:2924 +msgid "ADSL protocol" +msgstr "ADSL-protokoll" + +#: ../clients/cli/connections.c:2935 +msgid "ADSL encapsulation" +msgstr "ADSL-inkapsling" + +#: ../clients/cli/connections.c:2948 #, c-format msgid "Error: 'flags': '%s' is not valid; use <0-7>." -msgstr "Fel: â€flagsâ€: â€%s†är inte giltig; använd <0-7>" +msgstr "Fel: â€flagsâ€: â€%s†är inte giltig; använd <0-7>." -#: ../clients/cli/connections.c:2625 +#: ../clients/cli/connections.c:2970 #, c-format msgid "Error: '%s': '%s' is not valid; %s " -msgstr "Fel: â€%sâ€: â€%s†är inte giltig; %s" +msgstr "Fel: â€%sâ€: â€%s†är inte giltig; %s " -#: ../clients/cli/connections.c:2808 +#: ../clients/cli/connections.c:3149 #, c-format msgid "Error: '%s': '%s' is not valid; use <%u-%u>." msgstr "Fel: â€%sâ€: â€%s†är inte giltig; använd <%u-%u>." #. Ask for optional arguments. -#: ../clients/cli/connections.c:2864 +#: ../clients/cli/connections.c:3205 #, c-format msgid "There is %d optional argument for '%s' connection type.\n" msgid_plural "There are %d optional arguments for '%s' connection type.\n" msgstr[0] "Det finns %d valfritt argument för anslutningstypen â€%sâ€.\n" msgstr[1] "Det finns %d valfria argument för anslutningstypen â€%sâ€.\n" -#: ../clients/cli/connections.c:2867 +#: ../clients/cli/connections.c:3208 #, c-format msgid "Do you want to provide it? %s" msgid_plural "Do you want to provide them? %s" msgstr[0] "Vill du tillhandahÃ¥lla det? %s" msgstr[1] "Vill du tillhandahÃ¥lla dem? %s" -#: ../clients/cli/connections.c:2882 +#. Ask for optional arguments +#: ../clients/cli/connections.c:3225 msgid "ethernet" msgstr "ethernet" -#: ../clients/cli/connections.c:2882 ../clients/tui/nm-editor-utils.c:155 -#: ../libnm-glib/nm-device.c:1790 ../libnm/nm-device.c:1600 -msgid "Wi-Fi" -msgstr "Wi-Fi" - -#: ../clients/cli/connections.c:2890 ../clients/cli/connections.c:2938 -#: ../clients/cli/connections.c:3047 ../clients/cli/connections.c:3126 +#: ../clients/cli/connections.c:3230 ../clients/cli/connections.c:3278 +#: ../clients/cli/connections.c:3412 ../clients/cli/connections.c:3491 msgid "MTU [auto]: " -msgstr "MTU [auto]:" +msgstr "MTU [auto]: " -#: ../clients/cli/connections.c:2901 ../clients/cli/connections.c:2949 -#: ../clients/cli/connections.c:3019 ../clients/cli/connections.c:3058 -#: ../clients/cli/connections.c:3430 +#: ../clients/cli/connections.c:3241 ../clients/cli/connections.c:3289 +#: ../clients/cli/connections.c:3384 ../clients/cli/connections.c:3423 +#: ../clients/cli/connections.c:3795 msgid "MAC [none]: " msgstr "MAC [none]: " -#: ../clients/cli/connections.c:2912 +#: ../clients/cli/connections.c:3252 msgid "Cloned MAC [none]: " msgstr "Klonad MAC [none]: " -#: ../clients/cli/connections.c:2960 +#: ../clients/cli/connections.c:3300 #, c-format msgid "Transport mode %s" msgstr "Transportläge %s" -#: ../clients/cli/connections.c:2973 +#: ../clients/cli/connections.c:3313 msgid "Parent interface [none]: " -msgstr "Föräldragränssnitt [none]: " +msgstr "Överordnat gränssnitt [none]: " -#: ../clients/cli/connections.c:2984 +#: ../clients/cli/connections.c:3324 msgid "P_KEY [none]: " msgstr "P_KEY [none]: " -#: ../clients/cli/connections.c:2994 +#: ../clients/cli/connections.c:3334 #, c-format msgid "Error: 'p-key' is mandatory when 'parent' is specified.\n" msgstr "Fel: â€p-key†är obligatoriskt när â€parent†är angett.\n" +#. Ask for optional arguments +#: ../clients/cli/connections.c:3351 ../clients/tui/nm-editor-utils.c:155 +#: ../libnm-glib/nm-device.c:1791 ../libnm/nm-device.c:1636 +msgid "Wi-Fi" +msgstr "Wi-Fi" + +#: ../clients/cli/connections.c:3359 +#, c-format +msgid "Mode %s" +msgstr "Läge %s" + #. Ask for optional 'wimax' arguments. -#: ../clients/cli/connections.c:3014 ../libnm-glib/nm-device.c:1796 -#: ../libnm/nm-device.c:1606 +#: ../clients/cli/connections.c:3379 ../libnm-glib/nm-device.c:1797 +#: ../libnm/nm-device.c:1642 msgid "WiMAX" msgstr "WiMAX" #. Ask for optional 'pppoe' arguments. -#: ../clients/cli/connections.c:3037 +#: ../clients/cli/connections.c:3402 msgid "PPPoE" msgstr "PPPoE" -#: ../clients/cli/connections.c:3041 ../clients/cli/connections.c:3079 +#: ../clients/cli/connections.c:3406 ../clients/cli/connections.c:3444 +#: ../clients/cli/connections.c:3917 msgid "Password [none]: " -msgstr "Lösenord [none]:" +msgstr "Lösenord [none]: " -#: ../clients/cli/connections.c:3043 +#: ../clients/cli/connections.c:3408 msgid "Service [none]: " -msgstr "Tjänst [none]:" +msgstr "Tjänst [none]: " #. Ask for optional 'gsm' or 'cdma' arguments. -#: ../clients/cli/connections.c:3073 +#: ../clients/cli/connections.c:3438 msgid "mobile broadband" msgstr "mobilt bredband" -#: ../clients/cli/connections.c:3077 ../clients/cli/connections.c:3502 +#: ../clients/cli/connections.c:3442 ../clients/cli/connections.c:3867 msgid "Username [none]: " -msgstr "Användarnamn [none]:" +msgstr "Användarnamn [none]: " #. Ask for optional 'bluetooth' arguments. -#: ../clients/cli/connections.c:3092 +#: ../clients/cli/connections.c:3457 msgid "bluetooth" msgstr "bluetooth" -#: ../clients/cli/connections.c:3099 +#: ../clients/cli/connections.c:3464 #, c-format msgid "Bluetooth type %s" msgstr "Bluetooth-typen %s" -#: ../clients/cli/connections.c:3105 +#: ../clients/cli/connections.c:3470 #, c-format msgid "Error: 'bt-type': '%s' is not a valid bluetooth type.\n" -msgstr "Fel: â€bt-type'â€: â€%s†är inte en giltig Bluetoothtyp.\n" +msgstr "Fel: â€bt-typeâ€: â€%s†är inte en giltig Bluetoothtyp.\n" #. Ask for optional 'vlan' arguments. #. 13 -#: ../clients/cli/connections.c:3121 ../clients/cli/devices.c:230 -#: ../clients/tui/nm-editor-utils.c:218 ../clients/tui/nmt-page-vlan.c:51 -#: ../libnm-core/nm-connection.c:1488 ../libnm-glib/nm-device.c:1808 -#: ../libnm-util/nm-connection.c:1612 ../libnm/nm-device.c:1618 +#: ../clients/cli/connections.c:3486 ../clients/cli/devices.c:240 +#: ../clients/tui/nm-editor-utils.c:218 ../clients/tui/nmt-page-vlan.c:97 +#: ../libnm-core/nm-connection.c:1612 ../libnm-glib/nm-device.c:1809 +#: ../libnm-util/nm-connection.c:1614 ../libnm/nm-device.c:1654 msgid "VLAN" msgstr "VLAN" -#: ../clients/cli/connections.c:3137 +#: ../clients/cli/connections.c:3502 msgid "VLAN flags (<0-7>) [none]: " -msgstr "VLAN-flaggor (<0-7>) [none]:" +msgstr "VLAN-flaggor (<0-7>) [none]: " -#: ../clients/cli/connections.c:3148 +#: ../clients/cli/connections.c:3513 msgid "Ingress priority maps [none]: " -msgstr "Inträdesprioritetshash [none]:" +msgstr "Inträdesprioritetshash [none]: " -#: ../clients/cli/connections.c:3159 +#: ../clients/cli/connections.c:3524 msgid "Egress priority maps [none]: " -msgstr "Utträdesprioritetshash [none]:" +msgstr "Utträdesprioritetshash [none]: " -#: ../clients/cli/connections.c:3170 +#: ../clients/cli/connections.c:3535 msgid "Bonding mode [balance-rr]: " -msgstr "Kombineringsläge [balance-rr]:" +msgstr "Kombineringsläge [balance-rr]: " #. Ask for optional 'bond' arguments. -#: ../clients/cli/connections.c:3186 +#: ../clients/cli/connections.c:3551 msgid "bond" msgstr "kombinera" -#: ../clients/cli/connections.c:3208 +#: ../clients/cli/connections.c:3573 msgid "Bonding primary interface [none]: " -msgstr "Kombinerar primärt gränssnittet [none]:" +msgstr "Kombinerar primärt gränssnittet [none]: " -#: ../clients/cli/connections.c:3211 +#: ../clients/cli/connections.c:3576 #, c-format msgid "Error: 'primary': '%s' is not a valid interface name.\n" msgstr "Fel: â€primaryâ€: â€%s†är inte ett giltigt gränssnittsnamn.\n" -#: ../clients/cli/connections.c:3219 +#: ../clients/cli/connections.c:3584 #, c-format msgid "Bonding monitoring mode %s" msgstr "Kombinerar övervakningsläget %s" -#: ../clients/cli/connections.c:3225 +#: ../clients/cli/connections.c:3590 #, c-format msgid "Error: '%s' is not a valid monitoring mode; use '%s' or '%s'.\n" msgstr "" "Fel: â€%sâ€: är inte ett giltigt övervakningsläge; använd â€%s†eller â€%sâ€.\n" -#: ../clients/cli/connections.c:3234 +#: ../clients/cli/connections.c:3599 msgid "Bonding miimon [100]: " -msgstr "Kombinerar miimon [100]:" +msgstr "Kombinerar miimon [100]: " -#: ../clients/cli/connections.c:3237 +#: ../clients/cli/connections.c:3602 #, c-format msgid "Error: 'miimon': '%s' is not a valid number <0-%u>.\n" msgstr "Fel: â€miimon†: â€%s†är inte ett giltigt nummer <0-%u>.\n" -#: ../clients/cli/connections.c:3245 +#: ../clients/cli/connections.c:3610 msgid "Bonding downdelay [0]: " -msgstr "Kombinerar nedfördröjning [0]:" +msgstr "Kombinerar nedfördröjning [0]: " -#: ../clients/cli/connections.c:3248 +#: ../clients/cli/connections.c:3613 #, c-format msgid "Error: 'downdelay': '%s' is not a valid number <0-%u>.\n" msgstr "Fel: â€downdelayâ€: â€%s†är inte ett giltigt nummer <0-%u>.\n" -#: ../clients/cli/connections.c:3256 +#: ../clients/cli/connections.c:3621 msgid "Bonding updelay [0]: " -msgstr "Kombinerar uppfördröjning [0]:" +msgstr "Kombinerar uppfördröjning [0]: " -#: ../clients/cli/connections.c:3259 +#: ../clients/cli/connections.c:3624 #, c-format msgid "Error: 'updelay': '%s' is not a valid number <0-%u>.\n" msgstr "Fel: â€updelayâ€: â€%s†är inte ett giltigt nummer <0-%u>.\n" -#: ../clients/cli/connections.c:3268 +#: ../clients/cli/connections.c:3633 msgid "Bonding arp-interval [0]: " -msgstr "Kombinerar arp-intervall [0]:" +msgstr "Kombinerar arp-intervall [0]: " -#: ../clients/cli/connections.c:3271 +#: ../clients/cli/connections.c:3636 #, c-format msgid "Error: 'arp-interval': '%s' is not a valid number <0-%u>.\n" msgstr "Fel: â€arp-intervalâ€: â€%s†är inte ett giltigt nummer <0-%u>.\n" #. FIXME: verify the string -#: ../clients/cli/connections.c:3279 +#: ../clients/cli/connections.c:3644 msgid "Bonding arp-ip-target [none]: " -msgstr "Kombinerar arp-ip-target [none]:" +msgstr "Kombinerar arp-ip-target [none]: " -#: ../clients/cli/connections.c:3286 +#: ../clients/cli/connections.c:3651 msgid "LACP rate ('slow' or 'fast') [slow]: " -msgstr "LACP-hastighet (\"slow\" eller \"fast\") [slow]:" +msgstr "LACP-hastighet (\"slow\" eller \"fast\") [slow]: " -#: ../clients/cli/connections.c:3292 +#: ../clients/cli/connections.c:3657 #, c-format msgid "Error: 'lacp_rate': '%s' is invalid ('slow' or 'fast').\n" msgstr "Fel: â€lacp-rateâ€: â€%s†är ogiltig (â€slow†eller â€fastâ€).\n" -#: ../clients/cli/connections.c:3315 +#: ../clients/cli/connections.c:3680 msgid "Team JSON configuration [none]: " -msgstr "JSON-konfiguration för grupp [none]:" +msgstr "JSON-konfiguration för grupp [none]: " -#: ../clients/cli/connections.c:3332 +#: ../clients/cli/connections.c:3697 msgid "team" msgstr "grupp" -#: ../clients/cli/connections.c:3338 +#: ../clients/cli/connections.c:3703 msgid "team-slave" msgstr "grupp-slav" #. Ask for optional 'bridge' arguments. -#: ../clients/cli/connections.c:3350 +#: ../clients/cli/connections.c:3715 msgid "bridge" msgstr "brygga" -#: ../clients/cli/connections.c:3356 +#: ../clients/cli/connections.c:3721 #, c-format msgid "Enable STP %s" msgstr "Aktivera STP %s" -#: ../clients/cli/connections.c:3361 +#: ../clients/cli/connections.c:3726 #, c-format msgid "Error: 'stp': %s.\n" msgstr "Fel: â€stpâ€: %s.\n" -#: ../clients/cli/connections.c:3369 +#: ../clients/cli/connections.c:3734 msgid "STP priority [32768]: " -msgstr "STP-prioritet [32768]:" +msgstr "STP-prioritet [32768]: " -#: ../clients/cli/connections.c:3373 +#: ../clients/cli/connections.c:3738 #, c-format msgid "Error: 'priority': '%s' is not a valid number <0-%d>.\n" msgstr "Fel: â€priorityâ€: â€%s†är inte ett giltigt nummer <0-%d>.\n" -#: ../clients/cli/connections.c:3381 +#: ../clients/cli/connections.c:3746 msgid "Forward delay [15]: " -msgstr "FramÃ¥tfördröjning [15]:" +msgstr "FramÃ¥tfördröjning [15]: " -#: ../clients/cli/connections.c:3385 +#: ../clients/cli/connections.c:3750 #, c-format msgid "Error: 'forward-delay': '%s' is not a valid number <2-30>.\n" msgstr "Fel: â€forward-delayâ€: â€%s†är inte ett giltigt nummer <2-30>.\n" -#: ../clients/cli/connections.c:3394 +#: ../clients/cli/connections.c:3759 msgid "Hello time [2]: " -msgstr "HallÃ¥-tid [2]:" +msgstr "HallÃ¥-tid [2]: " -#: ../clients/cli/connections.c:3398 +#: ../clients/cli/connections.c:3763 #, c-format msgid "Error: 'hello-time': '%s' is not a valid number <1-10>.\n" msgstr "Fel: â€hello-timeâ€: â€%s†är inte ett giltigt nummer <1-10>.\n" -#: ../clients/cli/connections.c:3406 +#: ../clients/cli/connections.c:3771 msgid "Max age [20]: " -msgstr "Max Ã¥lder [20]:" +msgstr "Max Ã¥lder [20]: " -#: ../clients/cli/connections.c:3410 +#: ../clients/cli/connections.c:3775 #, c-format msgid "Error: 'max-age': '%s' is not a valid number <6-40>.\n" msgstr "Fel: â€max-ageâ€: â€%s†är inte ett giltig nummer <6-40>.\n" -#: ../clients/cli/connections.c:3418 +#: ../clients/cli/connections.c:3783 msgid "MAC address ageing time [300]: " -msgstr "Livstid för MAC-adress [300]:" +msgstr "Livstid för MAC-adress [300]: " -#: ../clients/cli/connections.c:3422 +#: ../clients/cli/connections.c:3787 #, c-format msgid "Error: 'ageing-time': '%s' is not a valid number <0-1000000>.\n" msgstr "Fel: â€ageing-timeâ€: â€%s†är inte ett giltig nummer <0-1000000>.\n" #. Ask for optional 'bridge-slave' arguments. -#: ../clients/cli/connections.c:3449 +#: ../clients/cli/connections.c:3814 msgid "bridge-slave" msgstr "brygga-slav" -#: ../clients/cli/connections.c:3454 +#: ../clients/cli/connections.c:3819 msgid "Bridge port priority [32]: " -msgstr "Prioritet för bryggport [32]:" +msgstr "Prioritet för bryggport [32]: " -#: ../clients/cli/connections.c:3467 +#: ../clients/cli/connections.c:3832 msgid "Bridge port STP path cost [100]: " -msgstr "STP-sökvägskostnad för bryggport [100]:" +msgstr "STP-sökvägskostnad för bryggport [100]: " -#: ../clients/cli/connections.c:3481 +#: ../clients/cli/connections.c:3846 #, c-format msgid "Hairpin %s" msgstr "HÃ¥rnÃ¥l %s" -#: ../clients/cli/connections.c:3486 +#: ../clients/cli/connections.c:3851 #, c-format msgid "Error: 'hairpin': %s.\n" msgstr "Fel: â€hairpinâ€: %s.\n" #. Ask for optional 'olpc' arguments. -#: ../clients/cli/connections.c:3513 ../libnm-glib/nm-device.c:1794 -#: ../libnm/nm-device.c:1604 +#: ../clients/cli/connections.c:3878 ../libnm-glib/nm-device.c:1795 +#: ../libnm/nm-device.c:1640 msgid "OLPC Mesh" msgstr "OLPC-mesh" -#: ../clients/cli/connections.c:3518 +#: ../clients/cli/connections.c:3883 msgid "OLPC Mesh channel [1]: " -msgstr "OLPC-meshkanal [1]:" +msgstr "OLPC-meshkanal [1]: " -#: ../clients/cli/connections.c:3521 +#: ../clients/cli/connections.c:3886 #, c-format msgid "Error: 'channel': '%s' is not a valid number <1-13>.\n" msgstr "Fel: â€channelâ€: â€%s†är inte ett giltigt nummer <1-13>.\n" -#: ../clients/cli/connections.c:3529 +#: ../clients/cli/connections.c:3894 msgid "DHCP anycast MAC address [none]: " -msgstr "DHCP-anycast MAC-adress [ingen]:" +msgstr "DHCP-anycast MAC-adress [none]: " + +#. Ask for optional 'adsl' arguments. +#: ../clients/cli/connections.c:3913 ../libnm-glib/nm-device.c:1811 +#: ../libnm/nm-device.c:1656 +msgid "ADSL" +msgstr "ADSL" -#: ../clients/cli/connections.c:3574 -msgid "IPv4 address (IP[/plen] [gateway]) [none]: " -msgstr "IPv4-adress (IP[/plen] [gateway]) [none]: " +#: ../clients/cli/connections.c:3921 +#, c-format +msgid "ADSL encapsulation %s" +msgstr "ADSL-inkapsling %s" -#: ../clients/cli/connections.c:3576 -msgid "IPv6 address (IP[/plen] [gateway]) [none]: " -msgstr "IPv6-adress (IP[/plen] [gateway]) [none]: " +#: ../clients/cli/connections.c:3963 +msgid "IPv4 address (IP[/plen]) [none]: " +msgstr "IPv4-adress (IP[/plen]) [none]: " -#: ../clients/cli/connections.c:3594 +#: ../clients/cli/connections.c:3965 +msgid "IPv6 address (IP[/plen]) [none]: " +msgstr "IPv6-adress (IP[/plen]) [none]: " + +#: ../clients/cli/connections.c:3979 #, c-format -msgid " Address successfully added: %s %s\n" -msgstr " Adress lades till: %s %s\n" +msgid " Address successfully added: %s\n" +msgstr " Adress lades till: %s\n" -#: ../clients/cli/connections.c:3596 +#: ../clients/cli/connections.c:3981 #, c-format -msgid " Warning: address already present: %s %s\n" -msgstr " Varning: adressen finns redan: %s %s\n" +msgid " Warning: address already present: %s\n" +msgstr " Varning: adressen finns redan: %s\n" -#: ../clients/cli/connections.c:3598 +#: ../clients/cli/connections.c:3983 #, c-format msgid " Warning: ignoring garbage at the end: '%s'\n" -msgstr " Varning: ignorerar skräp pÃ¥ slutet: '%s'\n" +msgstr " Varning: ignorerar skräp pÃ¥ slutet: â€%sâ€\n" -#: ../clients/cli/connections.c:3600 ../clients/cli/connections.c:4431 -#: ../clients/cli/connections.c:4492 ../clients/cli/connections.c:4894 -#: ../clients/cli/connections.c:4904 +#: ../clients/cli/connections.c:3985 ../clients/cli/connections.c:4867 +#: ../clients/cli/connections.c:4928 ../clients/cli/connections.c:5401 +#: ../clients/cli/connections.c:5434 msgid "Error: " -msgstr "Fel:" +msgstr "Fel: " + +#: ../clients/cli/connections.c:4005 +msgid "IPv4 gateway [none]: " +msgstr "IPv4-gateway [none]: " + +#: ../clients/cli/connections.c:4008 +msgid "IPv6 gateway [none]: " +msgstr "IPv6-gateway [none]: " + +#: ../clients/cli/connections.c:4028 +#, c-format +msgid "Error: invalid gateway address '%s'\n" +msgstr "Fel: ogiltig gateway-adress â€%sâ€\n" #. Ask for IP addresses -#: ../clients/cli/connections.c:3617 +#: ../clients/cli/connections.c:4041 #, c-format msgid "Do you want to add IP addresses? %s" msgstr "Vill du lägga till IP-adresser? %s" -#: ../clients/cli/connections.c:3624 +#: ../clients/cli/connections.c:4049 #, c-format msgid "Press <Enter> to finish adding addresses.\n" msgstr "Tryck <Retur> för att sluta lägga till adresser.\n" -#: ../clients/cli/connections.c:3763 +#: ../clients/cli/connections.c:4189 #, c-format msgid "Error: 'parent': not valid without 'p-key'." msgstr "Fel: â€parentâ€: inte giltig utan â€p-keyâ€." -#: ../clients/cli/connections.c:3815 ../clients/cli/connections.c:4813 +#: ../clients/cli/connections.c:4244 ../clients/cli/connections.c:5249 msgid "SSID: " msgstr "SSID: " -#: ../clients/cli/connections.c:3818 ../clients/cli/connections.c:4816 +#: ../clients/cli/connections.c:4247 ../clients/cli/connections.c:5252 msgid "Error: 'ssid' is required." msgstr "Fel: â€ssid†krävs." -#: ../clients/cli/connections.c:3875 +#: ../clients/cli/connections.c:4311 msgid "WiMAX NSP name: " -msgstr "WiMAX NSP-lista:" +msgstr "WiMAX NSP-lista: " -#: ../clients/cli/connections.c:3878 +#: ../clients/cli/connections.c:4314 msgid "Error: 'nsp' is required." msgstr "Fel: â€nsp†krävs." -#: ../clients/cli/connections.c:3930 +#: ../clients/cli/connections.c:4366 msgid "PPPoE username: " -msgstr "PPPoE-användarnamn:" +msgstr "PPPoE-användarnamn: " -#: ../clients/cli/connections.c:3933 +#: ../clients/cli/connections.c:4369 ../clients/cli/connections.c:5319 msgid "Error: 'username' is required." -msgstr "Fel: â€username†krävs" +msgstr "Fel: â€username†krävs." -#: ../clients/cli/connections.c:4002 +#: ../clients/cli/connections.c:4438 msgid "APN: " msgstr "APN: " -#: ../clients/cli/connections.c:4005 +#: ../clients/cli/connections.c:4441 msgid "Error: 'apn' is required." msgstr "Fel: â€apn†krävs." -#: ../clients/cli/connections.c:4063 +#: ../clients/cli/connections.c:4499 msgid "Bluetooth device address: " -msgstr "Adress för Bluetooth-enhet:" +msgstr "Adress för Bluetooth-enhet: " -#: ../clients/cli/connections.c:4066 +#: ../clients/cli/connections.c:4502 msgid "Error: 'addr' is required." msgstr "Fel: â€addr†krävs." -#: ../clients/cli/connections.c:4107 +#: ../clients/cli/connections.c:4543 #, c-format msgid "Error: 'bt-type': '%s' not valid; use [%s, %s (%s), %s]." msgstr "Fel: â€bt-typeâ€: â€%s†inte giltig; använd [%s, %s (%s), %s]." -#: ../clients/cli/connections.c:4151 +#: ../clients/cli/connections.c:4587 msgid "VLAN parent device or connection UUID: " -msgstr "VLAN-föräldraenhet eller anslutnings-UUID:" +msgstr "Överordnad VLAN-enhet eller anslutnings-UUID: " -#: ../clients/cli/connections.c:4154 +#: ../clients/cli/connections.c:4590 msgid "Error: 'dev' is required." msgstr "Fel: â€dev†krävs." -#: ../clients/cli/connections.c:4158 +#: ../clients/cli/connections.c:4594 msgid "VLAN ID <0-4095>: " msgstr "VLAN ID <0-4095>: " -#: ../clients/cli/connections.c:4161 +#: ../clients/cli/connections.c:4597 msgid "Error: 'id' is required." msgstr "Fel: â€id†krävs." -#: ../clients/cli/connections.c:4167 +#: ../clients/cli/connections.c:4603 #, c-format msgid "Error: 'id': '%s' is not valid; use <0-4095>." msgstr "Fel: â€idâ€: â€%s†är inte giltigt: använd <0-4095>." -#: ../clients/cli/connections.c:4177 +#: ../clients/cli/connections.c:4613 #, c-format msgid "Error: 'dev': '%s' is neither UUID, interface name, nor MAC." msgstr "Fel: â€devâ€: â€%s†är varken UUID, gränssnittsnamn eller MAC." -#: ../clients/cli/connections.c:4311 +#: ../clients/cli/connections.c:4747 #, c-format msgid "Error: 'mode': %s." -msgstr "Fel: â€modeâ€: %s" +msgstr "Fel: â€modeâ€: %s." -#: ../clients/cli/connections.c:4320 +#: ../clients/cli/connections.c:4756 #, c-format msgid "Error: 'primary': '%s' is not a valid interface name." msgstr "Fel: â€primaryâ€: â€%s†är inte ett giltigt gränssnittsnamn." -#: ../clients/cli/connections.c:4372 ../clients/cli/connections.c:4470 -#: ../clients/cli/connections.c:4672 +#: ../clients/cli/connections.c:4808 ../clients/cli/connections.c:4906 +#: ../clients/cli/connections.c:5108 msgid "Error: 'master' is required." msgstr "Fel: â€master†krävs." -#: ../clients/cli/connections.c:4378 ../clients/cli/connections.c:4476 -#: ../clients/cli/connections.c:4678 +#: ../clients/cli/connections.c:4814 ../clients/cli/connections.c:4912 +#: ../clients/cli/connections.c:5114 #, c-format msgid "Warning: master='%s' doesn't refer to any existing profile.\n" msgstr "Varning: master=â€%s†hänvisar inte till nÃ¥gon befintlig profil.\n" -#: ../clients/cli/connections.c:4381 ../clients/cli/connections.c:4484 -#: ../clients/cli/connections.c:4681 +#: ../clients/cli/connections.c:4817 ../clients/cli/connections.c:4920 +#: ../clients/cli/connections.c:5117 #, c-format msgid "" "Warning: 'type' is currently ignored. We only support ethernet slaves for " @@ -1982,81 +2213,129 @@ msgstr "" "Varning: â€type†ignoreras för närvarande. Vi stöder bara trÃ¥dbundna slavar " "för tillfället.\n" -#: ../clients/cli/connections.c:4578 +#: ../clients/cli/connections.c:5014 #, c-format msgid "Error: 'stp': %s." msgstr "Fel: â€stpâ€: %s." -#: ../clients/cli/connections.c:4708 +#: ../clients/cli/connections.c:5144 #, c-format msgid "Error: 'hairpin': %s." msgstr "Fel: â€hairpinâ€: %s." -#: ../clients/cli/connections.c:4761 +#: ../clients/cli/connections.c:5197 msgid "Error: 'vpn-type' is required." msgstr "Fel: â€vpn-type†krävs." -#: ../clients/cli/connections.c:4768 +#: ../clients/cli/connections.c:5204 #, c-format msgid "Warning: 'vpn-type': %s not known.\n" msgstr "Varning: â€vpn-typeâ€: %s okänd.\n" -#: ../clients/cli/connections.c:4829 +#: ../clients/cli/connections.c:5265 #, c-format msgid "Error: 'channel': '%s' is not valid; use <1-13>." msgstr "Fel: â€channelâ€: â€%s†är inte giltigt; använd <1-13>." -#: ../clients/cli/connections.c:4861 +#: ../clients/cli/connections.c:5316 +msgid "Username: " +msgstr "Användarnamn: " + +#: ../clients/cli/connections.c:5325 +#, c-format +msgid "Protocol %s" +msgstr "Protokoll %s" + +#: ../clients/cli/connections.c:5328 +msgid "Error: 'protocol' is required." +msgstr "Fel: â€protocol†krävs." + +#: ../clients/cli/connections.c:5369 #, c-format msgid "Error: '%s' is not a valid connection type." msgstr "Fel: â€%s†är inte en giltig anslutningstyp." -#: ../clients/cli/connections.c:4961 +#: ../clients/cli/connections.c:5413 +#, c-format +msgid "Error: IPv4 gateway specified without IPv4 addresses" +msgstr "Fel: IPv4-gateway angiven utan IPv4-adresser" + +#: ../clients/cli/connections.c:5417 +#, c-format +msgid "Error: multiple IPv4 gateways specified" +msgstr "Fel: flera IPv4-gateways angivna" + +#: ../clients/cli/connections.c:5421 +#, c-format +msgid "Error: Invalid IPv4 gateway '%s'" +msgstr "Fel: ogiltig IPv4-gateway â€%sâ€" + +#: ../clients/cli/connections.c:5446 +#, c-format +msgid "Error: IPv6 gateway specified without IPv6 addresses" +msgstr "Fel: IPv6-gateway angiven utan IPv6-adresser" + +#: ../clients/cli/connections.c:5450 +#, c-format +msgid "Error: multiple IPv6 gateways specified" +msgstr "Fel: flera IPv6-gateways angivna" + +#: ../clients/cli/connections.c:5454 +#, c-format +msgid "Error: Invalid IPv6 gateway '%s'" +msgstr "Fel: ogiltig IPv6-gateway â€%sâ€" + +#: ../clients/cli/connections.c:5514 #, c-format msgid "Error: Failed to add '%s' connection: %s" msgstr "Fel: Misslyckades med att lägga till â€%sâ€-anslutning: %s" -#: ../clients/cli/connections.c:4966 +#: ../clients/cli/connections.c:5519 #, c-format msgid "Connection '%s' (%s) successfully added.\n" msgstr "Anslutning â€%s†(%s) lades till.\n" -#: ../clients/cli/connections.c:5177 +#: ../clients/cli/connections.c:5757 #, c-format msgid "Error: 'type' argument is required." msgstr "Fel: â€typeâ€-argument saknas." -#: ../clients/cli/connections.c:5185 +#: ../clients/cli/connections.c:5765 #, c-format msgid "Error: invalid connection type; %s." msgstr "Fel: ogiltig anslutningstyp; %s." -#: ../clients/cli/connections.c:5194 +#: ../clients/cli/connections.c:5774 #, c-format msgid "Error: 'autoconnect': %s." msgstr "Fel: â€autoconnectâ€: %s." -#: ../clients/cli/connections.c:5204 +#: ../clients/cli/connections.c:5784 #, c-format msgid "Error: 'save': %s." msgstr "Fel: â€saveâ€: %s." -#: ../clients/cli/connections.c:5220 +#: ../clients/cli/connections.c:5801 msgid "Interface name [*]: " -msgstr "Gränssnittsnamn [*]:" +msgstr "Gränssnittsnamn [*]: " -#: ../clients/cli/connections.c:5225 +#: ../clients/cli/connections.c:5806 #, c-format msgid "Error: 'ifname' argument is required." msgstr "Fel: â€ifnameâ€-argument krävs." -#: ../clients/cli/connections.c:5232 +#: ../clients/cli/connections.c:5808 +#, c-format +msgid "Error: mandatory 'ifname' not seen before '%s'." +msgstr "Fel: obligatoriskt â€ifname†inte sett innan â€%sâ€." + +#: ../clients/cli/connections.c:5817 #, c-format msgid "Error: 'ifname': '%s' is not a valid interface nor '*'." msgstr "" "Fel: â€ifnameâ€: â€%s†är inte ett giltigt gränssnittsnamn, inte heller â€*â€." -#: ../clients/cli/connections.c:6020 +#: ../clients/cli/connections.c:6712 #, c-format msgid "['%s' setting values]\n" msgstr "[â€%sâ€-inställningsvärden]\n" @@ -2064,7 +2343,7 @@ msgstr "[â€%sâ€-inställningsvärden]\n" #. TRANSLATORS: do not translate command names and keywords before :: #. * However, you should translate terms enclosed in <>. #. -#: ../clients/cli/connections.c:6102 +#: ../clients/cli/connections.c:6794 #, c-format msgid "" "---[ Main menu ]---\n" @@ -2074,7 +2353,7 @@ msgid "" "set [<setting>.<prop> <value>] :: set property value\n" "describe [<setting>.<prop>] :: describe property\n" "print [all | <setting>[.<prop>]] :: print the connection\n" -"verify [all] :: verify the connection\n" +"verify [all | fix] :: verify the connection\n" "save [persistent|temporary] :: save the connection\n" "activate [<ifname>] [/<ap>|<nsp>] :: activate the connection\n" "back :: go one level up (back)\n" @@ -2086,19 +2365,19 @@ msgstr "" "goto [<inställning> | <egenskap>] :: gÃ¥ till inställning eller " "egenskap\n" "remove <inställning>[.<egenskap>] | <egenskap> :: ta bort inställning " -"eller Ã¥terstÃ¥ll egenskapsvärde\n" +"eller Ã¥terställ egenskapsvärde\n" "set [<inställning>.<egenskap> <värde>] :: sätt egenskapsvärde\n" "describe [<inställning>.<egenskap>] :: beskriv egenskap\n" "print [all | <inställning>[.<egenskap>]] :: skriv ut anslutning\n" -"verify [all] :: verifiera anslutning\n" +"verify [all | fix] :: verifiera anslutning\n" "save [persistent|temporary] :: spara anslutning\n" -"activate [<grnamn>] [/<ap>|<nsp>] :: aktivera ansluting\n" +"activate [<grnamn>] [/<ap>|<nsp>] :: aktivera anslutning\n" "back :: gÃ¥ upp en nivÃ¥ (backa)\n" "help/? [<kommando>] :: skriv ut denna hjälp\n" "nmcli <konf-flagga> <value> :: nmcli-konfiguration\n" "quit :: avsluta nmcli\n" -#: ../clients/cli/connections.c:6129 +#: ../clients/cli/connections.c:6821 #, c-format msgid "" "goto <setting>[.<prop>] | <prop> :: enter setting/property for editing\n" @@ -2118,7 +2397,7 @@ msgstr "" " nmcli connection> goto secondaries\n" " nmcli> goto ipv4.addresses\n" -#: ../clients/cli/connections.c:6136 +#: ../clients/cli/connections.c:6828 #, c-format msgid "" "remove <setting>[.<prop>] :: remove setting or reset property value\n" @@ -2140,7 +2419,7 @@ msgstr "" "Exempel: nmcli> remove wifi-sec\n" " nmcli> remove eth.mtu\n" -#: ../clients/cli/connections.c:6143 +#: ../clients/cli/connections.c:6835 #, c-format msgid "" "set [<setting>.<prop> <value>] :: set property value\n" @@ -2155,7 +2434,7 @@ msgstr "" "\n" "Exempel: nmcli> set con.id My connection\n" -#: ../clients/cli/connections.c:6148 +#: ../clients/cli/connections.c:6840 #, c-format msgid "" "describe [<setting>.<prop>] :: describe property\n" @@ -2168,7 +2447,7 @@ msgstr "" "Visar egenskapsbeskrivning. Du kan titta i handboken för nm-settings(5) för " "att se alla NH-inställningar och egenskaper.\n" -#: ../clients/cli/connections.c:6153 +#: ../clients/cli/connections.c:6845 #, c-format msgid "" "print [all] :: print setting or connection values\n" @@ -2183,26 +2462,33 @@ msgstr "" "\n" "Exempel: nmcli ipv4> print all\n" -#: ../clients/cli/connections.c:6158 +#: ../clients/cli/connections.c:6850 #, c-format msgid "" -"verify [all] :: verify setting or connection validity\n" +"verify [all | fix] :: verify setting or connection validity\n" "\n" -"Verifies whether the setting or connection is valid and can be saved later. " -"It indicates invalid values on error.\n" +"Verifies whether the setting or connection is valid and can be saved later.\n" +"It indicates invalid values on error. Some errors may be fixed " +"automatically\n" +"by 'fix' option.\n" "\n" "Examples: nmcli> verify\n" +" nmcli> verify fix\n" " nmcli bond> verify\n" msgstr "" -"verify [all] :: verifiera inställningen eller anslutningens giltighet\n" +"verify [all | fix] :: verifiera inställningen eller anslutningens " +"giltighet\n" "\n" "Verifierar huruvida inställningen eller anslutningen är giltig och kan " -"sparas senare. Indikerar ogiltiga värden vid fel.\n" +"sparas senare.\n" +"Indikerar ogiltiga värden vid fel. En del fel kan fixas automatiskt\n" +"genom alternativet â€fixâ€.\n" "\n" "Exempel: nmcli> verify\n" -" nmcli bond> verify\n" +" nmcli> verify fix\n" +" nmcli bond> verify\n" -#: ../clients/cli/connections.c:6165 +#: ../clients/cli/connections.c:6859 #, c-format msgid "" "save [persistent|temporary] :: save the connection\n" @@ -2220,7 +2506,7 @@ msgstr "" "save [persistent|temporary] :: spara anslutningen\n" "\n" "Skickar anslutningsprofilen till Nätverkshanteraren som kommer att antingen\n" -"spara den, eller behÃ¥lla den i minnet.â€save†utan argument\n" +"spara den, eller behÃ¥lla den i minnet. â€save†utan argument\n" "betyder â€save persistentâ€.\n" "Observera att när du väl har sparat profilen sÃ¥ sparas inställningarna\n" "över omstart. Efterföljande ändringar kan ocksÃ¥ vara temporära eller\n" @@ -2228,7 +2514,7 @@ msgstr "" "Om du vill ta bort den sparade anslutningen helt\n" "mÃ¥ste profilen tas bort.\n" -#: ../clients/cli/connections.c:6176 +#: ../clients/cli/connections.c:6870 #, c-format msgid "" "activate [<ifname>] [/<ap>|<nsp>] :: activate the connection\n" @@ -2249,7 +2535,7 @@ msgstr "" "/<ap>|<nsp> - AP (Wi-Fi) eller NSP (WiMAX) (lägg till / i början när " "<grnamn> inte anges)\n" -#: ../clients/cli/connections.c:6183 ../clients/cli/connections.c:6340 +#: ../clients/cli/connections.c:6877 ../clients/cli/connections.c:7035 #, c-format msgid "" "back :: go to upper menu level\n" @@ -2258,7 +2544,7 @@ msgstr "" "back :: gÃ¥ upp en menynivÃ¥\n" "\n" -#: ../clients/cli/connections.c:6186 +#: ../clients/cli/connections.c:6880 #, c-format msgid "" "help/? [<command>] :: help for the nmcli commands\n" @@ -2267,7 +2553,7 @@ msgstr "" "help/? [<kommando>] :: hjälp för nmcli-kommandot\n" "\n" -#: ../clients/cli/connections.c:6189 +#: ../clients/cli/connections.c:6883 #, c-format msgid "" "nmcli [<conf-option> <value>] :: nmcli configuration\n" @@ -2275,6 +2561,7 @@ msgid "" "Configures nmcli. The following options are available:\n" "status-line yes | no [default: no]\n" "save-confirmation yes | no [default: yes]\n" +"show-secrets yes | no [default: no]\n" "prompt-color <0-8> [default: 0]\n" " 0 = normal\n" " 1 = [30mblack[0m\n" @@ -2290,27 +2577,28 @@ msgid "" " nmcli> nmcli save-confirmation no\n" " nmcli> nmcli prompt-color 3\n" msgstr "" -"nmcli [<konf-flagga> <värde>] :: nmcli configuration\n" +"nmcli [<konf-flagga> <värde>] :: nmcli-konfiguration\n" "\n" "Konfigurerar nmcli. Följande flaggor är tillgängliga:\n" -"status-line yes | no [default: no]\n" -"save-confirmation yes | no [default: yes]\n" -"prompt-color <0-8> [default: 0]\n" +"status-line yes | no [standard: no]\n" +"save-confirmation yes | no [standard: yes]\n" +"show-secrets yes | no [standard: no]\n" +"prompt-color <0-8> [standard: 0]\n" " 0 = normal\n" -" 1 = [30mblack[0m\n" -" 2 = [31mred[0m\n" -" 3 = [32mgreen[0m\n" -" 4 = [33myellow[0m\n" -" 5 = [34mblue[0m\n" -" 6 = [35mmagenta[0m\n" -" 7 = [36mcyan[0m\n" -" 8 = [37mwhite[0m\n" +" 1 = [30mblack[0m\n" +" 2 = [31mred[0m\n" +" 3 = [32mgreen[0m\n" +" 4 = [33myellow[0m\n" +" 5 = [34mblue[0m\n" +" 6 = [35mmagenta[0m\n" +" 7 = [36mcyan[0m\n" +" 8 = [37mwhite[0m\n" "\n" "Exempel: nmcli> nmcli status-line yes\n" -" nmcli> nmcli save-confirmation no\n" -" nmcli> nmcli prompt-color 3\n" +" nmcli> nmcli save-confirmation no\n" +" nmcli> nmcli prompt-color 3\n" -#: ../clients/cli/connections.c:6209 ../clients/cli/connections.c:6346 +#: ../clients/cli/connections.c:6904 ../clients/cli/connections.c:7041 #, c-format msgid "" "quit :: exit nmcli\n" @@ -2323,8 +2611,8 @@ msgstr "" "Kommandot avslutar nmcli. När anslutningen som redigerats inte sparas frÃ¥gas " "användaren om att bekräfta Ã¥tgärden.\n" -#: ../clients/cli/connections.c:6214 ../clients/cli/connections.c:6351 -#: ../clients/cli/connections.c:6755 ../clients/cli/connections.c:7644 +#: ../clients/cli/connections.c:6909 ../clients/cli/connections.c:7046 +#: ../clients/cli/connections.c:7469 ../clients/cli/connections.c:8391 #, c-format msgid "Unknown command: '%s'\n" msgstr "Okänt kommando: â€%sâ€\n" @@ -2332,7 +2620,7 @@ msgstr "Okänt kommando: â€%sâ€\n" #. TRANSLATORS: do not translate command names and keywords before :: #. * However, you should translate terms enclosed in <>. #. -#: ../clients/cli/connections.c:6280 +#: ../clients/cli/connections.c:6975 #, c-format msgid "" "---[ Property menu ]---\n" @@ -2361,7 +2649,7 @@ msgstr "" "kommandobeskrivning\n" "quit :: avsluta nmcli\n" -#: ../clients/cli/connections.c:6305 +#: ../clients/cli/connections.c:7000 #, c-format msgid "" "set [<value>] :: set new value\n" @@ -2372,7 +2660,7 @@ msgstr "" "\n" "Detta kommando sätter angivet <värde> till denna egenskap\n" -#: ../clients/cli/connections.c:6309 +#: ../clients/cli/connections.c:7004 #, c-format msgid "" "add [<value>] :: append new value to the property\n" @@ -2387,7 +2675,7 @@ msgstr "" "egenskapen är av en behÃ¥llartyp. För egenskaper med ett värde ersätts " "egenskapsvärdet (samma som â€setâ€).\n" -#: ../clients/cli/connections.c:6315 +#: ../clients/cli/connections.c:7010 #, c-format msgid "" "change :: change current value\n" @@ -2398,7 +2686,7 @@ msgstr "" "\n" "Visar aktuellt värde och tillÃ¥ter redigering av det.\n" -#: ../clients/cli/connections.c:6319 +#: ../clients/cli/connections.c:7014 #, c-format msgid "" "remove [<value>|<index>|<option name>] :: delete the value\n" @@ -2434,7 +2722,7 @@ msgstr "" " nmcli bond.options> remove downdelay\n" "\n" -#: ../clients/cli/connections.c:6330 +#: ../clients/cli/connections.c:7025 #, c-format msgid "" "describe :: describe property\n" @@ -2444,10 +2732,10 @@ msgid "" msgstr "" "describe :: beskriv egenskap\n" "\n" -"Visar egenskapsbeskrivning. Se nm-settings(5)-manualen för att se alla NM-" +"Visar egenskapsbeskrivning. Se nm-settings(5)-handboken för att se alla NH-" "inställningar och egenskaper.\n" -#: ../clients/cli/connections.c:6335 +#: ../clients/cli/connections.c:7030 #, c-format msgid "" "print [property|setting|connection] :: print property (setting, connection) " @@ -2462,7 +2750,7 @@ msgstr "" "Visar egenskapsvärdet. Med argument kan du ocksÃ¥ visa värden för hela " "inställningen eller anslutningen.\n" -#: ../clients/cli/connections.c:6343 +#: ../clients/cli/connections.c:7038 #, c-format msgid "" "help/? [<command>] :: help for nmcli commands\n" @@ -2471,28 +2759,28 @@ msgstr "" "help/? [<kommando>] :: hjälp för nmcli-kommandon\n" "\n" -#: ../clients/cli/connections.c:6441 +#: ../clients/cli/connections.c:7136 #, c-format msgid "Error: Connection activation failed.\n" msgstr "Fel: Aktivering av anslutning misslyckades.\n" -#: ../clients/cli/connections.c:6524 +#: ../clients/cli/connections.c:7219 #, c-format msgid "Error: setting '%s' is mandatory and cannot be removed.\n" msgstr "Fel: inställningen â€%s†är obligatorisk och kan inte tas bort.\n" #. TRANSLATORS: status line in nmcli connection editor -#: ../clients/cli/connections.c:6542 +#: ../clients/cli/connections.c:7237 #, c-format msgid "[ Type: %s | Name: %s | UUID: %s | Dirty: %s | Temp: %s ]\n" msgstr "[ Typ: %s | Namn: %s | UUID: %s | Dirty: %s | Temp: %s ]\n" -#: ../clients/cli/connections.c:6577 +#: ../clients/cli/connections.c:7273 #, c-format msgid "The connection is not saved. Do you really want to quit? %s" msgstr "Anslutningen sparas inte. Vill du verkligen avsluta? %s" -#: ../clients/cli/connections.c:6622 +#: ../clients/cli/connections.c:7321 #, c-format msgid "" "The connection profile has been removed from another client. You may type " @@ -2501,60 +2789,66 @@ msgstr "" "Anslutningsprofilen har tagits bort frÃ¥n en annan klient. Du kan skriva " "â€save†i huvudmenyn för att Ã¥terställa den.\n" -#: ../clients/cli/connections.c:6644 ../clients/cli/connections.c:7059 -#: ../clients/cli/connections.c:7114 +#: ../clients/cli/connections.c:7346 ../clients/cli/connections.c:7772 +#: ../clients/cli/connections.c:7830 +#, c-format +msgid "Allowed values for '%s' property: %s\n" +msgstr "Tillgängliga värden för â€%sâ€-egenskapen: %s\n" + +#: ../clients/cli/connections.c:7350 ../clients/cli/connections.c:7776 +#: ../clients/cli/connections.c:7834 #, c-format msgid "Enter '%s' value: " -msgstr "Ange â€%sâ€-värde:" +msgstr "Ange â€%sâ€-värde: " -#: ../clients/cli/connections.c:6659 ../clients/cli/connections.c:6677 -#: ../clients/cli/connections.c:7063 ../clients/cli/connections.c:7119 +#: ../clients/cli/connections.c:7365 ../clients/cli/connections.c:7387 +#: ../clients/cli/connections.c:7780 ../clients/cli/connections.c:7839 #, c-format msgid "Error: failed to set '%s' property: %s\n" msgstr "Fel: misslyckades med att sätta â€%sâ€-egenskapen: %s\n" -#: ../clients/cli/connections.c:6671 +#: ../clients/cli/connections.c:7381 #, c-format msgid "Edit '%s' value: " -msgstr "Redigera â€%sâ€-värde:" +msgstr "Redigera â€%sâ€-värde: " -#: ../clients/cli/connections.c:6698 +#: ../clients/cli/connections.c:7410 #, c-format msgid "Error: %s\n" msgstr "Fel: %s\n" -#: ../clients/cli/connections.c:6704 ../clients/cli/connections.c:7198 -#: ../clients/cli/connections.c:7239 +#: ../clients/cli/connections.c:7416 ../clients/cli/connections.c:7918 +#: ../clients/cli/connections.c:7959 #, c-format msgid "Error: failed to remove value of '%s': %s\n" msgstr "Fel: misslyckades med att ta bort värdet â€%sâ€: %s\n" -#: ../clients/cli/connections.c:6725 +#: ../clients/cli/connections.c:7437 #, c-format msgid "Unknown command argument: '%s'\n" msgstr "Okänt kommandoargument: â€%sâ€\n" -#: ../clients/cli/connections.c:6851 +#: ../clients/cli/connections.c:7565 #, c-format msgid "Available settings: %s\n" msgstr "Tillgängliga inställningar: %s\n" -#: ../clients/cli/connections.c:6860 +#: ../clients/cli/connections.c:7574 #, c-format msgid "Error: invalid setting name; %s\n" -msgstr "Fel: ogiltig namn pÃ¥ inställning; %s\n" +msgstr "Fel: ogiltigt namn pÃ¥ inställning; %s\n" -#: ../clients/cli/connections.c:6877 +#: ../clients/cli/connections.c:7591 #, c-format msgid "Available properties: %s\n" msgstr "Tillgängliga egenskaper: %s\n" -#: ../clients/cli/connections.c:6885 +#: ../clients/cli/connections.c:7599 #, c-format msgid "Error: property %s\n" msgstr "Fel: egenskapen %s\n" -#: ../clients/cli/connections.c:6926 +#: ../clients/cli/connections.c:7640 #, c-format msgid "" "Saving the connection with 'autoconnect=yes'. That might result in an " @@ -2565,12 +2859,12 @@ msgstr "" "anslutningen aktiveras omedelbart.\n" "Vill du fortfarande spara? %s" -#: ../clients/cli/connections.c:7001 +#: ../clients/cli/connections.c:7715 #, c-format msgid "You may edit the following settings: %s\n" msgstr "Du kan redigera följande inställningar: %s\n" -#: ../clients/cli/connections.c:7028 +#: ../clients/cli/connections.c:7742 #, c-format msgid "" "The connection profile has been removed from another client. You may type " @@ -2579,203 +2873,218 @@ msgstr "" "Anslutningsprofilen har tagits bort frÃ¥n en annan klient. Du kan skriva " "â€save†för att Ã¥terställa den.\n" -#: ../clients/cli/connections.c:7057 ../clients/cli/connections.c:7112 -#, c-format -msgid "Allowed values for '%s' property: %s\n" -msgstr "Tillgängliga värden för â€%sâ€-egenskapen: %s\n" - -#: ../clients/cli/connections.c:7067 ../clients/cli/connections.c:7281 +#: ../clients/cli/connections.c:7784 ../clients/cli/connections.c:8001 #, c-format msgid "Error: no setting selected; valid are [%s]\n" msgstr "Fel: ingen inställning vald; giltiga är [%s]\n" -#: ../clients/cli/connections.c:7068 +#: ../clients/cli/connections.c:7785 #, c-format msgid "use 'goto <setting>' first, or 'set <setting>.<property>'\n" msgstr "" "använd â€goto <inställning>†först eller â€set <inställning>.<egenskap>â€\n" -#: ../clients/cli/connections.c:7082 ../clients/cli/connections.c:7218 -#: ../clients/cli/connections.c:7298 +#: ../clients/cli/connections.c:7799 ../clients/cli/connections.c:7938 +#: ../clients/cli/connections.c:8018 #, c-format msgid "Error: invalid setting argument '%s'; valid are [%s]\n" msgstr "Fel: ogiltigt argument för inställningen â€%sâ€; giltiga är [%s]\n" -#: ../clients/cli/connections.c:7092 +#: ../clients/cli/connections.c:7809 #, c-format msgid "Error: missing setting for '%s' property\n" msgstr "Fel: saknar inställning för egenskapen â€%sâ€\n" -#: ../clients/cli/connections.c:7099 +#: ../clients/cli/connections.c:7816 #, c-format msgid "Error: invalid property: %s\n" msgstr "Fel: ogiltig egenskap: %s\n" -#: ../clients/cli/connections.c:7146 +#: ../clients/cli/connections.c:7866 #, c-format msgid "Error: unknown setting '%s'\n" msgstr "Fel: Okänd inställning: â€%sâ€\n" -#: ../clients/cli/connections.c:7159 +#: ../clients/cli/connections.c:7879 #, c-format msgid "You may edit the following properties: %s\n" msgstr "Du kan redigera följande egenskaper: %s\n" -#: ../clients/cli/connections.c:7203 +#: ../clients/cli/connections.c:7923 #, c-format msgid "Error: no argument given; valid are [%s]\n" msgstr "Fel: inga argument givna; giltiga är [%s]\n" -#: ../clients/cli/connections.c:7216 +#: ../clients/cli/connections.c:7936 #, c-format msgid "Setting '%s' is not present in the connection.\n" -msgstr "Inställningen â€%s†är finns inte i anslutningen.\n" +msgstr "Inställningen â€%s†finns inte i anslutningen.\n" -#: ../clients/cli/connections.c:7257 +#: ../clients/cli/connections.c:7977 #, c-format msgid "Error: %s properties, nor it is a setting name.\n" msgstr "Fel: %s-egenskaper, inte heller ett inställningsnamn.\n" -#: ../clients/cli/connections.c:7282 +#: ../clients/cli/connections.c:8002 #, c-format msgid "use 'goto <setting>' first, or 'describe <setting>.<property>'\n" msgstr "" "använd â€goto <inställning>†först, eller â€describe <inställning>." "<egenskap>â€\n" -#: ../clients/cli/connections.c:7323 +#: ../clients/cli/connections.c:8043 #, c-format msgid "Error: invalid property: %s, neither a valid setting name.\n" msgstr "" "Fel: ogiltig egenskap: %s, och inte heller ett giltigt inställningsnamn.\n" -#: ../clients/cli/connections.c:7352 +#: ../clients/cli/connections.c:8072 #, c-format msgid "Error: unknown setting: '%s'\n" msgstr "Fel: okänd inställning: â€%sâ€\n" -#: ../clients/cli/connections.c:7357 +#: ../clients/cli/connections.c:8077 #, c-format msgid "Error: '%s' setting not present in the connection\n" msgstr "Fel: inställningen â€%s†finns inte i anslutningen\n" -#: ../clients/cli/connections.c:7382 +#: ../clients/cli/connections.c:8102 #, c-format msgid "Error: invalid property: %s%s\n" msgstr "Fel: ogiltig egenskap: %s%s\n" -#: ../clients/cli/connections.c:7384 +#: ../clients/cli/connections.c:8104 msgid ", neither a valid setting name" msgstr ", inte heller ett giltigt inställningsnamn" -#: ../clients/cli/connections.c:7404 +#: ../clients/cli/connections.c:8121 +#, c-format +msgid "Invalid verify option: %s\n" +msgstr "Ogiltigt verify-argument â€%sâ€\n" + +#: ../clients/cli/connections.c:8129 #, c-format msgid "Verify setting '%s': %s\n" msgstr "Verifiera inställningen â€%sâ€: %s\n" -#: ../clients/cli/connections.c:7411 +#: ../clients/cli/connections.c:8144 #, c-format msgid "Verify connection: %s\n" msgstr "Verifiera anslutningen: %s\n" -#: ../clients/cli/connections.c:7429 +#: ../clients/cli/connections.c:8147 +#, c-format +msgid "The error cannot be fixed automatically.\n" +msgstr "Felet kan inte lagas automatiskt.\n" + +#: ../clients/cli/connections.c:8164 #, c-format msgid "Error: invalid argument '%s'\n" msgstr "Fel: ogiltigt argument â€%sâ€\n" -#: ../clients/cli/connections.c:7462 +#: ../clients/cli/connections.c:8197 #, c-format msgid "Error: Failed to save '%s' (%s) connection: %s\n" msgstr "Fel: Misslyckades med att spara â€%s†(%s)-anslutning %s\n" -#: ../clients/cli/connections.c:7469 +#: ../clients/cli/connections.c:8204 #, c-format msgid "Connection '%s' (%s) successfully saved.\n" msgstr "Anslutningen â€%s†(%s) sparades.\n" -#: ../clients/cli/connections.c:7470 +#: ../clients/cli/connections.c:8205 #, c-format msgid "Connection '%s' (%s) successfully updated.\n" msgstr "Anslutningen â€%s†(%s) uppdaterades.\n" -#: ../clients/cli/connections.c:7503 +#: ../clients/cli/connections.c:8238 #, c-format msgid "Error: connection verification failed: %s\n" msgstr "Fel: verifiering av anslutning misslyckades: %s\n" -#: ../clients/cli/connections.c:7504 +#: ../clients/cli/connections.c:8239 msgid "(unknown error)" msgstr "(okänt fel)" -#: ../clients/cli/connections.c:7525 +#: ../clients/cli/connections.c:8240 +#, c-format +msgid "You may try running 'verify fix' to fix errors.\n" +msgstr "Du kan prova att köra â€verify fix†för att laga fel.\n" + +#: ../clients/cli/connections.c:8262 #, c-format msgid "Error: connection is not saved. Type 'save' first.\n" msgstr "Fel: anslutningen sparas ej. Skriv â€save†först.\n" -#: ../clients/cli/connections.c:7529 +#: ../clients/cli/connections.c:8266 #, c-format msgid "Error: connection is not valid: %s\n" msgstr "Fel: anslutningen är inte giltig: %s\n" -#: ../clients/cli/connections.c:7539 +#: ../clients/cli/connections.c:8276 #, c-format msgid "Error: Cannot activate connection: %s.\n" msgstr "Fel: Kan inte aktivera anslutningen: %s.\n" -#: ../clients/cli/connections.c:7549 +#: ../clients/cli/connections.c:8286 #, c-format msgid "Error: Failed to activate '%s' (%s) connection: %s\n" msgstr "Fel: Misslyckades med att aktivera â€%s†(%s)-anslutning: %s\n" -#: ../clients/cli/connections.c:7555 +#: ../clients/cli/connections.c:8292 #, c-format msgid "Monitoring connection activation (press any key to continue)\n" msgstr "" "Övervakar anslutningsaktivering (tryck valfri tangent för att fortsätta)\n" -#: ../clients/cli/connections.c:7593 +#: ../clients/cli/connections.c:8330 #, c-format msgid "Error: status-line: %s\n" msgstr "Fel: status-line: %s\n" -#: ../clients/cli/connections.c:7601 +#: ../clients/cli/connections.c:8338 #, c-format msgid "Error: save-confirmation: %s\n" msgstr "Fel: save-confirmation: %s\n" -#: ../clients/cli/connections.c:7609 +#: ../clients/cli/connections.c:8346 +#, c-format +msgid "Error: show-secrets: %s\n" +msgstr "Fel: show-secrets: %s\n" + +#: ../clients/cli/connections.c:8354 #, c-format msgid "Error: bad color number: '%s'; use <0-8>\n" msgstr "Fel: dÃ¥ligt färgnummer: â€%sâ€; använd <0-8>\n" -#: ../clients/cli/connections.c:7621 +#: ../clients/cli/connections.c:8366 #, c-format msgid "Current nmcli configuration:\n" msgstr "Aktuell nmcli-konfiguration:\n" -#: ../clients/cli/connections.c:7629 +#: ../clients/cli/connections.c:8376 #, c-format msgid "Invalid configuration option '%s'; allowed [%s]\n" msgstr "Ogiltigt konfigurationsalternativ â€%sâ€; tillÃ¥tet [%s]\n" -#: ../clients/cli/connections.c:7871 +#: ../clients/cli/connections.c:8631 #, c-format msgid "Error: only one of 'id', uuid, or 'path' can be provided." msgstr "Fel: endast en av â€idâ€, uuid eller â€path†kan ges." -#: ../clients/cli/connections.c:7883 ../clients/cli/connections.c:8067 -#: ../clients/cli/connections.c:8074 +#: ../clients/cli/connections.c:8643 ../clients/cli/connections.c:8830 +#: ../clients/cli/connections.c:8837 #, c-format msgid "Error: Unknown connection '%s'." msgstr "Fel: Okänd anslutning: â€%sâ€." -#: ../clients/cli/connections.c:7898 +#: ../clients/cli/connections.c:8661 #, c-format msgid "Warning: editing existing connection '%s'; 'type' argument is ignored\n" msgstr "" "Varning: redigerar befintliga anslutningen â€%sâ€; â€typeâ€-argument ignoreras\n" -#: ../clients/cli/connections.c:7901 +#: ../clients/cli/connections.c:8664 #, c-format msgid "" "Warning: editing existing connection '%s'; 'con-name' argument is ignored\n" @@ -2783,440 +3092,477 @@ msgstr "" "Varning: redigerar befintliga anslutningen â€%sâ€; â€con-nameâ€-argument " "ignoreras\n" -#: ../clients/cli/connections.c:7915 +#: ../clients/cli/connections.c:8678 #, c-format msgid "Valid connection types: %s\n" msgstr "Giltiga anslutningstyper: %s\n" -#: ../clients/cli/connections.c:7917 +#: ../clients/cli/connections.c:8680 #, c-format msgid "Error: invalid connection type; %s\n" msgstr "Fel: ogiltig anslutningstyp: %s\n" -#: ../clients/cli/connections.c:7956 +#: ../clients/cli/connections.c:8719 #, c-format msgid "===| nmcli interactive connection editor |===" msgstr "===| nmcli interaktiv anslutningsredigerare |===" -#: ../clients/cli/connections.c:7959 +#: ../clients/cli/connections.c:8722 #, c-format msgid "Editing existing '%s' connection: '%s'" msgstr "Redigerar befintlig â€%sâ€-anslutning: â€%sâ€" -#: ../clients/cli/connections.c:7961 +#: ../clients/cli/connections.c:8724 #, c-format msgid "Adding a new '%s' connection" msgstr "Lägger till en ny â€%sâ€-anslutning" -#: ../clients/cli/connections.c:7963 +#: ../clients/cli/connections.c:8726 #, c-format msgid "Type 'help' or '?' for available commands." msgstr "Skriv â€help†eller â€?†för tillgängliga kommandon." -#: ../clients/cli/connections.c:7965 +#: ../clients/cli/connections.c:8728 #, c-format msgid "Type 'describe [<setting>.<prop>]' for detailed property description." msgstr "" "Skriv â€describe [<inställning>.<egenskap>]†för en detaljerad " "egenskapsbeskrivning." -#: ../clients/cli/connections.c:8003 +#: ../clients/cli/connections.c:8766 #, c-format msgid "Error: Failed to modify connection '%s': %s" -msgstr "Fel: Misslyckades med att ändra konfigurationen: â€%s†%s" +msgstr "Fel: Misslyckades med att ändra anslutningen â€%sâ€: %s" -#: ../clients/cli/connections.c:8010 +#: ../clients/cli/connections.c:8773 #, c-format msgid "Connection '%s' (%s) successfully modified.\n" msgstr "Anslutningen â€%s†(%s) ändrades.\n" -#: ../clients/cli/connections.c:8042 +#: ../clients/cli/connections.c:8805 #, c-format msgid "Error: No arguments provided." msgstr "Fel: Inga argument angavs." -#: ../clients/cli/connections.c:8061 +#: ../clients/cli/connections.c:8824 #, c-format msgid "Error: connection ID is missing." msgstr "Fel: anslutnings-ID saknas." -#: ../clients/cli/connections.c:8083 ../clients/cli/connections.c:8096 +#: ../clients/cli/connections.c:8846 ../clients/cli/connections.c:8859 #, c-format msgid "Error: <setting>.<property> argument is missing." msgstr "Fel: <inställning>.<egenskap>-argument saknas." -#: ../clients/cli/connections.c:8101 +#: ../clients/cli/connections.c:8864 #, c-format msgid "Error: value for '%s' is missing." msgstr "Fel: värdet för â€%s†saknas." -#: ../clients/cli/connections.c:8119 +#: ../clients/cli/connections.c:8882 #, c-format msgid "Error: invalid <setting>.<property> '%s'." msgstr "Fel: ogiltig <inställning>.<egenskap> â€%sâ€." -#: ../clients/cli/connections.c:8127 +#: ../clients/cli/connections.c:8890 #, c-format msgid "Error: invalid or not allowed setting '%s': %s." msgstr "Fel: ogiltig eller ej tillÃ¥ten inställning: â€%sâ€: %s." -#: ../clients/cli/connections.c:8148 +#: ../clients/cli/connections.c:8911 #, c-format msgid "Error: invalid property '%s': %s." msgstr "Fel: ogiltig egenskap â€%sâ€: %s." -#: ../clients/cli/connections.c:8159 +#: ../clients/cli/connections.c:8922 #, c-format msgid "Error: failed to modify %s.%s: %s." msgstr "Fel: misslyckades med att ändra %s.%s: %s." -#: ../clients/cli/connections.c:8177 +#: ../clients/cli/connections.c:8940 #, c-format msgid "Error: failed to remove a value from %s.%s: %s." msgstr "Fel: misslyckades att ta bort ett värde frÃ¥n %s.%s: %s." -#: ../clients/cli/connections.c:8214 +#: ../clients/cli/connections.c:8971 +#, c-format +msgid "Error: not all connections deleted." +msgstr "Fel: alla anslutningar är inte borttagna." + +#: ../clients/cli/connections.c:8972 #, c-format msgid "Error: Connection deletion failed: %s" msgstr "Fel: Borttagning av anslutningen misslyckades: %s" -#: ../clients/cli/connections.c:8278 +#: ../clients/cli/connections.c:9034 +#, c-format +msgid "Error: unknown connection '%s'\n" +msgstr "Fel: Okänd anslutning: â€%sâ€\n" + +#: ../clients/cli/connections.c:9048 #, c-format -msgid "Error: unknown connection: %s\n" -msgstr "Fel: Okänd anslutning: %s\n" +msgid "Error: no connection provided." +msgstr "Fel: ingen anslutning tillhandahÃ¥llen." #. truncate trailing ", " -#: ../clients/cli/connections.c:8315 +#: ../clients/cli/connections.c:9073 #, c-format msgid "Error: cannot delete unknown connection(s): %s." msgstr "Fel: kan inte ta bort okänd(a) anslutning(ar): %s." -#: ../clients/cli/connections.c:8332 ../clients/cli/connections.c:8358 -#: ../clients/cli/connections.c:8494 ../clients/cli/devices.c:2786 -#: ../clients/cli/general.c:324 ../clients/cli/general.c:462 -#, c-format -msgid "Error: NetworkManager is not running." -msgstr "Fel: Nätverkshanteraren är inte igÃ¥ng." - -#: ../clients/cli/connections.c:8338 +#: ../clients/cli/connections.c:9097 #, c-format msgid "Error: failed to reload connections: %s." msgstr "Fel: Misslyckades med att läsa om anslutningar: %s." -#: ../clients/cli/connections.c:8377 +#: ../clients/cli/connections.c:9136 #, c-format msgid "Error: failed to load connection: %s." msgstr "Fel: misslyckades med att läsa in anslutningen: %s." -#: ../clients/cli/connections.c:8385 +#: ../clients/cli/connections.c:9144 #, c-format msgid "Could not load file '%s'\n" msgstr "Kunde inte läsa in filen: â€%sâ€\n" -#: ../clients/cli/connections.c:8550 +#: ../clients/cli/connections.c:9323 #, c-format msgid "Error: '%s' is not valid 'connection' command." -msgstr "Fel: â€%s†är inte ett giltigt “connection“-kommando." +msgstr "Fel: â€%s†är inte ett giltigt â€connectionâ€-kommando." #. define some prompts -#: ../clients/cli/devices.c:36 +#: ../clients/cli/devices.c:38 msgid "Interface: " -msgstr "Gränssnitt:" +msgstr "Gränssnitt: " + +#: ../clients/cli/devices.c:39 +msgid "Interface(s): " +msgstr "Gränssnitt: " #. 3 -#. 17 -#: ../clients/cli/devices.c:44 ../clients/cli/devices.c:73 +#. 19 +#: ../clients/cli/devices.c:47 ../clients/cli/devices.c:78 msgid "CONNECTION" msgstr "ANSLUTNING" #. 4 -#. 18 -#: ../clients/cli/devices.c:45 ../clients/cli/devices.c:74 +#. 20 +#: ../clients/cli/devices.c:48 ../clients/cli/devices.c:79 msgid "CON-UUID" msgstr "CON-UUID" #. 2 -#: ../clients/cli/devices.c:58 +#: ../clients/cli/devices.c:61 +msgid "NM-TYPE" +msgstr "NH-TYP" + +#. 3 +#: ../clients/cli/devices.c:62 msgid "VENDOR" msgstr "TILLVERKARE" -#. 3 -#: ../clients/cli/devices.c:59 +#. 4 +#: ../clients/cli/devices.c:63 msgid "PRODUCT" msgstr "PRODUKT" -#. 4 -#: ../clients/cli/devices.c:60 +#. 5 +#: ../clients/cli/devices.c:64 msgid "DRIVER" msgstr "DRIVRUTIN" -#. 5 -#: ../clients/cli/devices.c:61 +#. 6 +#: ../clients/cli/devices.c:65 msgid "DRIVER-VERSION" msgstr "DRIVRUTINS-VERSION" -#. 6 -#: ../clients/cli/devices.c:62 +#. 7 +#: ../clients/cli/devices.c:66 msgid "FIRMWARE-VERSION" msgstr "FAST-PROGRAMVARA-VERSION" -#. 7 -#: ../clients/cli/devices.c:63 +#. 8 +#: ../clients/cli/devices.c:67 msgid "HWADDR" msgstr "HVADR" -#. 8 -#: ../clients/cli/devices.c:64 ../clients/tui/nmt-page-ethernet.c:86 -#: ../clients/tui/nmt-page-infiniband.c:96 ../clients/tui/nmt-page-vlan.c:130 -#: ../clients/tui/nmt-page-wifi.c:372 +#. 9 +#: ../clients/cli/devices.c:68 ../clients/tui/nmt-page-ethernet.c:86 +#: ../clients/tui/nmt-page-infiniband.c:97 ../clients/tui/nmt-page-vlan.c:131 +#: ../clients/tui/nmt-page-wifi.c:373 msgid "MTU" msgstr "MTU" -#. 10 -#: ../clients/cli/devices.c:66 +#. 11 +#: ../clients/cli/devices.c:70 msgid "REASON" msgstr "ANLEDNING" -#. 11 -#: ../clients/cli/devices.c:67 +#. 12 +#: ../clients/cli/devices.c:71 msgid "UDI" msgstr "UDI" -#. 12 -#: ../clients/cli/devices.c:68 +#. 13 +#: ../clients/cli/devices.c:72 msgid "IP-IFACE" msgstr "IP-GRÄNS" -#. 13 +#. 14 #. 2 -#: ../clients/cli/devices.c:69 ../clients/cli/devices.c:97 +#: ../clients/cli/devices.c:73 ../clients/cli/devices.c:104 msgid "IS-SOFTWARE" msgstr "IS-SOFTWARE" -#. 14 -#: ../clients/cli/devices.c:70 +#. 15 +#: ../clients/cli/devices.c:74 msgid "NM-MANAGED" -msgstr "NM-HANTERAD" +msgstr "NH-HANTERAD" -#. 16 -#: ../clients/cli/devices.c:72 +#. 17 +#: ../clients/cli/devices.c:76 msgid "FIRMWARE-MISSING" msgstr "FAST-PROGRAMVARA-SAKNAS" +#. 18 +#: ../clients/cli/devices.c:77 +msgid "PHYS-PORT-ID" +msgstr "FYSI-PORT-ID" + +#. 22 +#: ../clients/cli/devices.c:81 +msgid "METERED" +msgstr "UPPMÄTT" + #. 0 -#: ../clients/cli/devices.c:85 +#: ../clients/cli/devices.c:92 msgid "AVAILABLE-CONNECTION-PATHS" msgstr "TILLGÄNGLIGA-ANSLUTNINGS-SÖKVÄGAR" #. 1 -#: ../clients/cli/devices.c:86 +#: ../clients/cli/devices.c:93 msgid "AVAILABLE-CONNECTIONS" msgstr "TILLGÄNGLIGA-ANSLUTNINGAR" #. 0 -#: ../clients/cli/devices.c:95 +#: ../clients/cli/devices.c:102 msgid "CARRIER-DETECT" msgstr "BÄRARE-UPPTÄCK" #. 1 -#: ../clients/cli/devices.c:96 +#: ../clients/cli/devices.c:103 msgid "SPEED" msgstr "HASTIGHET" #. 0 -#: ../clients/cli/devices.c:106 +#: ../clients/cli/devices.c:113 msgid "CARRIER" msgstr "BÄRARE" #. 0 -#: ../clients/cli/devices.c:115 ../clients/cli/devices.c:545 +#: ../clients/cli/devices.c:122 ../clients/cli/devices.c:557 msgid "WEP" msgstr "WEP" #. 1 -#: ../clients/cli/devices.c:116 +#: ../clients/cli/devices.c:123 msgid "WPA" msgstr "WPA" #. 2 -#: ../clients/cli/devices.c:117 ../clients/cli/devices.c:553 +#: ../clients/cli/devices.c:124 ../clients/cli/devices.c:565 msgid "WPA2" msgstr "WPA2" #. 3 -#: ../clients/cli/devices.c:118 +#: ../clients/cli/devices.c:125 msgid "TKIP" msgstr "TKIP" #. 4 -#: ../clients/cli/devices.c:119 +#: ../clients/cli/devices.c:126 msgid "CCMP" msgstr "CCMP" #. 5 #. 2 -#: ../clients/cli/devices.c:120 ../clients/cli/devices.c:219 +#: ../clients/cli/devices.c:127 ../clients/cli/devices.c:229 msgid "AP" msgstr "AP" #. 6 -#: ../clients/cli/devices.c:121 +#: ../clients/cli/devices.c:128 msgid "ADHOC" msgstr "ADHOC" -#. 0 +#. 7 +#: ../clients/cli/devices.c:129 +msgid "2GHZ" +msgstr "2GHZ" + +#. 8 #: ../clients/cli/devices.c:130 +msgid "5GHZ" +msgstr "5GHZ" + +#. 0 +#: ../clients/cli/devices.c:139 msgid "CTR-FREQ" msgstr "CTR-FREQ" #. 1 -#: ../clients/cli/devices.c:131 +#: ../clients/cli/devices.c:140 msgid "RSSI" msgstr "RSSI" #. 2 -#: ../clients/cli/devices.c:132 +#: ../clients/cli/devices.c:141 msgid "CINR" msgstr "CINR" #. 3 -#: ../clients/cli/devices.c:133 +#: ../clients/cli/devices.c:142 msgid "TX-POW" msgstr "TX-POW" #. 4 -#: ../clients/cli/devices.c:134 +#: ../clients/cli/devices.c:143 msgid "BSID" msgstr "BSID" #. 0 -#: ../clients/cli/devices.c:143 ../clients/tui/nmt-page-wifi.c:226 +#: ../clients/cli/devices.c:152 ../clients/tui/nmt-page-wifi.c:227 msgid "SSID" msgstr "SSID" #. 1 -#: ../clients/cli/devices.c:144 +#: ../clients/cli/devices.c:153 msgid "SSID-HEX" msgstr "SSID-HEX" #. 2 -#: ../clients/cli/devices.c:145 ../clients/tui/nmt-page-wifi.c:360 +#: ../clients/cli/devices.c:154 ../clients/tui/nmt-page-wifi.c:361 msgid "BSSID" msgstr "BSSID" #. 3 -#: ../clients/cli/devices.c:146 +#: ../clients/cli/devices.c:155 msgid "MODE" msgstr "LÄGE" #. 4 -#: ../clients/cli/devices.c:147 +#: ../clients/cli/devices.c:156 msgid "CHAN" msgstr "CHAN" #. 5 -#: ../clients/cli/devices.c:148 +#: ../clients/cli/devices.c:157 msgid "FREQ" msgstr "FREK" #. 6 -#: ../clients/cli/devices.c:149 +#: ../clients/cli/devices.c:158 msgid "RATE" msgstr "FREKVENS" #. 7 #. 1 -#: ../clients/cli/devices.c:150 ../clients/cli/devices.c:170 +#: ../clients/cli/devices.c:159 ../clients/cli/devices.c:179 msgid "SIGNAL" msgstr "SIGNAL" #. 8 -#: ../clients/cli/devices.c:151 +#: ../clients/cli/devices.c:160 msgid "BARS" msgstr "BARS" #. 9 -#: ../clients/cli/devices.c:152 +#: ../clients/cli/devices.c:161 msgid "SECURITY" msgstr "SÄKERHET" #. 10 -#: ../clients/cli/devices.c:153 +#: ../clients/cli/devices.c:162 msgid "WPA-FLAGS" msgstr "WPA-FLAGGOR" #. 11 -#: ../clients/cli/devices.c:154 +#: ../clients/cli/devices.c:163 msgid "RSN-FLAGS" msgstr "RSN-FLAGGOR" #. 14 -#: ../clients/cli/devices.c:157 +#: ../clients/cli/devices.c:166 msgid "*" msgstr "*" #. 0 #. 5 -#: ../clients/cli/devices.c:169 ../clients/cli/devices.c:222 +#: ../clients/cli/devices.c:178 ../clients/cli/devices.c:232 msgid "NSP" msgstr "NSP" #. 0 -#: ../clients/cli/devices.c:184 +#: ../clients/cli/devices.c:193 msgid "SLAVES" msgstr "SLAVAR" #. 0 -#: ../clients/cli/devices.c:193 +#: ../clients/cli/devices.c:202 +msgid "PARENT" +msgstr "ÖVERORDNAD" + +#. 1 +#: ../clients/cli/devices.c:203 msgid "ID" msgstr "ID" #. 0 -#: ../clients/cli/devices.c:202 ../clients/cli/devices.c:217 +#: ../clients/cli/devices.c:212 ../clients/cli/devices.c:227 msgid "CAPABILITIES" msgstr "FÖRMÃ…GOR" #. 1 -#: ../clients/cli/devices.c:218 +#: ../clients/cli/devices.c:228 msgid "WIFI-PROPERTIES" msgstr "WIFI-EGENSKAPER" #. 3 -#: ../clients/cli/devices.c:220 +#: ../clients/cli/devices.c:230 msgid "WIRED-PROPERTIES" msgstr "TRÃ…DADE-EGENSKAPER" #. 4 -#: ../clients/cli/devices.c:221 +#: ../clients/cli/devices.c:231 msgid "WIMAX-PROPERTIES" msgstr "WIMAX-EGENSKAPER" #. 10 -#: ../clients/cli/devices.c:227 ../clients/tui/nmt-page-bond.c:73 +#: ../clients/cli/devices.c:237 ../clients/tui/nmt-page-bond.c:354 msgid "BOND" msgstr "KOMBINERING" #. 11 -#: ../clients/cli/devices.c:228 ../clients/tui/nmt-page-team.c:51 +#: ../clients/cli/devices.c:238 ../clients/tui/nmt-page-team.c:148 msgid "TEAM" msgstr "GRUPP" #. 12 -#: ../clients/cli/devices.c:229 ../clients/tui/nmt-page-bridge.c:42 +#: ../clients/cli/devices.c:239 ../clients/tui/nmt-page-bridge.c:77 msgid "BRIDGE" msgstr "BRYGGA" #. 14 -#: ../clients/cli/devices.c:231 +#: ../clients/cli/devices.c:241 msgid "BLUETOOTH" msgstr "BLUETOOTH" #. 15 -#: ../clients/cli/devices.c:232 +#: ../clients/cli/devices.c:242 msgid "CONNECTIONS" msgstr "ANSLUTNINGAR" -#: ../clients/cli/devices.c:256 +#: ../clients/cli/devices.c:266 #, c-format msgid "" "Usage: nmcli device { COMMAND | help }\n" @@ -3231,17 +3577,18 @@ msgid "" "\n" " connect <ifname>\n" "\n" -" disconnect <ifname>\n" +" disconnect <ifname> ...\n" "\n" -" delete <ifname>\n" +" delete <ifname> ...\n" "\n" " wifi [list [ifname <ifname>] [bssid <BSSID>]]\n" "\n" " wifi connect <(B)SSID> [password <password>] [wep-key-type key|phrase] " "[ifname <ifname>]\n" -" [bssid <BSSID>] [name <name>] [private yes|no]\n" +" [bssid <BSSID>] [name <name>] [private yes|no] " +"[hidden yes|no]\n" "\n" -" wifi rescan [[ifname] <ifname>]\n" +" wifi rescan [ifname <ifname>] [[ssid <SSID to scan>] ...]\n" "\n" " wimax [list [ifname <ifname>] [nsp <name>]]\n" "\n" @@ -3259,22 +3606,23 @@ msgstr "" "\n" " connect <grnamn>\n" "\n" -" disconnect <grnamn>\n" +" disconnect <grnamn> …\n" "\n" -" delete <grnamn>\n" +" delete <grnamn> …\n" "\n" " wifi [list [ifname <grnamn>] [bssid <BSSID>]]\n" "\n" " wifi connect <(B)SSID> [password <lösenord>] [wep-key-type key|phrase] " "[ifname <grnamn>]\n" -" [bssid <BSSID>] [name <namn>] [private yes|no]\n" +" [bssid <BSSID>] [name <namn>] [private yes|no] " +"[hidden yes|no]\n" "\n" -" wifi rescan [[ifname] <grnamn>]\n" +" wifi rescan [ifname <grnamn>] [[ssid <SSID att söka av>] …]\n" "\n" " wimax [list [ifname <grnamn>] [nsp <namn>]]\n" "\n" -#: ../clients/cli/devices.c:280 +#: ../clients/cli/devices.c:290 #, c-format msgid "" "Usage: nmcli device status { help }\n" @@ -3304,7 +3652,7 @@ msgstr "" "statusâ€.\n" "\n" -#: ../clients/cli/devices.c:295 +#: ../clients/cli/devices.c:305 #, c-format msgid "" "Usage: nmcli device show { ARGUMENTS | help }\n" @@ -3315,7 +3663,7 @@ msgid "" "The command lists details for all devices, or for a given device.\n" "\n" msgstr "" -"Använding: nmcli device show { ARGUMENT ]| help }\n" +"Användning: nmcli device show { ARGUMENT | help }\n" "\n" "ARGUMENT := [<grnamn>]\n" "\n" @@ -3323,7 +3671,7 @@ msgstr "" "Kommandot listar detaljer för alla enheter eller för en given enhet.\n" "\n" -#: ../clients/cli/devices.c:306 +#: ../clients/cli/devices.c:316 #, c-format msgid "" "Usage: nmcli device connect { ARGUMENTS | help }\n" @@ -3347,14 +3695,14 @@ msgstr "" "att autoansluta.\n" "\n" -#: ../clients/cli/devices.c:318 +#: ../clients/cli/devices.c:328 #, c-format msgid "" "Usage: nmcli device disconnect { ARGUMENTS | help }\n" "\n" -"ARGUMENTS := <ifname>\n" +"ARGUMENTS := <ifname> ...\n" "\n" -"Disconnect the device.\n" +"Disconnect devices.\n" "The command disconnects the device and prevents it from auto-activating\n" "further connections without user/manual intervention.\n" "\n" @@ -3363,20 +3711,20 @@ msgstr "" "\n" "ARGUMENT := <ifnamn>\n" "\n" -"Koppla frÃ¥n enheten.\n" +"Koppla frÃ¥n enheter.\n" "Kommandot kopplar frÃ¥n enheten och hindrar den frÃ¥n att autoaktivera\n" "vidare anslutningar utan användar-/manuellinblandning.\n" "\n" -#: ../clients/cli/devices.c:330 +#: ../clients/cli/devices.c:340 #, c-format msgid "" "Usage: nmcli device delete { ARGUMENTS | help }\n" "\n" -"ARGUMENTS := <ifname>\n" +"ARGUMENTS := <ifname> ...\n" "\n" -"Deletes the software device.\n" -"The command removes the interface. It only works for software devices\n" +"Delete the software devices.\n" +"The command removes the interfaces. It only works for software devices\n" "(like bonds, bridges, etc.). Hardware devices cannot be deleted by the\n" "command.\n" "\n" @@ -3385,13 +3733,13 @@ msgstr "" "\n" "ARGUMENT := <grnamn>\n" "\n" -"Tar bort programvaruenheten.\n" -"Kommandot tar bort gränssnittet. Det fungerar endast för programvaruenheter\n" +"Tar bort programvaruenheterna.\n" +"Kommandot tar bort gränssnitten. Det fungerar endast för programvaruenheter\n" "(som kombineringar, bryggor, etc.). HÃ¥rdvaruenheter kan inte tas bort med\n" "kommandot.\n" "\n" -#: ../clients/cli/devices.c:343 +#: ../clients/cli/devices.c:353 #, c-format msgid "" "Usage: nmcli device wifi { ARGUMENTS | help }\n" @@ -3405,7 +3753,8 @@ msgid "" "\n" "ARGUMENTS := connect <(B)SSID> [password <password>] [wep-key-type key|" "phrase] [ifname <ifname>]\n" -" [bssid <BSSID>] [name <name>] [private yes|no]\n" +" [bssid <BSSID>] [name <name>] [private yes|no] [hidden " +"yes|no]\n" "\n" "Connect to a Wi-Fi network specified by SSID or BSSID. The command creates\n" "a new connection and then activates it on a device. This is a command-line\n" @@ -3416,14 +3765,17 @@ msgid "" "only open, WEP and WPA-PSK networks are supported at the moment. It is also\n" "assumed that IP configuration is obtained via DHCP.\n" "\n" -"ARGUMENTS := rescan [[ifname] <ifname>]\n" +"ARGUMENTS := rescan [ifname <ifname>] [[ssid <SSID to scan>] ...]\n" "\n" "Request that NetworkManager immediately re-scan for available access " "points.\n" "NetworkManager scans Wi-Fi networks periodically, but in some cases it " "might\n" -"be useful to start scanning manually. Note that this command does not show\n" -"the APs, use 'nmcli device wifi list' for that.\n" +"be useful to start scanning manually. 'ssid' allows scanning for a specific\n" +"SSID, which is useful for APs with hidden SSIDs. More 'ssid' parameters can " +"be\n" +"given. Note that this command does not show the APs,\n" +"use 'nmcli device wifi list' for that.\n" "\n" msgstr "" "Användning: nmcli device wifi { ARGUMENT | help }\n" @@ -3432,14 +3784,15 @@ msgstr "" "\n" "ARGUMENT := [list [ifname <grnamn>] [bssid <BSSID>]]\n" "\n" -"List över tillgängliga trÃ¥dlösa accesspunkter. â€ifname†och â€bssidâ€-" +"Lista över tillgängliga trÃ¥dlösa accesspunkter. â€ifname†och â€bssidâ€-" "flaggorna kan\n" "användas för att lista accesspunkter för ett specifikt gränssnitt, eller med " "ett specifikt BSSID.\n" "\n" "ARGUMENT := connect <(B)SSID> [password <lösenord>] [wep-key-type key|" -"phrase] [ifname <ifnamn>]\n" -" [bssid <BSSID>] [name <namn>] [private yes|no]\n" +"phrase] [ifname <grnamn>]\n" +" [bssid <BSSID>] [name <namn>] [private yes|no] [hidden " +"yes|no]\n" "\n" "Anslut till ett trÃ¥dlöst nätverk angivet genom SSID eller BSSID. Kommandot " "skapar\n" @@ -3453,17 +3806,20 @@ msgstr "" "endast öppna WEP och WPA-PSK-nätverk stöds för tillfället. Det antas ocksÃ¥\n" "att IP-konfiguration erhÃ¥lls via DHCP.\n" "\n" -"ARGUMENT := rescan [[ifnamn] <grnamn>]\n" +"ARGUMENT := rescan [[ifnamn] <grnamn>] [[ssid <SSID att söka>] …]\n" "\n" -"Begär att Nätverkshanteraren omedelbart söker av efter tillgängliga " +"Begär att Nätverkshanteraren omedelbart pÃ¥ nytt söker efter tillgängliga " "accesspunkter.\n" "Nätverkshanteraren söker av trÃ¥dlösa nätverk periodiskt, men i nÃ¥gra fall\n" -"kan det vara användbart att söka av manuellt. Observera att detta kommando " -"inte visar\n" -"APs, använd â€nmcli device wifi list†för det.\n" +"kan det vara användbart att söka av manuellt. â€ssid†tillÃ¥ter avsökning " +"efter ett specifikt\n" +"SSID, vilket är praktiskt för accesspunkter med dolda SSID. Flera â€ssidâ€-" +"parametrar kan\n" +"anges. Observera att detta kommando inte visar\n" +"accesspunkterna, använd â€nmcli device wifi list†för det.\n" "\n" -#: ../clients/cli/devices.c:376 +#: ../clients/cli/devices.c:388 #, c-format msgid "" "Usage: nmcli device wimax { ARGUMENTS | help }\n" @@ -3487,213 +3843,255 @@ msgstr "" "lista nätverk för ett specifikt gränssnitt, eller med ett specifik NSP.\n" "\n" -#: ../clients/cli/devices.c:465 ../clients/cli/devices.c:656 +#: ../clients/cli/devices.c:477 ../clients/cli/devices.c:668 msgid "(none)" msgstr "(ingen)" -#: ../clients/cli/devices.c:533 +#: ../clients/cli/devices.c:545 #, c-format msgid "%u MHz" msgstr "%u MHz" -#: ../clients/cli/devices.c:534 +#: ../clients/cli/devices.c:546 #, c-format msgid "%u Mbit/s" msgstr "%u Mbit/s" -#: ../clients/cli/devices.c:549 +#: ../clients/cli/devices.c:561 msgid "WPA1" msgstr "WPA1" -#: ../clients/cli/devices.c:558 +#: ../clients/cli/devices.c:570 msgid "802.1X" msgstr "802.1X" -#: ../clients/cli/devices.c:574 +#: ../clients/cli/devices.c:586 msgid "Ad-Hoc" msgstr "Ad-Hoc" -#: ../clients/cli/devices.c:575 +#: ../clients/cli/devices.c:587 msgid "Infra" msgstr "Infra" -#: ../clients/cli/devices.c:576 +#: ../clients/cli/devices.c:588 msgid "N/A" msgstr "N/A" -#: ../clients/cli/devices.c:607 +#: ../clients/cli/devices.c:619 msgid "Home" msgstr "Hem" -#: ../clients/cli/devices.c:610 +#: ../clients/cli/devices.c:622 msgid "Partner" msgstr "Partner" -#: ../clients/cli/devices.c:613 +#: ../clients/cli/devices.c:625 msgid "Roaming" msgstr "Roaming" -#: ../clients/cli/devices.c:773 +#: ../clients/cli/devices.c:783 msgid "Device details" msgstr "Enhetsdetaljer" -#: ../clients/cli/devices.c:785 +#: ../clients/cli/devices.c:795 #, c-format msgid "Error: 'device show': %s" msgstr "Fel: â€device showâ€: %s" -#: ../clients/cli/devices.c:836 ../clients/cli/devices.c:839 +#: ../clients/cli/devices.c:847 ../clients/cli/devices.c:850 msgid "(unknown)" msgstr "(okänd)" -#: ../clients/cli/devices.c:877 +#: ../clients/cli/devices.c:891 #, c-format msgid "%u Mb/s" msgstr "%u Mb/s" -#: ../clients/cli/devices.c:963 +#: ../clients/cli/devices.c:981 msgid "on" msgstr "pÃ¥" -#: ../clients/cli/devices.c:963 +#: ../clients/cli/devices.c:981 msgid "off" msgstr "av" -#: ../clients/cli/devices.c:1235 +#: ../clients/cli/devices.c:1255 #, c-format msgid "Error: 'device status': %s" msgstr "Fel: â€device statusâ€: %s" #. Add headers -#: ../clients/cli/devices.c:1242 +#: ../clients/cli/devices.c:1262 msgid "Status of devices" msgstr "Status för enheter" -#: ../clients/cli/devices.c:1273 +#: ../clients/cli/devices.c:1293 #, c-format msgid "Error: invalid extra argument '%s'." msgstr "Fel: ogiltigt extra argument: â€%sâ€." -#: ../clients/cli/devices.c:1290 ../clients/cli/devices.c:1565 -#: ../clients/cli/devices.c:1698 ../clients/cli/devices.c:1785 -#: ../clients/cli/devices.c:1918 ../clients/cli/devices.c:2579 +#: ../clients/cli/devices.c:1310 ../clients/cli/devices.c:1608 +#: ../clients/cli/devices.c:2080 ../clients/cli/devices.c:2847 #, c-format msgid "Error: Device '%s' not found." msgstr "Fel: Enheten â€%s†hittades inte." -#: ../clients/cli/devices.c:1345 +#: ../clients/cli/devices.c:1388 #, c-format msgid "Device '%s' successfully activated with '%s'.\n" msgstr "Enheten â€%s†aktiverades med â€%sâ€.\n" -#: ../clients/cli/devices.c:1367 ../clients/cli/devices.c:1418 -#, c-format -msgid "Connection with UUID '%s' created and activated on device '%s'\n" -msgstr "Anslutningen med UUID â€%s†skapad och aktiverad pÃ¥ enhet â€%sâ€\n" - -#: ../clients/cli/devices.c:1372 +#: ../clients/cli/devices.c:1394 #, c-format -msgid "Error: Connection activation failed: (%d) %s." -msgstr "Fel: Aktivering av anslutningen misslyckades: (%d) %s." +msgid "Error: Connection activation failed: (%d) %s.\n" +msgstr "Fel: Aktivering av anslutningen misslyckades: (%d) %s.\n" -#: ../clients/cli/devices.c:1399 +#: ../clients/cli/devices.c:1428 #, c-format msgid "Error: Failed to add/activate new connection: %s" msgstr "Fel: Misslyckades med att lägga till/aktivera ny anslutning: %s" -#: ../clients/cli/devices.c:1408 +#: ../clients/cli/devices.c:1437 #, c-format msgid "Error: Failed to add/activate new connection: Unknown error" msgstr "Fel: Misslyckades att lägga till/aktivera ny anslutning: Okänt fel" -#: ../clients/cli/devices.c:1480 +#: ../clients/cli/devices.c:1448 +#, c-format +msgid "Connection with UUID '%s' created and activated on device '%s'\n" +msgstr "Anslutningen med UUID â€%s†skapad och aktiverad pÃ¥ enhet â€%sâ€\n" + +#: ../clients/cli/devices.c:1512 #, c-format msgid "Error: Device activation failed: %s" msgstr "Fel: Aktivering av enheten misslyckades: %s" -#: ../clients/cli/devices.c:1489 +#: ../clients/cli/devices.c:1521 #, c-format msgid "Error: Device activation failed: device was disconnected" msgstr "Fel: Aktivering av enheten misslyckades: enheten blev frÃ¥nkopplad" -#: ../clients/cli/devices.c:1503 +#: ../clients/cli/devices.c:1536 #, c-format msgid "Device '%s' has been connected.\n" msgstr "Enheten â€%s†är ansluten.\n" -#: ../clients/cli/devices.c:1534 ../clients/cli/devices.c:1543 -#: ../clients/cli/devices.c:1667 ../clients/cli/devices.c:1676 -#: ../clients/cli/devices.c:1755 ../clients/cli/devices.c:1763 +#: ../clients/cli/devices.c:1577 ../clients/cli/devices.c:1586 +#: ../clients/cli/devices.c:1787 ../clients/cli/devices.c:1902 #, c-format msgid "Error: No interface specified." msgstr "Fel: Inget gränssnitt angivet." -#: ../clients/cli/devices.c:1549 ../clients/cli/devices.c:1682 -#: ../clients/cli/devices.c:1769 +#: ../clients/cli/devices.c:1592 #, c-format msgid "Error: extra argument not allowed: '%s'." msgstr "Fel: extra argument saknas: â€%sâ€." -#: ../clients/cli/devices.c:1608 +#: ../clients/cli/devices.c:1676 ../clients/cli/devices.c:1691 +#: ../clients/cli/devices.c:1755 +#, c-format +msgid "Device '%s' successfully disconnected.\n" +msgstr "Lyckades: Enheten â€%s†kopplades frÃ¥n.\n" + +#: ../clients/cli/devices.c:1679 +#, c-format +msgid "Device '%s' successfully removed.\n" +msgstr "Enheten â€%s†togs bort.\n" + +#: ../clients/cli/devices.c:1739 +#, c-format +msgid "Error: not all devices disconnected." +msgstr "Fel: alla anslutningar inte frÃ¥nkopplade." + +#: ../clients/cli/devices.c:1740 +#, c-format +msgid "Error: Device '%s' (%s) disconnecting failed: %s\n" +msgstr "Fel: FrÃ¥nkoppling av enheten â€%s†(%s) misslyckades: %s\n" + +#: ../clients/cli/devices.c:1807 ../clients/cli/devices.c:1929 +#, c-format +msgid "Warning: argument '%s' is duplicated.\n" +msgstr "Varning: argumentet â€%s†är duplicerat.\n" + +#: ../clients/cli/devices.c:1809 ../clients/cli/devices.c:1931 +#, c-format +msgid "Error: Device '%s' not found.\n" +msgstr "Fel: Enheten â€%s†hittades inte.\n" + +#: ../clients/cli/devices.c:1810 ../clients/cli/devices.c:1932 +#, c-format +msgid "Error: not all devices found." +msgstr "Fel: hittade inte alla enheter." + +#: ../clients/cli/devices.c:1820 ../clients/cli/devices.c:1942 #, c-format -msgid "Success: Device '%s' successfully disconnected." -msgstr "Lyckades: Enheten â€%s†kopplades frÃ¥n." +msgid "Error: no valid device provided." +msgstr "Fel: ingen giltig enhet tillhandahÃ¥llen." -#: ../clients/cli/devices.c:1622 +#: ../clients/cli/devices.c:1864 #, c-format -msgid "Error: Device '%s' (%s) disconnecting failed: %s" -msgstr "Fel: FrÃ¥nkoppling av enheten â€%s†(%s) misslyckades: %s" +msgid "Error: not all devices deleted." +msgstr "Fel: alla enheter inte borttagna." -#: ../clients/cli/devices.c:1637 +#: ../clients/cli/devices.c:1865 #, c-format -msgid "Device '%s' has been disconnected.\n" -msgstr "Enheten â€%s†kopplades frÃ¥n.\n" +msgid "Error: Device '%s' (%s) deletion failed: %s\n" +msgstr "Fel: Borttagning av enheten â€%s†(%s) misslyckades: %s\n" -#: ../clients/cli/devices.c:1727 +#: ../clients/cli/devices.c:1923 #, c-format -msgid "Error: Device '%s' (%s) deletion failed: %s" -msgstr "Fel: Borttagning av enheten â€%s†(%s) misslyckades: %s" +msgid "Error: Device '%s' is a hardware device. It can't be deleted.\n" +msgstr "Fel: Enheten â€%s†är en hÃ¥rdvaruenhet. Den kan inte tas bort.\n" -#: ../clients/cli/devices.c:1791 +#: ../clients/cli/devices.c:1925 #, c-format -msgid "Error: Device '%s' is a hardware device. It can't be deleted." -msgstr "Fel: Enheten â€%s†är en hÃ¥rdvaruenhet. Det kan inte tas bort." +msgid "Error: not all devices valid." +msgstr "Fel: alla enheter är inte giltiga." -#: ../clients/cli/devices.c:1861 +#: ../clients/cli/devices.c:2023 msgid "Wi-Fi scan list" msgstr "TrÃ¥dlös avsökningslista" -#: ../clients/cli/devices.c:1899 +#: ../clients/cli/devices.c:2061 #, c-format msgid "Error: 'device wifi': %s" msgstr "Fel: â€device wifiâ€: %s" -#: ../clients/cli/devices.c:1941 ../clients/cli/devices.c:2016 +#: ../clients/cli/devices.c:2103 ../clients/cli/devices.c:2184 #, c-format msgid "Error: Access point with bssid '%s' not found." msgstr "Fel: Accesspunkt med bssid â€%s†hittades inte." -#: ../clients/cli/devices.c:1965 ../clients/cli/devices.c:2282 -#: ../clients/cli/devices.c:2446 +#: ../clients/cli/devices.c:2130 +#, c-format +msgid "" +"Error: Device '%s' was not recognized as a Wi-Fi device, check " +"NetworkManager Wi-Fi plugin." +msgstr "" +"Fel: Enheten â€%s†kändes inte igen som en trÃ¥dlös enhet, kontrollera " +"insticksmodulen NetworkManager Wi-Fi." + +#: ../clients/cli/devices.c:2132 ../clients/cli/devices.c:2464 +#: ../clients/cli/devices.c:2695 #, c-format msgid "Error: Device '%s' is not a Wi-Fi device." msgstr "Fel: Enheten â€%s†är inte en trÃ¥dlös enhet." -#: ../clients/cli/devices.c:2175 +#: ../clients/cli/devices.c:2344 msgid "SSID or BSSID: " msgstr "SSID eller BSSID: " -#: ../clients/cli/devices.c:2180 +#: ../clients/cli/devices.c:2349 #, c-format msgid "Error: SSID or BSSID are missing." msgstr "Fel: SSID eller BSSID saknas." -#: ../clients/cli/devices.c:2204 +#: ../clients/cli/devices.c:2373 #, c-format msgid "Error: bssid argument value '%s' is not a valid BSSID." msgstr "Fel: bssid-argumentvärdet â€%s†är inte ett giltigt BSSID." -#: ../clients/cli/devices.c:2228 +#: ../clients/cli/devices.c:2397 #, c-format msgid "" "Error: wep-key-type argument value '%s' is invalid, use 'key' or 'phrase'." @@ -3701,153 +4099,172 @@ msgstr "" "Fel: wep-key-type-argumentvärdet â€%s†är ogiltigt, använd â€key†eller " "â€phraseâ€." -#: ../clients/cli/devices.c:2248 +#: ../clients/cli/devices.c:2417 ../clients/cli/devices.c:2430 #, c-format msgid "Error: %s: %s." msgstr "Fel: %s %s." -#: ../clients/cli/devices.c:2263 +#: ../clients/cli/devices.c:2445 #, c-format msgid "Error: BSSID to connect to (%s) differs from bssid argument (%s)." msgstr "" "Fel: BSSID att ansluta till (%s) skiljer sig frÃ¥n bssid-argumentet (%s)." -#: ../clients/cli/devices.c:2269 +#: ../clients/cli/devices.c:2451 #, c-format msgid "Error: Parameter '%s' is neither SSID nor BSSID." msgstr "Fel: Parameter â€%s†är varken SSID eller BSSID." -#: ../clients/cli/devices.c:2284 ../clients/cli/devices.c:2448 +#: ../clients/cli/devices.c:2466 ../clients/cli/devices.c:2697 #, c-format msgid "Error: No Wi-Fi device found." msgstr "Fel: Ingen trÃ¥dlös enhet hittades." -#: ../clients/cli/devices.c:2302 +#: ../clients/cli/devices.c:2486 +#, c-format +msgid "Error: Failed to scan hidden SSID: %s." +msgstr "Fel: Misslyckades att söka av dolt SSID: %s." + +#: ../clients/cli/devices.c:2511 #, c-format msgid "Error: No network with SSID '%s' found." msgstr "Fel: Inget nätverk med SSID â€%s†hittades." -#: ../clients/cli/devices.c:2304 +#: ../clients/cli/devices.c:2513 #, c-format msgid "Error: No access point with BSSID '%s' found." msgstr "Fel: Ingen accesspunkt med BSSID â€%s†hittades." -#: ../clients/cli/devices.c:2343 +#: ../clients/cli/devices.c:2555 +#, c-format +msgid "" +"Warning: '%s' should be SSID for hidden APs; but it looks like a BSSID.\n" +msgstr "" +"Varning: â€%s†borde vara SSID för dolda accesspunkter, men det ser ut som " +"ett BSSID.\n" + +#: ../clients/cli/devices.c:2569 msgid "Password: " -msgstr "Lösenord:" +msgstr "Lösenord: " + +# flaggan "ssid" kan upprepas +#: ../clients/cli/devices.c:2664 +#, c-format +msgid "Error: '%s' cannot repeat." +msgstr "Fel: â€%s†kan inte upprepas." -#: ../clients/cli/devices.c:2475 +#: ../clients/cli/devices.c:2743 #, c-format msgid "Error: 'device wifi' command '%s' is not valid." -msgstr "Fel: “device wifi“-kommandot â€%s†är inte giltigt." +msgstr "Fel: â€device wifiâ€-kommandot â€%s†är inte giltigt." -#: ../clients/cli/devices.c:2522 +#: ../clients/cli/devices.c:2790 msgid "WiMAX NSP list" msgstr "WiMAX NSP-lista" -#: ../clients/cli/devices.c:2559 +#: ../clients/cli/devices.c:2827 #, c-format msgid "Error: 'device wimax': %s" msgstr "Fel: â€device wimaxâ€: %s" -#: ../clients/cli/devices.c:2602 +#: ../clients/cli/devices.c:2870 #, c-format msgid "Error: NSP with name '%s' not found." msgstr "Fel: NSP med namnet â€%s†hittades inte." -#: ../clients/cli/devices.c:2615 +#: ../clients/cli/devices.c:2883 #, c-format msgid "Error: Device '%s' is not a WiMAX device." msgstr "Fel: Enheten â€%s†är inte en WiMAX-enhet." -#: ../clients/cli/devices.c:2659 +#: ../clients/cli/devices.c:2927 #, c-format msgid "Error: Access point with nsp '%s' not found." msgstr "Fel: Accesspunkt med nsp â€%s†hittades inte." -#: ../clients/cli/devices.c:2696 +#: ../clients/cli/devices.c:2964 #, c-format msgid "Error: 'device wimax' command '%s' is not valid." msgstr "Fel: â€device wimaxâ€-kommandot â€%s†är inte giltigt." -#: ../clients/cli/devices.c:2866 +#: ../clients/cli/devices.c:3140 #, c-format msgid "Error: 'dev' command '%s' is not valid." msgstr "Fel: â€devâ€-kommandot â€%s†är inte giltigt." -#: ../clients/cli/general.c:34 +#: ../clients/cli/general.c:35 msgid "RUNNING" msgstr "KÖR" #. 0 -#: ../clients/cli/general.c:35 +#: ../clients/cli/general.c:36 msgid "VERSION" msgstr "VERSION" #. 2 -#: ../clients/cli/general.c:37 +#: ../clients/cli/general.c:38 msgid "STARTUP" msgstr "UPPSTART" #. 3 -#: ../clients/cli/general.c:38 +#: ../clients/cli/general.c:39 msgid "CONNECTIVITY" msgstr "ANSLUTNING" #. 4 -#: ../clients/cli/general.c:39 +#: ../clients/cli/general.c:40 msgid "NETWORKING" msgstr "NÄTVERK" #. 5 -#: ../clients/cli/general.c:40 +#: ../clients/cli/general.c:41 msgid "WIFI-HW" msgstr "WIFI-HW" #. 6 -#: ../clients/cli/general.c:41 +#: ../clients/cli/general.c:42 msgid "WIFI" msgstr "WIFI" #. 7 -#: ../clients/cli/general.c:42 +#: ../clients/cli/general.c:43 msgid "WWAN-HW" msgstr "WWAN-HW" #. 8 -#: ../clients/cli/general.c:43 +#: ../clients/cli/general.c:44 msgid "WWAN" msgstr "WWAN" #. 9 -#: ../clients/cli/general.c:44 +#: ../clients/cli/general.c:45 msgid "WIMAX-HW" msgstr "WIMAX_HW" #. 10 -#: ../clients/cli/general.c:45 +#: ../clients/cli/general.c:46 msgid "WIMAX" msgstr "WIMAX" -#: ../clients/cli/general.c:67 +#: ../clients/cli/general.c:68 msgid "PERMISSION" msgstr "TILLSTÃ…ND" #. 0 -#: ../clients/cli/general.c:68 +#: ../clients/cli/general.c:69 msgid "VALUE" msgstr "VÄRDE" -#: ../clients/cli/general.c:76 +#: ../clients/cli/general.c:77 msgid "LEVEL" msgstr "NIVÃ…" #. 0 -#: ../clients/cli/general.c:77 +#: ../clients/cli/general.c:78 msgid "DOMAINS" msgstr "DOMÄN" -#: ../clients/cli/general.c:91 +#: ../clients/cli/general.c:92 #, c-format msgid "" "Usage: nmcli general { COMMAND | help }\n" @@ -3876,7 +4293,7 @@ msgstr "" " logging [level <loggnivÃ¥>] [domains <loggdomäner>]\n" "\n" -#: ../clients/cli/general.c:102 +#: ../clients/cli/general.c:103 #, c-format msgid "" "Usage: nmcli general status { help }\n" @@ -3893,7 +4310,7 @@ msgstr "" "statusâ€\n" "\n" -#: ../clients/cli/general.c:111 +#: ../clients/cli/general.c:112 #, c-format msgid "" "Usage: nmcli general hostname { ARGUMENTS | help }\n" @@ -3916,7 +4333,7 @@ msgstr "" "systemvärdnamnet.\n" "\n" -#: ../clients/cli/general.c:123 +#: ../clients/cli/general.c:124 #, c-format msgid "" "Usage: nmcli general permissions { help }\n" @@ -3929,7 +4346,7 @@ msgstr "" "Visar anropsrättigheter för autentiserade Ã¥tgärder.\n" "\n" -#: ../clients/cli/general.c:131 +#: ../clients/cli/general.c:132 #, c-format msgid "" "Usage: nmcli general logging { ARGUMENTS | help }\n" @@ -3949,12 +4366,12 @@ msgstr "" "ARGUMENT := [level <loggnivÃ¥>] [domains <loggdomäner>]\n" "\n" "Hämta eller ändra Nätverkshanterarens loggnivÃ¥ och domäner.\n" -"Utan nÃ¥gra arguement visas aktuell loggnivÃ¥ och domäner. För att\n" +"Utan nÃ¥gra argument visas aktuell loggnivÃ¥ och domäner. För att\n" "ändra loggtillstÃ¥nd, skicka med nivÃ¥ och/eller domän. Se manualsidan\n" "för en lista över möjliga loggdomäner.\n" "\n" -#: ../clients/cli/general.c:144 +#: ../clients/cli/general.c:145 #, c-format msgid "" "Usage: nmcli networking { COMMAND | help }\n" @@ -3979,7 +4396,7 @@ msgstr "" " connectivity [check]\n" "\n" -#: ../clients/cli/general.c:154 +#: ../clients/cli/general.c:155 #, c-format msgid "" "Usage: nmcli networking on { help }\n" @@ -3992,7 +4409,7 @@ msgstr "" "SlÃ¥ pÃ¥ nätverk.\n" "\n" -#: ../clients/cli/general.c:162 +#: ../clients/cli/general.c:163 #, c-format msgid "" "Usage: nmcli networking off { help }\n" @@ -4005,7 +4422,7 @@ msgstr "" "SlÃ¥ av nätverk.\n" "\n" -#: ../clients/cli/general.c:170 +#: ../clients/cli/general.c:171 #, c-format msgid "" "Usage: nmcli networking connectivity { ARGUMENTS | help }\n" @@ -4026,7 +4443,7 @@ msgstr "" "anslutning.\n" "\n" -#: ../clients/cli/general.c:182 +#: ../clients/cli/general.c:183 #, c-format msgid "" "Usage: nmcli radio { COMMAND | help }\n" @@ -4051,7 +4468,7 @@ msgstr "" " all | wifi | wwan [ on | off ]\n" "\n" -#: ../clients/cli/general.c:196 +#: ../clients/cli/general.c:197 #, c-format msgid "" "Usage: nmcli radio all { ARGUMENTS | help }\n" @@ -4068,7 +4485,7 @@ msgstr "" "Hämta statusen för alla radioväxlar eller slÃ¥ pÃ¥/av dem.\n" "\n" -#: ../clients/cli/general.c:206 +#: ../clients/cli/general.c:207 #, c-format msgid "" "Usage: nmcli radio wifi { ARGUMENTS | help }\n" @@ -4085,7 +4502,7 @@ msgstr "" "Hämta status för trÃ¥dlösa radioväxeln eller slÃ¥ pÃ¥/av den.\n" "\n" -#: ../clients/cli/general.c:216 +#: ../clients/cli/general.c:217 #, c-format msgid "" "Usage: nmcli radio wwan { ARGUMENTS | help }\n" @@ -4102,7 +4519,7 @@ msgstr "" "Hämta status för mobila bredbandsradioväxeln eller slÃ¥ pÃ¥/av den.\n" "\n" -#: ../clients/cli/general.c:227 +#: ../clients/cli/general.c:228 #, c-format msgid "" "Usage: nmcli radio wimax { ARGUMENTS | help }\n" @@ -4119,164 +4536,164 @@ msgstr "" "Hämta status för WiMAX-radioväxeln, eller slÃ¥ pÃ¥/av den.\n" "\n" -#: ../clients/cli/general.c:247 +#: ../clients/cli/general.c:248 msgid "asleep" msgstr "sover" -#: ../clients/cli/general.c:249 +#: ../clients/cli/general.c:250 msgid "connecting" msgstr "ansluter" -#: ../clients/cli/general.c:251 +#: ../clients/cli/general.c:252 msgid "connected (local only)" msgstr "ansluten (endast lokalt)" -#: ../clients/cli/general.c:253 +#: ../clients/cli/general.c:254 msgid "connected (site only)" msgstr "ansluten (endast plats)" -#: ../clients/cli/general.c:257 +#: ../clients/cli/general.c:258 msgid "disconnecting" msgstr "kopplar frÃ¥n" -#: ../clients/cli/general.c:273 +#: ../clients/cli/general.c:274 msgid "portal" msgstr "portal" -#: ../clients/cli/general.c:275 +#: ../clients/cli/general.c:276 msgid "limited" msgstr "begränsad" -#: ../clients/cli/general.c:277 +#: ../clients/cli/general.c:278 msgid "full" msgstr "full" -#: ../clients/cli/general.c:315 +#: ../clients/cli/general.c:316 #, c-format msgid "Error: only these fields are allowed: %s" msgstr "Fel: endast dessa fält är tillÃ¥tna: %s" -#: ../clients/cli/general.c:335 ../clients/cli/general.c:336 -#: ../clients/cli/general.c:337 ../clients/cli/general.c:338 -#: ../clients/cli/general.c:339 ../clients/cli/general.c:341 -#: ../clients/cli/general.c:342 +#: ../clients/cli/general.c:336 ../clients/cli/general.c:337 +#: ../clients/cli/general.c:338 ../clients/cli/general.c:339 +#: ../clients/cli/general.c:340 ../clients/cli/general.c:342 +#: ../clients/cli/general.c:343 msgid "enabled" msgstr "aktiverad" -#: ../clients/cli/general.c:335 ../clients/cli/general.c:336 -#: ../clients/cli/general.c:337 ../clients/cli/general.c:338 -#: ../clients/cli/general.c:339 ../clients/cli/general.c:341 -#: ../clients/cli/general.c:342 +#: ../clients/cli/general.c:336 ../clients/cli/general.c:337 +#: ../clients/cli/general.c:338 ../clients/cli/general.c:339 +#: ../clients/cli/general.c:340 ../clients/cli/general.c:342 +#: ../clients/cli/general.c:343 msgid "disabled" msgstr "inaktiverad" -#: ../clients/cli/general.c:345 +#: ../clients/cli/general.c:346 msgid "NetworkManager status" msgstr "Status för Nätverkshanteraren" -#: ../clients/cli/general.c:350 +#: ../clients/cli/general.c:351 msgid "running" msgstr "kör" -#: ../clients/cli/general.c:353 +#: ../clients/cli/general.c:354 msgid "starting" msgstr "startar" -#: ../clients/cli/general.c:353 +#: ../clients/cli/general.c:354 msgid "started" msgstr "startad" -#: ../clients/cli/general.c:424 +#: ../clients/cli/general.c:425 msgid "auth" msgstr "aute" -#: ../clients/cli/general.c:453 +#: ../clients/cli/general.c:454 #, c-format msgid "Error: 'general permissions': %s" msgstr "Fel: â€general permissionsâ€: %s" -#: ../clients/cli/general.c:467 +#: ../clients/cli/general.c:468 msgid "NetworkManager permissions" msgstr "Rättigheter för Nätverkshanteraren" -#: ../clients/cli/general.c:508 +#: ../clients/cli/general.c:509 #, c-format msgid "Error: 'general logging': %s" msgstr "Fel: â€general loggingâ€: %s" -#: ../clients/cli/general.c:523 +#: ../clients/cli/general.c:524 msgid "NetworkManager logging" msgstr "Loggning för Nätverkshanteraren" -#: ../clients/cli/general.c:545 +#: ../clients/cli/general.c:546 #, c-format msgid "Error: failed to set hostname: %s" msgstr "Fel: misslyckades med att sätta värdnamn: %s" -#: ../clients/cli/general.c:655 +#: ../clients/cli/general.c:659 #, c-format msgid "Error: failed to set logging: %s" msgstr "Fel: misslyckades att sätta loggning: %s" -#: ../clients/cli/general.c:664 +#: ../clients/cli/general.c:668 #, c-format msgid "Error: 'general' command '%s' is not valid." msgstr "Fel: â€generalâ€-kommandot â€%s†är inte giltigt." -#: ../clients/cli/general.c:682 +#: ../clients/cli/general.c:686 #, c-format msgid "Error: '--fields' value '%s' is not valid here (allowed field: %s)" msgstr "" "Fel: värdet â€%s†för â€--fields†är inte giltigt här (tillÃ¥tna fält: %s)" -#: ../clients/cli/general.c:707 +#: ../clients/cli/general.c:711 #, c-format msgid "Error: invalid '%s' argument: '%s' (use on/off)." msgstr "Fel: ogiltigt â€%sâ€-argument: â€%s†(använd pÃ¥/av)." -#: ../clients/cli/general.c:718 +#: ../clients/cli/general.c:722 msgid "Connectivity" msgstr "Anslutning" -#: ../clients/cli/general.c:730 +#: ../clients/cli/general.c:737 msgid "Networking" msgstr "Nätverk" -#: ../clients/cli/general.c:755 +#: ../clients/cli/general.c:762 #, c-format msgid "Error: 'networking connectivity' command '%s' is not valid." msgstr "Fel: â€networking connectivityâ€-kommandot â€%s†är inte giltigt." -#: ../clients/cli/general.c:771 +#: ../clients/cli/general.c:778 #, c-format msgid "Error: 'networking' command '%s' is not valid." msgstr "Fel: â€networkingâ€-kommandot â€%s†är inte giltigt." -#: ../clients/cli/general.c:797 ../clients/cli/general.c:817 +#: ../clients/cli/general.c:807 ../clients/cli/general.c:827 msgid "Radio switches" msgstr "Radioväxlar" #. no argument, show current WiFi state -#: ../clients/cli/general.c:835 +#: ../clients/cli/general.c:845 msgid "Wi-Fi radio switch" msgstr "TrÃ¥dlös radioväxel" #. no argument, show current WWAN (mobile broadband) state -#: ../clients/cli/general.c:851 +#: ../clients/cli/general.c:861 msgid "WWAN radio switch" msgstr "WWAN radioväxel" #. no argument, show current WiMAX state -#: ../clients/cli/general.c:868 +#: ../clients/cli/general.c:878 msgid "WiMAX radio switch" msgstr "WiMAX radioväxel" -#: ../clients/cli/general.c:880 +#: ../clients/cli/general.c:890 #, c-format msgid "Error: 'radio' command '%s' is not valid." msgstr "Fel: â€radioâ€-kommandot â€%s†är inte giltigt." -#: ../clients/cli/nmcli.c:81 +#: ../clients/cli/nmcli.c:86 #, c-format msgid "" "Usage: %s [OPTIONS] OBJECT { COMMAND | help }\n" @@ -4302,6 +4719,7 @@ msgid "" " r[adio] NetworkManager radio switches\n" " c[onnection] NetworkManager's connections\n" " d[evice] devices managed by NetworkManager\n" +" a[gent] NetworkManager secret agent or polkit agent\n" "\n" msgstr "" "Användning: %s [FLAGGOR] OBJEKT { KOMMANDO | help }\n" @@ -4310,9 +4728,9 @@ msgstr "" " -t[erse] sparsam utdata\n" " -p[retty] vacker utdata\n" " -m[ode] tabular|multiline utdataläge\n" -" -f[ields] <field1,field2,…>|all|common ange fält för utdata\n" -" -e[scape] yes|no escape columns separators in " -"values\n" +" -f[ields] <field1,field2,…>|all|common ange fält för utdata\n" +" -e[scape] yes|no omge kolumnseparatorer i värden " +"med säker sträng\n" " -n[ocheck] kontrollera inte nmcli och " "Nätverkshanterarens versioner\n" " -a[sk] frÃ¥ga efter saknade parametrar\n" @@ -4326,65 +4744,66 @@ msgstr "" " r[adio] Nätverkshanterarens radioväxlar\n" " c[onnection] Nätverkshanterarens anslutningar\n" " d[evice] enheter som hanteras av Nätverkshanteraren\n" +" a[gent] hemlig- eller polkitagent för Nätverkshanteraren\n" "\n" -#: ../clients/cli/nmcli.c:135 +#: ../clients/cli/nmcli.c:142 #, c-format msgid "Error: Object '%s' is unknown, try 'nmcli help'." msgstr "Fel: Objektet â€%s†är okänt, prova â€nmcli helpâ€." -#: ../clients/cli/nmcli.c:165 +#: ../clients/cli/nmcli.c:172 #, c-format msgid "Error: Option '--terse' is specified the second time." msgstr "Fel: Flaggan â€--terse†har angivits en andra gÃ¥ng." -#: ../clients/cli/nmcli.c:170 +#: ../clients/cli/nmcli.c:177 #, c-format msgid "Error: Option '--terse' is mutually exclusive with '--pretty'." msgstr "Fel: Flaggan â€--terse†är ömsesidigt uteslutande med â€--prettyâ€." -#: ../clients/cli/nmcli.c:178 +#: ../clients/cli/nmcli.c:185 #, c-format msgid "Error: Option '--pretty' is specified the second time." msgstr "Fel: Flaggan â€--pretty†har angivits en andra gÃ¥ng." -#: ../clients/cli/nmcli.c:183 +#: ../clients/cli/nmcli.c:190 #, c-format msgid "Error: Option '--pretty' is mutually exclusive with '--terse'." msgstr "Fel: Flaggan â€--pretty†är ömsesidigt uteslutande med â€--terseâ€." -#: ../clients/cli/nmcli.c:193 ../clients/cli/nmcli.c:209 -#: ../clients/cli/nmcli.c:238 +#: ../clients/cli/nmcli.c:200 ../clients/cli/nmcli.c:216 +#: ../clients/cli/nmcli.c:245 #, c-format msgid "Error: missing argument for '%s' option." msgstr "Fel: argument för flaggan â€%s†saknas." -#: ../clients/cli/nmcli.c:202 ../clients/cli/nmcli.c:218 +#: ../clients/cli/nmcli.c:209 ../clients/cli/nmcli.c:225 #, c-format msgid "Error: '%s' is not valid argument for '%s' option." msgstr "Fel: â€%s†är inte ett giltigt argument för flaggan â€%sâ€." -#: ../clients/cli/nmcli.c:225 +#: ../clients/cli/nmcli.c:232 #, c-format msgid "Error: fields for '%s' options are missing." msgstr "Fel: fält för â€%sâ€-flaggor saknas." -#: ../clients/cli/nmcli.c:243 +#: ../clients/cli/nmcli.c:250 #, c-format msgid "Error: '%s' is not a valid timeout for '%s' option." msgstr "Fel: â€%s†är inte en giltig tidsgräns för flaggan â€%sâ€." -#: ../clients/cli/nmcli.c:250 +#: ../clients/cli/nmcli.c:257 #, c-format msgid "nmcli tool, version %s\n" msgstr "nmcli-verktyg, version %s\n" -#: ../clients/cli/nmcli.c:256 +#: ../clients/cli/nmcli.c:263 #, c-format msgid "Error: Option '%s' is unknown, try 'nmcli -help'." msgstr "Fel: Flaggan â€%s†är okänd, prova â€nmcli -helpâ€." -#: ../clients/cli/nmcli.c:336 ../clients/cli/nmcli.c:345 +#: ../clients/cli/nmcli.c:346 ../clients/cli/nmcli.c:356 #, c-format msgid "" "\n" @@ -4393,227 +4812,297 @@ msgstr "" "\n" "Fel: nmcli dödad av signalen %s (%d)\n" -#: ../clients/cli/nmcli.c:376 +#: ../clients/cli/nmcli.c:387 #, c-format msgid "Failed to set signal mask: %d\n" msgstr "Misslyckades med att sätta signalmasken: %d\n" -#: ../clients/cli/nmcli.c:383 +#: ../clients/cli/nmcli.c:394 #, c-format msgid "Failed to create signal handling thread: %d\n" msgstr "Misslyckades med att skapa signalhanteringstrÃ¥d: %d\n" -#: ../clients/cli/nmcli.c:480 ../clients/nm-online.c:197 +#: ../clients/cli/nmcli.c:491 ../clients/nm-online.c:197 #, c-format msgid "Error: Could not create NMClient object: %s." msgstr "Fel: Kunde inte skapa NMClient-objektet: %s." -#: ../clients/cli/nmcli.c:497 +#: ../clients/cli/nmcli.c:508 msgid "Success" msgstr "Lyckades" -#: ../clients/cli/settings.c:657 +#: ../clients/cli/polkit-agent.c:82 +#, c-format +msgid "Authentication message: %s\n" +msgstr "Autentiseringsmeddelande: %s\n" + +#: ../clients/cli/polkit-agent.c:88 +#, c-format +msgid "Authentication error: %s\n" +msgstr "Autentiseringsfel: %s\n" + +#: ../clients/cli/polkit-agent.c:134 +#, c-format +msgid "Warning: polkit agent initialization failed: %s\n" +msgstr "Varning: Initiering av polkit-agent misslyckades: %s\n" + +#: ../clients/cli/settings.c:685 #, c-format msgid "%d (key)" msgstr "%d (nyckel)" -#: ../clients/cli/settings.c:659 +#: ../clients/cli/settings.c:687 #, c-format msgid "%d (passphrase)" msgstr "%d (lösenfras)" -#: ../clients/cli/settings.c:662 ../clients/cli/settings.c:743 +#: ../clients/cli/settings.c:690 ../clients/cli/settings.c:774 #, c-format msgid "%d (unknown)" msgstr "%d (okänt)" -#: ../clients/cli/settings.c:691 +#: ../clients/cli/settings.c:719 msgid "0 (NONE)" msgstr "0 (INGEN)" -#: ../clients/cli/settings.c:697 +#: ../clients/cli/settings.c:725 msgid "REORDER_HEADERS, " msgstr "REORDER_HEADERS, " -#: ../clients/cli/settings.c:699 +#: ../clients/cli/settings.c:727 msgid "GVRP, " msgstr "GVRP, " -#: ../clients/cli/settings.c:701 +#: ../clients/cli/settings.c:729 msgid "LOOSE_BINDING, " msgstr "LOOSE_BINDING, " -#: ../clients/cli/settings.c:737 +#: ../clients/cli/settings.c:768 #, c-format msgid "%d (disabled)" -msgstr "(%d) (inaktiverad)" +msgstr "%d (inaktiverad)" -#: ../clients/cli/settings.c:739 +#: ../clients/cli/settings.c:770 #, c-format msgid "%d (enabled, prefer public IP)" msgstr "%d (aktiverad, föredra publik IP)" -#: ../clients/cli/settings.c:741 +#: ../clients/cli/settings.c:772 #, c-format msgid "%d (enabled, prefer temporary IP)" msgstr "%d (aktiverad, föredra temporärt IP)" -#: ../clients/cli/settings.c:753 +#: ../clients/cli/settings.c:786 +#, c-format +msgid "%d (no)" +msgstr "%d (nej)" + +#: ../clients/cli/settings.c:788 +#, c-format +msgid "%d (yes)" +msgstr "%d (ja)" + +#: ../clients/cli/settings.c:791 +#, c-format +msgid "%d (default)" +msgstr "%d (standard)" + +#: ../clients/cli/settings.c:804 msgid "0 (none)" msgstr "0 (ingen)" -#: ../clients/cli/settings.c:759 +#: ../clients/cli/settings.c:810 msgid "agent-owned, " msgstr "agent-owned, " -#: ../clients/cli/settings.c:761 +#: ../clients/cli/settings.c:812 msgid "not saved, " msgstr "inte sparad, " -#: ../clients/cli/settings.c:763 +#: ../clients/cli/settings.c:814 msgid "not required, " msgstr "krävs ej, " -#: ../clients/cli/settings.c:1046 +#: ../clients/cli/settings.c:1105 msgid "0 (disabled)" msgstr "0 (inaktiverad)" -#: ../clients/cli/settings.c:1052 +#: ../clients/cli/settings.c:1111 msgid "enabled, " msgstr "aktiverad, " -#: ../clients/cli/settings.c:1054 +#: ../clients/cli/settings.c:1113 msgid "advertise, " msgstr "ropa ut, " -#: ../clients/cli/settings.c:1056 +#: ../clients/cli/settings.c:1115 msgid "willing, " msgstr "villig, " -#: ../clients/cli/settings.c:1084 +#: ../clients/cli/settings.c:1143 msgid "-1 (unset)" msgstr "-1 (välj ej)" -#: ../clients/cli/settings.c:1181 ../clients/cli/settings.c:1512 -#: ../clients/cli/settings.c:1554 +#: ../clients/cli/settings.c:1240 ../clients/cli/settings.c:1517 +#: ../clients/cli/settings.c:1619 msgid "auto" msgstr "auto" -#: ../clients/cli/settings.c:1194 +#: ../clients/cli/settings.c:1253 msgid "default" msgstr "standard" -#: ../clients/cli/settings.c:1682 +#: ../clients/cli/settings.c:1563 +#, c-format +msgid "" +"invalid option '%s', use a combination of [%s] or 'ignore', 'default' or " +"'none'" +msgstr "" +"ogiltig flagga â€%sâ€, använd en kombination av [%s] eller â€ignoreâ€, â€default†" +"eller â€noneâ€" + +#: ../clients/cli/settings.c:1574 +msgid "'default' and 'ignore' are incompatible with other flags" +msgstr "â€default†och â€ignore†är inkompatibla med andra flaggor" + +#: ../clients/cli/settings.c:1750 #, c-format msgid "Do you also want to set '%s' to '%s'? [yes]: " msgstr "Vill du ocksÃ¥ sätta â€%s†till â€%sâ€? [yes]: " -#: ../clients/cli/settings.c:1684 +#: ../clients/cli/settings.c:1752 #, c-format msgid "Do you also want to clear '%s'? [yes]: " msgstr "Vill du ocksÃ¥ rensa â€%sâ€? [yes]: " -#: ../clients/cli/settings.c:1845 +#: ../clients/cli/settings.c:1913 #, c-format msgid "" "Warning: %s.%s set to '%s', but it might be ignored in infrastructure mode\n" msgstr "" "Varning: %s.%s sätts till â€%sâ€, men kan ignoreras i infrastrukturläge\n" -#: ../clients/cli/settings.c:1927 ../clients/cli/settings.c:2207 -#: ../clients/cli/settings.c:4307 +#: ../clients/cli/settings.c:1932 +#, c-format +msgid "Warning: setting %s.%s requires removing ipv4 and ipv6 settings\n" +msgstr "" +"Varning: inställningen %s.%s kräver att inställningar för ipv4 och ipv6 tas " +"bort\n" + +#: ../clients/cli/settings.c:1934 +msgid "Do you want to remove them? [yes] " +msgstr "Vill du ta bort dem? [ja] " + +#: ../clients/cli/settings.c:2030 ../clients/cli/settings.c:2425 +#: ../clients/cli/settings.c:4548 #, c-format msgid "'%s' is not valid" -msgstr "â€%s†är inte giltigt." +msgstr "â€%s†är inte giltigt" -#: ../clients/cli/settings.c:1950 +#: ../clients/cli/settings.c:2053 #, c-format msgid "'%d' is not valid; use <%d-%d>" msgstr "â€%d†är inte giltigt; använd <%d-%d>" -#: ../clients/cli/settings.c:1972 +#: ../clients/cli/settings.c:2075 +#, c-format +msgid "'%lld' is not valid; use <%lld-%lld>" +msgstr "â€%lld†är inte giltigt; använd <%lld-%lld>" + +#: ../clients/cli/settings.c:2097 #, c-format -msgid "'%u' is not valid; use <%d-%d>" -msgstr "â€%u†är inte giltigt; använd <%d-%d>" +msgid "'%u' is not valid; use <%u-%u>" +msgstr "â€%u†är inte giltigt; använd <%u-%u>" -#: ../clients/cli/settings.c:2038 +#: ../clients/cli/settings.c:2136 +#, c-format +msgid "'%u' flags are not valid; use combination of %s" +msgstr "â€%uâ€-flaggor är inte giltiga; använd en kombination av %s" + +#: ../clients/cli/settings.c:2203 #, c-format msgid "'%s' is not valid; use <option>=<value>" msgstr "â€%s†är inte giltigt; använd <flagga>=<värde>" -#: ../clients/cli/settings.c:2072 +#: ../clients/cli/settings.c:2237 #, c-format msgid "index '%s' is not valid" msgstr "indexet â€%s†är inte giltigt" -#: ../clients/cli/settings.c:2077 ../clients/cli/settings.c:2102 +#: ../clients/cli/settings.c:2242 ../clients/cli/settings.c:2267 msgid "no item to remove" msgstr "inget objekt att ta bort" -#: ../clients/cli/settings.c:2081 ../clients/cli/settings.c:2106 +#: ../clients/cli/settings.c:2246 ../clients/cli/settings.c:2271 #, c-format msgid "index '%d' is not in range <0-%d>" msgstr "index â€%d†är inte i intervallet <0-%d>" -#: ../clients/cli/settings.c:2121 +#: ../clients/cli/settings.c:2286 #, c-format msgid "invalid option '%s'" msgstr "ogiltig flagga â€%sâ€" -#: ../clients/cli/settings.c:2123 +#: ../clients/cli/settings.c:2288 msgid "missing option" msgstr "saknat alternativ" -#: ../clients/cli/settings.c:2153 ../clients/cli/settings.c:2173 +#: ../clients/cli/settings.c:2315 ../clients/cli/settings.c:2335 +#: ../clients/cli/settings.c:2355 ../clients/cli/settings.c:2375 #, c-format msgid "'%s' is not a valid number (or out of range)" msgstr "â€%s†är inte ett giltigt nummer (eller utanför intervallet)" -#: ../clients/cli/settings.c:2223 +#: ../clients/cli/settings.c:2409 +#, c-format +msgid "'%s' is not a valid value; use -1, 0 or 1" +msgstr "â€%s†är inte ett giltigt värde; använd -1, 0 eller 1" + +#: ../clients/cli/settings.c:2441 #, c-format msgid "'%s' is not a valid Ethernet MAC" msgstr "â€%s†är inte en giltig Ethernet MAC" -#: ../clients/cli/settings.c:2248 ../libnm-core/nm-setting-connection.c:796 -#: ../libnm-core/nm-setting-infiniband.c:254 -#: ../libnm-util/nm-setting-connection.c:833 -#: ../libnm-util/nm-setting-infiniband.c:268 +#: ../clients/cli/settings.c:2466 ../libnm-core/nm-setting-connection.c:836 +#: ../libnm-core/nm-setting-infiniband.c:256 +#: ../libnm-util/nm-setting-connection.c:835 +#: ../libnm-util/nm-setting-infiniband.c:270 #, c-format msgid "'%s' is not a valid interface name" -msgstr "'â€%s†är inte ett giltigt gränssnittsnamn" +msgstr "â€%s†är inte ett giltigt gränssnittsnamn" -#: ../clients/cli/settings.c:2272 +#: ../clients/cli/settings.c:2490 #, c-format msgid "'%s' is not a valid flag number; use <0-%d>" msgstr "â€%s†är inte ett giltigt flaggnummer; använd <0-%d>" -#: ../clients/cli/settings.c:2284 +#: ../clients/cli/settings.c:2502 #, c-format msgid "Warning: '%s' sum is higher than all flags => all flags set\n" msgstr "Varning: â€%sâ€-summan är högre än alla flaggor => alla flaggor satta\n" -#: ../clients/cli/settings.c:2327 +#: ../clients/cli/settings.c:2543 #, c-format msgid "'%s' is not a valid hex character" msgstr "â€%s†är inte ett giltigt hextecken" -#: ../clients/cli/settings.c:2357 +#: ../clients/cli/settings.c:2573 #, c-format msgid "'%s' is not a valid MAC" msgstr "â€%s†är inte ett giltigt MAC" -#: ../clients/cli/settings.c:2394 ../libnm-core/nm-setting-connection.c:785 -#: ../libnm-util/nm-setting-connection.c:790 +#: ../clients/cli/settings.c:2599 ../libnm-core/nm-setting-connection.c:825 +#: ../libnm-util/nm-setting-connection.c:792 #, c-format msgid "'%s' is not a valid UUID" msgstr "â€%s†är inte ett giltigt UUID" -#: ../clients/cli/settings.c:2461 +#: ../clients/cli/settings.c:2666 #, c-format msgid "the property doesn't contain permission '%s'" msgstr "egenskapen innehÃ¥ller inte rättigheten â€%sâ€" -#: ../clients/cli/settings.c:2473 +#: ../clients/cli/settings.c:2678 msgid "" "Enter a list of user permissions. This is a list of user names formatted " "as:\n" @@ -4627,39 +5116,39 @@ msgstr "" " [user:]<användarnamn 1>, [user:]<användarnamn 2>,…\n" "Objekten kan separeras med komman eller blanksteg.\n" "\n" -"Exempel: Anders Sebastian Göran\n" +"Exempel: anders maria sebastian\n" -#: ../clients/cli/settings.c:2492 +#: ../clients/cli/settings.c:2697 #, c-format msgid "'%s' is not valid master; use ifname or connection UUID" msgstr "â€%s†är inte en giltig master; använd ifnamn eller anslutnings-UUID" -#: ../clients/cli/settings.c:2536 +#: ../clients/cli/settings.c:2741 #, c-format msgid "Warning: %s is not an UUID of any existing connection profile\n" msgstr "Varning: %s är inte ett UUID pÃ¥ nÃ¥gon befintlig anslutningsprofil\n" -#: ../clients/cli/settings.c:2540 ../clients/cli/settings.c:2556 +#: ../clients/cli/settings.c:2745 ../clients/cli/settings.c:2761 #, c-format msgid "'%s' is not a VPN connection profile" msgstr "â€%s†är inte en giltig VPN-anslutningsprofil" -#: ../clients/cli/settings.c:2549 +#: ../clients/cli/settings.c:2754 #, c-format msgid "'%s' is not a name of any exiting profile" msgstr "â€%s†är inte ett namn pÃ¥ nÃ¥gon befintlig profil" -#: ../clients/cli/settings.c:2583 +#: ../clients/cli/settings.c:2788 #, c-format msgid "the value '%s' is not a valid UUID" msgstr "värdet â€%s†är inte ett giltigt UUID" -#: ../clients/cli/settings.c:2590 +#: ../clients/cli/settings.c:2795 #, c-format msgid "the property doesn't contain UUID '%s'" msgstr "egenskapen innehÃ¥ller inte UUID â€%sâ€" -#: ../clients/cli/settings.c:2602 +#: ../clients/cli/settings.c:2807 msgid "" "Enter secondary connections that should be activated when this connection " "is\n" @@ -4680,37 +5169,111 @@ msgstr "" "\n" "Exempel: private-openvpn, fe6ba5d8-c2fc-4aae-b2e3-97efddd8d9a7\n" -#: ../clients/cli/settings.c:2679 +#: ../clients/cli/settings.c:2874 +msgid "" +"Enter a value which indicates whether the connection is subject to a data\n" +"quota, usage costs or other limitations. Accepted options are:\n" +"'true','yes','on' to set the connection as metered\n" +"'false','no','off' to set the connection as not metered\n" +"'unknown' to let NetworkManager choose a value using some heuristics\n" +msgstr "" +"Ange ett värde som indikerar huruvida anslutningen har en datakvot,\n" +"kostnader för användning eller andra begränsningar. Accepterade alternativ " +"är:\n" +"â€trueâ€,â€yesâ€,â€on†för att ange att anslutningen är uppmätt\n" +"â€falseâ€,â€noâ€,â€off†för att ange att anslutningen ej är uppmätt\n" +"â€unknown†för att lÃ¥ta Nätverkshanteraren välja ett värde enligt nÃ¥gon " +"heuristik\n" + +#: ../clients/cli/settings.c:2948 msgid "private key password not provided" msgstr "lösenord för privat nyckel inte angivet" -#: ../clients/cli/settings.c:2706 +#: ../clients/cli/settings.c:2976 #, c-format msgid "the property doesn't contain EAP method '%s'" msgstr "egenskapen innehÃ¥ller inte EAP-metoden â€%sâ€" -#: ../clients/cli/settings.c:2731 +#: ../clients/cli/settings.c:2993 +msgid "" +"Enter file path to CA certificate (optionally prefixed with file://).\n" +" [file://]<file path>\n" +"Note that nmcli does not support specifying certificates as raw blob data.\n" +"Example: /home/cimrman/cacert.crt\n" +msgstr "" +"Ange filsökväg till CA-certifikat (valfritt med prefixet file://).\n" +" [file://]<filsökväg>\n" +"Observera att nmcli inte stödjer att ange certifikat som rÃ¥ blob-data.\n" +"Exempel: /home/cimrman/cacert.crt\n" + +#: ../clients/cli/settings.c:3012 #, c-format msgid "the property doesn't contain alternative subject match '%s'" msgstr "egenskapen innehÃ¥ller inte alternativa ämnesmatchningen â€%sâ€" -#: ../clients/cli/settings.c:2760 +#: ../clients/cli/settings.c:3028 +msgid "" +"Enter file path to client certificate (optionally prefixed with file://).\n" +" [file://]<file path>\n" +"Note that nmcli does not support specifying certificates as raw blob data.\n" +"Example: /home/cimrman/jara.crt\n" +msgstr "" +"Ange filsökväg till klientcertifikat (valfritt prefixad med file://).\n" +" [file://]<filsökväg>\n" +"Observera att nmcli inte stödjer att ange certifikat som rÃ¥ blob-data.\n" +"Exempel: /home/cimrman/jara.crt\n" + +#: ../clients/cli/settings.c:3040 +msgid "" +"Enter file path to CA certificate for inner authentication (optionally " +"prefixed\n" +"with file://).\n" +" [file://]<file path>\n" +"Note that nmcli does not support specifying certificates as raw blob data.\n" +"Example: /home/cimrman/ca-zweite-phase.crt\n" +msgstr "" +"Ange filsökväg till CA-certifikat för inre autentisering (valfritt med " +"prefixet\n" +"file://).\n" +" [file://]<filsökväg>\n" +"Observera att nmcli inte stödjer att ange certifikat som rÃ¥ blob-data.\n" +"Exempel: /home/cimrman/ca-zweite-phase.crt\n" + +#: ../clients/cli/settings.c:3060 #, c-format msgid "the property doesn't contain \"phase2\" alternative subject match '%s'" msgstr "egenskapen innehÃ¥ller inte â€phase2â€-alternativa ämnesmatchningen â€%sâ€" -#: ../clients/cli/settings.c:2786 +#: ../clients/cli/settings.c:3076 +msgid "" +"Enter file path to client certificate for inner authentication (optionally " +"prefixed\n" +"with file://).\n" +" [file://]<file path>\n" +"Note that nmcli does not support specifying certificates as raw blob data.\n" +"Example: /home/cimrman/jara-zweite-phase.crt\n" +msgstr "" +"Ange filsökväg till CA-certifikat för inre autentisering (valfritt med " +"prefixet\n" +"file://).\n" +" [file://]<filsökväg>\n" +"Observera att nmcli inte stödjer att ange certifikat som rÃ¥ blob-data.\n" +"Exempel: /home/cimrman/jara-zweite-phase.crt\n" + +#: ../clients/cli/settings.c:3096 msgid "" "Enter path to a private key and the key password (if not set yet):\n" -" <file path> [<password>]\n" +" [file://]<file path> [<password>]\n" +"Note that nmcli does not support specifying private key as raw blob data.\n" "Example: /home/cimrman/jara-priv-key Dardanely\n" msgstr "" "Mata in sökväg till en privat nyckel och nyckellösenordet (om inte angivet " "än):\n" -" <filsökväg> [<lösenord>]\n" +" [file://]<filsökväg> [<lösenord>]\n" +"Observera att nmcli inte stödjer att ange privat nyckel som rÃ¥ blob-data.\n" "Exempel: /home/cimrman/jara-priv-key Dardanely\n" -#: ../clients/cli/settings.c:2856 +#: ../clients/cli/settings.c:3167 msgid "" "Enter bytes as a list of hexadecimal values.\n" "Two formats are accepted:\n" @@ -4732,7 +5295,7 @@ msgstr "" "Exempel: ab0455a6ea3a74C2\n" " ab 4 55 0xa6 ea 3a 74 C2\n" -#: ../clients/cli/settings.c:2959 +#: ../clients/cli/settings.c:3270 #, c-format msgid "" "Enter a list of bonding options formatted as:\n" @@ -4763,22 +5326,32 @@ msgstr "" "\n" "Exempel: mode=2,miimon=120\n" -#: ../clients/cli/settings.c:2997 +#: ../clients/cli/settings.c:3301 #, c-format msgid "'%s' is not a valid InfiniBand MAC" msgstr "â€%s†är inte en giltig InfiniBand MAC" -#: ../clients/cli/settings.c:3034 +#: ../clients/cli/settings.c:3338 #, c-format msgid "'%s' is not a valid IBoIP P_Key" msgstr "â€%s†är inte en giltig IBoIP P_Key" -#: ../clients/cli/settings.c:3103 ../clients/cli/settings.c:3449 +#: ../clients/cli/settings.c:3369 +#, c-format +msgid "'%s' is not valid (the format is: ip[/prefix] [next-hop] [metric])" +msgstr "â€%s†är inte giltigt (formatet är: ip[/prefix] [next-hop] [metric])" + +#: ../clients/cli/settings.c:3417 ../clients/cli/settings.c:3436 +#, c-format +msgid "invalid IPv4 address '%s'" +msgstr "ogiltig IPv4-adress â€%sâ€" + +#: ../clients/cli/settings.c:3442 ../clients/cli/settings.c:3712 #, c-format msgid "the property doesn't contain DNS server '%s'" msgstr "egenskapen innehÃ¥ller inte DNS-servern â€%sâ€" -#: ../clients/cli/settings.c:3115 +#: ../clients/cli/settings.c:3454 msgid "" "Enter a list of IPv4 addresses of DNS servers.\n" "\n" @@ -4788,54 +5361,48 @@ msgstr "" "\n" "Exempel: 8.8.8.8, 8.8.4.4\n" -#: ../clients/cli/settings.c:3151 ../clients/cli/settings.c:3503 +#: ../clients/cli/settings.c:3490 ../clients/cli/settings.c:3766 #, c-format msgid "the property doesn't contain DNS search domain '%s'" msgstr "egenskapen innehÃ¥ller inte DNS-sökdomänen â€%sâ€" -#: ../clients/cli/settings.c:3171 ../clients/cli/settings.c:3523 -#, c-format -msgid "'%s' is not valid (use ip[/prefix] [gateway])" -msgstr "â€%s†är inte giltig (använd ip[/prefix] [gateway])" - -#: ../clients/cli/settings.c:3220 ../clients/cli/settings.c:3571 +#: ../clients/cli/settings.c:3544 ../clients/cli/settings.c:3819 #, c-format msgid "the property doesn't contain IP address '%s'" msgstr "egenskapen innehÃ¥ller inte IP-adressen â€%sâ€" -#: ../clients/cli/settings.c:3233 +#: ../clients/cli/settings.c:3557 msgid "" "Enter a list of IPv4 addresses formatted as:\n" -" ip[/prefix] [gateway], ip[/prefix] [gateway],...\n" +" ip[/prefix], ip[/prefix],...\n" "Missing prefix is regarded as prefix of 32.\n" "\n" -"Example: 192.168.1.5/24 192.168.1.1, 10.0.0.11/24\n" +"Example: 192.168.1.5/24, 10.0.0.11/24\n" msgstr "" "Ange en lista av IPv4-adresser formaterade som:\n" -" ip[/prefix] [gateway], ip[/prefix] [gateway],...\n" +" ip[/prefix], ip[/prefix],…\n" "Saknade prefix räknas som prefix av 32.\n" "\n" "Exempel: 192.168.1.5/24 192.168.1.1, 10.0.0.11/24\n" -#: ../clients/cli/settings.c:3286 ../clients/cli/settings.c:3602 +#: ../clients/cli/settings.c:3573 ../clients/cli/settings.c:3848 #, c-format -msgid "'%s' is not valid (the format is: ip[/prefix] [next-hop] [metric])" -msgstr "â€%s†är inte giltigt (formatet är: ip[/prefix] [next-hop] [metric])" +msgid "invalid gateway address '%s'" +msgstr "ogiltig gateway-adress â€%sâ€" -#: ../clients/cli/settings.c:3334 ../clients/cli/settings.c:3650 +#: ../clients/cli/settings.c:3628 ../clients/cli/settings.c:3903 #, c-format msgid "the property doesn't contain route '%s'" msgstr "egenskapen innehÃ¥ller inte rutten â€%sâ€" -#: ../clients/cli/settings.c:3347 +#: ../clients/cli/settings.c:3641 msgid "" "Enter a list of IPv4 routes formatted as:\n" " ip[/prefix] [next-hop] [metric],...\n" "\n" "Missing prefix is regarded as a prefix of 32.\n" "Missing next-hop is regarded as 0.0.0.0.\n" -"Missing metric or 0 means a default metric (NM/kernel will set a default " -"value).\n" +"Missing metric means default (NM/kernel will set a default value).\n" "\n" "Examples: 192.168.2.0/24 192.168.2.1 3, 10.1.0.0/16 10.0.0.254\n" " 10.1.2.0/24\n" @@ -4845,13 +5412,18 @@ msgstr "" "\n" "Saknat prefix ses som ett prefix pÃ¥ 32.\n" "Saknat nästa-hopp ses som 0.0.0.0.\n" -"Saknat mätvärde eller 0 ses som standard metric (NM/kärnan kommer att sätta " -"ett standardvärde).\n" +"Saknat mätvärde ses som standard metric (NH/kärnan kommer att sätta ett " +"standardvärde).\n" "\n" "Exempel: 192.168.2.0/24 192.168.2.1 3, 10.1.0.0/16 10.0.0.254\n" " 10.1.2.0/24\n" -#: ../clients/cli/settings.c:3461 +#: ../clients/cli/settings.c:3687 ../clients/cli/settings.c:3706 +#, c-format +msgid "invalid IPv6 address '%s'" +msgstr "ogiltig IPv6-adress â€%sâ€" + +#: ../clients/cli/settings.c:3724 msgid "" "Enter a list of IPv6 addresses of DNS servers. If the IPv6 configuration " "method is 'auto' these DNS servers are appended to those (if any) returned " @@ -4871,31 +5443,29 @@ msgstr "" "\n" "Exempel: 2607:f0d0:1002:51::4, 2607:f0d0:1002:51::1\n" -#: ../clients/cli/settings.c:3584 +#: ../clients/cli/settings.c:3832 msgid "" "Enter a list of IPv6 addresses formatted as:\n" -" ip[/prefix] [gateway], ip[/prefix] [gateway],...\n" +" ip[/prefix], ip[/prefix],...\n" "Missing prefix is regarded as prefix of 128.\n" "\n" -"Example: 2607:f0d0:1002:51::4/64 2607:f0d0:1002:51::1, " -"1050:0:0:0:5:600:300c:326b\n" +"Example: 2607:f0d0:1002:51::4/64, 1050:0:0:0:5:600:300c:326b\n" msgstr "" "Ange en lista med IPv6-adresser formaterade som:\n" -" ip[/prefix] [gateway], ip[/prefix] [gateway],…\n" +" ip[/prefix], ip[/prefix],…\n" "Saknat prefix ses som ett prefix pÃ¥ 128.\n" "\n" "Exempel: 2607:f0d0:1002:51::4/64 2607:f0d0:1002:51::1, " "1050:0:0:0:5:600:300c:326b\n" -#: ../clients/cli/settings.c:3663 +#: ../clients/cli/settings.c:3916 msgid "" "Enter a list of IPv6 routes formatted as:\n" " ip[/prefix] [next-hop] [metric],...\n" "\n" "Missing prefix is regarded as a prefix of 128.\n" "Missing next-hop is regarded as \"::\".\n" -"Missing metric or 0 means a default metric (NM/kernel will set a default " -"value).\n" +"Missing metric means default (NM/kernel will set a default value).\n" "\n" "Examples: 2001:db8:beef:2::/64 2001:db8:beef::2, 2001:db8:beef:3::/64 2001:" "db8:beef::3 2\n" @@ -4906,35 +5476,34 @@ msgstr "" "\n" "Saknat prefix tolkas som ett prefix pÃ¥ 128.\n" "Saknat nästa-hopp ses som â€::â€.\n" -"Saknad mätvärde eller 0 ses standard metric (NM/kärnan sätter ett " -"standardvärde).\n" +"Saknad mätvärde ses standard metric (NH/kärnan sätter ett standardvärde).\n" "\n" "Exempel: 2001:db8:beef:2::/64 2001:db8:beef::2, 2001:db8:beef:3::/64 2001:" "db8:beef::3 2\n" " abbe::/64 55\n" -#: ../clients/cli/settings.c:3680 ../libnm-core/nm-setting-gsm.c:315 -#: ../libnm-util/nm-setting-gsm.c:372 +#: ../clients/cli/settings.c:3933 ../libnm-core/nm-setting-gsm.c:308 +#: ../libnm-util/nm-setting-gsm.c:365 #, c-format msgid "'%s' is not a number" msgstr "â€%s†är inte ett nummer" -#: ../clients/cli/settings.c:3687 +#: ../clients/cli/settings.c:3940 #, c-format msgid "'%s' is not valid; use 0, 1, or 2" msgstr "â€%s†är inte giltig; använd 0, 1 eller 2" -#: ../clients/cli/settings.c:3704 +#: ../clients/cli/settings.c:3957 #, c-format msgid "'%s' is not a valid channel; use <1-13>" msgstr "â€%s†är inte en giltig kanal; använd <1-13>" -#: ../clients/cli/settings.c:3741 +#: ../clients/cli/settings.c:3994 #, c-format msgid "'%s' is not valid; use [e, o, n]" msgstr "â€%s†är inte giltig; använd [e, o, n]" -#: ../clients/cli/settings.c:3769 +#: ../clients/cli/settings.c:4022 msgid "" "nmcli can accepts both direct JSON configuration data and a file name " "containing the configuration. In the latter case the file is read and the " @@ -4948,62 +5517,60 @@ msgstr "" "innehÃ¥llandes konfigurationen. I det senare fallet läses filen in och " "innehÃ¥llet läggs i denna egenskap.\n" "\n" -"Exempel: set team.config { â€deviceâ€: â€team0â€, â€runnerâ€: {â€nameâ€: " -"â€roundrobinâ€}, â€portsâ€: {â€eth1â€: {}, â€eth2â€: {}} }\n" +"Exempel: set team.config { \"device\": \"team0\", \"runner\": {\"name\": " +"\"roundrobin\"}, \"ports\": {\"eth1\": {}, \"eth2\": {}} }\n" " set team.config /etc/my-team.conf\n" -#: ../clients/cli/settings.c:3809 +#: ../clients/cli/settings.c:4062 msgid "no priority to remove" msgstr "ingen prioritet att ta bort" -#: ../clients/cli/settings.c:3813 +#: ../clients/cli/settings.c:4066 #, c-format msgid "index '%d' is not in the range of <0-%d>" msgstr "index â€%d†är inte i intervallet för <0-%d>" -#: ../clients/cli/settings.c:3852 +#: ../clients/cli/settings.c:4105 #, c-format msgid "" "Warning: only one mapping at a time is supported; taking the first one (%s)\n" msgstr "Varning: endast en mappning Ã¥t gÃ¥ngen stöds; tar den första (%s)\n" -#: ../clients/cli/settings.c:3859 +#: ../clients/cli/settings.c:4112 #, c-format msgid "the property doesn't contain mapping '%s'" msgstr "egenskapen stöder inte mappningen â€%sâ€" -#: ../clients/cli/settings.c:3968 ../clients/cli/settings.c:4136 -#: ../libnm-core/nm-setting-wired.c:604 -#: ../libnm-core/nm-setting-wireless.c:781 -#: ../libnm-core/nm-setting-wireless.c:793 -#: ../libnm-util/nm-setting-wired.c:648 -#: ../libnm-util/nm-setting-wireless.c:840 -#: ../libnm-util/nm-setting-wireless.c:854 +#: ../clients/cli/settings.c:4221 ../clients/cli/settings.c:4377 +#: ../libnm-core/nm-setting-wired.c:646 ../libnm-core/nm-setting-wireless.c:784 +#: ../libnm-core/nm-setting-wireless.c:796 ../libnm-util/nm-setting-wired.c:647 +#: ../libnm-util/nm-setting-wireless.c:842 +#: ../libnm-util/nm-setting-wireless.c:856 #, c-format msgid "'%s' is not a valid MAC address" msgstr "â€%s†är inte en giltig MAC-adress" -#: ../clients/cli/settings.c:3974 ../clients/cli/settings.c:4142 +#: ../clients/cli/settings.c:4227 ../clients/cli/settings.c:4383 #, c-format msgid "the property doesn't contain MAC address '%s'" msgstr "egenskapen innehÃ¥ller inte MAC-adress â€%sâ€" -#: ../clients/cli/settings.c:3993 +#: ../clients/cli/settings.c:4246 #, c-format -msgid "'%s' is not valid; 3 strings should be provided" -msgstr "â€%s†är ogiltig; Tre strängar ska ges" +msgid "'%s' is not valid; 2 or 3 strings should be provided" +msgstr "â€%s†är ogiltig; TvÃ¥ eller tre strängar ska anges" -#: ../clients/cli/settings.c:4012 +#: ../clients/cli/settings.c:4260 msgid "" -"Enter a list of three channels (comma or space separated).\n" +"Enter a list of subchannels (comma or space separated).\n" "\n" "Example: 0.0.0e20 0.0.0e21 0.0.0e22\n" msgstr "" -"Ange en lista pÃ¥ tre kanaler (komma eller blankstegsseparerad).\n" +"Ange en lista pÃ¥ underkanaler (komma- eller blankstegsseparerad).\n" "\n" "Exempel: 0.0.0e20 0.0.0e21 0.0.0e22\n" -#: ../clients/cli/settings.c:4062 +#: ../clients/cli/settings.c:4303 #, c-format msgid "" "Enter a list of S/390 options formatted as:\n" @@ -5014,23 +5581,23 @@ msgstr "" " option = <värde>, option = <värde>,…\n" "Giltiga val är: %s\n" -#: ../clients/cli/settings.c:4108 +#: ../clients/cli/settings.c:4349 #, c-format msgid "'%s' is not a valid channel" -msgstr "â€%s†är inte en giltig kanal." +msgstr "â€%s†är inte en giltig kanal" -#: ../clients/cli/settings.c:4114 +#: ../clients/cli/settings.c:4355 #, c-format msgid "'%ld' is not a valid channel" msgstr "â€%ld†är en ogiltig kanal" -#: ../clients/cli/settings.c:4201 ../clients/cli/settings.c:4239 -#: ../clients/cli/settings.c:4277 +#: ../clients/cli/settings.c:4442 ../clients/cli/settings.c:4480 +#: ../clients/cli/settings.c:4518 #, c-format msgid "the property doesn't contain protocol '%s'" msgstr "egenskapen innehÃ¥ller inte protokollet â€%sâ€" -#: ../clients/cli/settings.c:4316 +#: ../clients/cli/settings.c:4557 #, c-format msgid "" "'%s' not compatible with %s '%s', please change the key or set the right %s " @@ -5038,23 +5605,23 @@ msgid "" msgstr "" "â€%s†är inte kompatibel med %s â€%sâ€, ändra nyckeln eller sätt rätt %s först." -#: ../clients/cli/settings.c:4324 +#: ../clients/cli/settings.c:4565 #, c-format msgid "WEP key is guessed to be of '%s'\n" msgstr "WEP-nyckel antas vara â€%sâ€\n" -#: ../clients/cli/settings.c:4326 +#: ../clients/cli/settings.c:4567 #, c-format msgid "WEP key index set to '%d'\n" msgstr "index för WEP-nyckel satt till â€%dâ€\n" -#: ../clients/cli/settings.c:4349 +#: ../clients/cli/settings.c:4590 #, c-format msgid "'%s' not among [0 (unknown), 1 (key), 2 (passphrase)]" msgstr "â€%s†inte bland [0 (okänd), 1 (nyckel), 2 (lösenfras)]" -#: ../clients/cli/settings.c:4365 ../clients/cli/settings.c:4368 -#: ../clients/cli/settings.c:4371 ../clients/cli/settings.c:4374 +#: ../clients/cli/settings.c:4606 ../clients/cli/settings.c:4609 +#: ../clients/cli/settings.c:4612 ../clients/cli/settings.c:4615 #, c-format msgid "" "Warning: '%s' is not compatible with '%s' type, please change or delete the " @@ -5062,7 +5629,7 @@ msgid "" msgstr "" "Varning:â€%s†är inte kompatibel med â€%sâ€-typ, ändra eller ta bort nyckeln.\n" -#: ../clients/cli/settings.c:4387 +#: ../clients/cli/settings.c:4628 #, c-format msgid "" "Enter the type of WEP keys. The accepted values are: 0 or unknown, 1 or key, " @@ -5071,36 +5638,36 @@ msgstr "" "Ange typ pÃ¥ WEP-nycklarna. Accepterade värden är: 0 eller okänd, 1 eller " "nyckel, 2 eller lösenfras.\n" -#: ../clients/cli/settings.c:4400 +#: ../clients/cli/settings.c:4641 #, c-format msgid "'%s' is not a valid PSK" msgstr "â€%s†inte en giltig PSK" -#: ../clients/cli/settings.c:4444 +#: ../clients/cli/settings.c:4685 #, c-format msgid "'%s' is not a valid DCB flag" msgstr "â€%s†är inte en giltig DCB-flagga" -#: ../clients/cli/settings.c:4467 +#: ../clients/cli/settings.c:4708 #, c-format msgid "'%s' is not a DCB app priority" msgstr "â€%s†är inte en giltig DCB-programprioritet" -#: ../clients/cli/settings.c:4493 +#: ../clients/cli/settings.c:4734 msgid "must contain 8 comma-separated numbers" msgstr "mÃ¥ste innehÃ¥lla 8 kommaseparerade siffror" -#: ../clients/cli/settings.c:4510 +#: ../clients/cli/settings.c:4751 #, c-format msgid "'%s' not a number between 0 and %u (inclusive) or %u" msgstr "â€%s†inte en siffra mellan 0 och %u (inklusive) eller %u" -#: ../clients/cli/settings.c:4513 +#: ../clients/cli/settings.c:4754 #, c-format msgid "'%s' not a number between 0 and %u (inclusive)" msgstr "â€%s†inte en siffra mellan 0 och %u (inklusive)" -#: ../clients/cli/settings.c:4535 +#: ../clients/cli/settings.c:4776 #, c-format msgid "" "Warning: changes will have no effect until '%s' includes 1 (enabled)\n" @@ -5110,31 +5677,36 @@ msgstr "" "(aktiverad)\n" "\n" -#: ../clients/cli/settings.c:4588 +#: ../clients/cli/settings.c:4829 #, c-format msgid "bandwidth percentages must total 100%%" msgstr "summan för bandbreddsprocenten mÃ¥ste vara 100%%" -#: ../clients/cli/settings.c:6238 +#: ../clients/cli/settings.c:6551 msgid "don't know how to get the property value" msgstr "vet inte hur egenskapsvärdet ska hämtas" -#: ../clients/cli/settings.c:6291 ../clients/cli/settings.c:6331 +#: ../clients/cli/settings.c:6604 ../clients/cli/settings.c:6644 msgid "the property can't be changed" msgstr "egenskapen kan inte ändras" -#: ../clients/cli/settings.c:6414 +#: ../clients/cli/settings.c:6728 msgid "(not available)" msgstr "(ej tillgänglig)" -#: ../clients/cli/settings.c:6439 +#: ../clients/cli/settings.c:6753 msgid "[NM property description]" -msgstr "[NM egenskapsbeskrivning]" +msgstr "[NH egenskapsbeskrivning]" -#: ../clients/cli/settings.c:6444 +#: ../clients/cli/settings.c:6758 msgid "[nmcli specific description]" msgstr "[nmcli specifik beskrivning]" +#. ---------------------------------------------------------------------------- +#: ../clients/cli/settings.c:6807 +msgid "<hidden>" +msgstr "<dold>" + #: ../clients/cli/utils.c:127 #, c-format msgid "Error: value for '%s' argument is required." @@ -5160,47 +5732,55 @@ msgstr "Fel vid konvertering av IP4-adress â€0x%X†till textformat" msgid "Error converting IP6 address '%s' to text form" msgstr "Fel vid konvertering av IP6-adress â€%s†till textformat" -#: ../clients/cli/utils.c:410 +#. Translators: the first %s is the partial value entered by +#. * the user, the second %s a list of compatible values. +#. +#: ../clients/cli/utils.c:413 ../clients/cli/utils.c:444 #, c-format -msgid "'%s' is ambiguous (on x off)" -msgstr "â€%s†är dubbeltydig (pÃ¥ x av)" +msgid "'%s' is ambiguous (%s)" +msgstr "â€%s†är dubbeltydig (%s)" -#: ../clients/cli/utils.c:420 +#: ../clients/cli/utils.c:423 #, c-format msgid "'%s' is not valid; use [%s] or [%s]" msgstr "â€%s†är inte giltig; använd [%s] eller [%s]" -#: ../clients/cli/utils.c:502 +#: ../clients/cli/utils.c:456 +#, c-format +msgid "'%s' is not valid; use [%s], [%s] or [%s]" +msgstr "â€%s†är inte giltig; använd [%s], [%s] eller [%s]" + +#: ../clients/cli/utils.c:555 #, c-format msgid "'%s' is ambiguous (%s x %s)" msgstr "â€%s†är dubbeltydig (%s x %s)" -#: ../clients/cli/utils.c:514 +#: ../clients/cli/utils.c:567 #, c-format msgid "missing name, try one of [%s]" msgstr "saknat namn, prova en av [%s]" -#: ../clients/cli/utils.c:731 +#: ../clients/cli/utils.c:808 #, c-format msgid "field '%s' has to be alone" msgstr "fältet â€%s†mÃ¥ste vara ensamt" -#: ../clients/cli/utils.c:734 +#: ../clients/cli/utils.c:811 #, c-format msgid "invalid field '%s'; allowed fields: %s" msgstr "ogiltigt fält â€%sâ€; tillÃ¥tna fält: %s" -#: ../clients/cli/utils.c:791 +#: ../clients/cli/utils.c:868 msgid "Option '--terse' requires specifying '--fields'" msgstr "Flaggan â€--terse†kräver att â€--fields†anges" -#: ../clients/cli/utils.c:795 +#: ../clients/cli/utils.c:872 #, c-format msgid "Option '--terse' requires specific '--fields' option values , not '%s'" msgstr "" "Flaggan â€--terse†kräver angivna värden för â€--fieldsâ€-flaggan , inte â€%sâ€" -#: ../clients/cli/utils.c:1113 +#: ../clients/cli/utils.c:1190 #, c-format msgid "" "Warning: nmcli (%s) and NetworkManager (%s) versions don't match. Use --" @@ -5209,7 +5789,7 @@ msgstr "" "Varning: versionerna för nmcli (%s) och NetworkManager (%s) stämmer inte " "överens. Använd --nocheck för att inte visa varningen.\n" -#: ../clients/cli/utils.c:1122 +#: ../clients/cli/utils.c:1199 #, c-format msgid "" "Error: nmcli (%s) and NetworkManager (%s) versions don't match. Force " @@ -5218,10 +5798,103 @@ msgstr "" "Fel: versionerna för nmcli (%s) och NetworkManager (%s) matchar inte. Tvinga " "körning med --nocheck, men resultatet är inte förutsägbart." -#: ../clients/nm-online.c:96 +#: ../clients/common/nm-polkit-listener.c:215 +msgid "An authentication session is already underway." +msgstr "En autentiseringssession är redan igÃ¥ng." + +#. TTLS and PEAP are actually much more complicated, but this complication +#. * is not visible here since we only care about phase2 authentication +#. * (and don't even care of which one) +#. +#: ../clients/common/nm-secret-agent-simple.c:209 +#: ../clients/common/nm-secret-agent-simple.c:300 +#: ../clients/tui/nmt-page-dsl.c:69 ../clients/tui/nmt-page-wifi.c:335 +msgid "Username" +msgstr "Användarnamn" + +#: ../clients/common/nm-secret-agent-simple.c:214 +#: ../clients/common/nm-secret-agent-simple.c:251 +#: ../clients/common/nm-secret-agent-simple.c:277 +#: ../clients/common/nm-secret-agent-simple.c:310 +#: ../clients/common/nm-secret-agent-simple.c:379 +#: ../clients/common/nm-secret-agent-simple.c:392 +#: ../clients/common/nm-secret-agent-simple.c:408 +#: ../clients/tui/nmt-page-dsl.c:78 ../clients/tui/nmt-page-wifi.c:280 +#: ../clients/tui/nmt-page-wifi.c:311 ../clients/tui/nmt-page-wifi.c:344 +msgid "Password" +msgstr "Lösenord" + +#: ../clients/common/nm-secret-agent-simple.c:223 +msgid "Identity" +msgstr "Identitet" + +#: ../clients/common/nm-secret-agent-simple.c:228 +msgid "Private key password" +msgstr "Lösenord för privat nyckel" + +#: ../clients/common/nm-secret-agent-simple.c:265 +#: ../clients/tui/nmt-page-wifi.c:292 +msgid "Key" +msgstr "Nyckel" + +#: ../clients/common/nm-secret-agent-simple.c:305 +#: ../clients/tui/nmt-page-dsl.c:81 +msgid "Service" +msgstr "Tjänst" + +#: ../clients/common/nm-secret-agent-simple.c:339 +msgid "Authentication required by wireless network" +msgstr "Autentisering krävs av trÃ¥dlösa nätverket" + +#: ../clients/common/nm-secret-agent-simple.c:340 +#, c-format +msgid "" +"Passwords or encryption keys are required to access the wireless network " +"'%s'." +msgstr "" +"Lösenord eller krypteringsnycklar krävs för Ã¥tkomst till trÃ¥dlösa nätverket " +"â€%sâ€." + +#: ../clients/common/nm-secret-agent-simple.c:348 +msgid "Wired 802.1X authentication" +msgstr "TrÃ¥dbunden 802.1X-autentisering" + +#: ../clients/common/nm-secret-agent-simple.c:351 +msgid "Network name" +msgstr "Nätverksnamn" + +#: ../clients/common/nm-secret-agent-simple.c:358 +msgid "DSL authentication" +msgstr "DSL-autentisering" + +#: ../clients/common/nm-secret-agent-simple.c:366 +msgid "PIN code required" +msgstr "PIN-kod krävs" + +#: ../clients/common/nm-secret-agent-simple.c:367 +msgid "PIN code is needed for the mobile broadband device" +msgstr "Det krävs PIN-kod för den mobila bredbandsenheten" + +#: ../clients/common/nm-secret-agent-simple.c:369 +msgid "PIN" +msgstr "PIN" + +#: ../clients/common/nm-secret-agent-simple.c:375 +#: ../clients/common/nm-secret-agent-simple.c:388 +#: ../clients/common/nm-secret-agent-simple.c:404 +msgid "Mobile broadband network password" +msgstr "Nätverkslösenord för mobilt bredband" + +#: ../clients/common/nm-secret-agent-simple.c:376 +#: ../clients/common/nm-secret-agent-simple.c:389 +#: ../clients/common/nm-secret-agent-simple.c:405 #, c-format -msgid "\rConnecting" -msgstr "\rAnsluter" +msgid "A password is required to connect to '%s'." +msgstr "Ett lösenord krävs för att ansluta till â€%sâ€." + +#: ../clients/nm-online.c:96 +msgid "Connecting" +msgstr "Ansluter" #: ../clients/nm-online.c:149 msgid "" @@ -5253,9 +5926,9 @@ msgid "Invalid option. Please use --help to see a list of valid options." msgstr "" "Ogiltig flagga. Använd --help för att se en lista över giltiga flaggor." -#: ../clients/tui/newt/nmt-newt-utils.c:180 ../clients/tui/nmt-editor.c:244 +#: ../clients/tui/newt/nmt-newt-utils.c:180 ../clients/tui/nmt-editor.c:417 #: ../clients/tui/nmt-password-dialog.c:174 -#: ../clients/tui/nmt-route-editor.c:135 ../clients/tui/nmtui-hostname.c:71 +#: ../clients/tui/nmt-route-editor.c:125 ../clients/tui/nmtui-hostname.c:71 #: ../clients/tui/nmtui.c:117 msgid "OK" msgstr "OK" @@ -5301,8 +5974,8 @@ msgstr "TrÃ¥dlös anslutning %d" msgid "InfiniBand connection %d" msgstr "InfiniBand-anslutning %d" -#: ../clients/tui/nm-editor-utils.c:173 ../libnm-glib/nm-device.c:1798 -#: ../libnm/nm-device.c:1608 +#: ../clients/tui/nm-editor-utils.c:173 ../libnm-glib/nm-device.c:1799 +#: ../libnm/nm-device.c:1644 msgid "Mobile Broadband" msgstr "Mobilt bredband" @@ -5311,7 +5984,7 @@ msgstr "Mobilt bredband" msgid "Mobile broadband connection %d" msgstr "Mobil bredbandsanslutning %d" -#: ../clients/tui/nm-editor-utils.c:182 ../clients/tui/nmt-page-dsl.c:39 +#: ../clients/tui/nm-editor-utils.c:182 ../clients/tui/nmt-page-dsl.c:65 msgid "DSL" msgstr "DSL" @@ -5320,9 +5993,9 @@ msgstr "DSL" msgid "DSL connection %d" msgstr "DSL-anslutning %d" -#: ../clients/tui/nm-editor-utils.c:191 ../libnm-core/nm-connection.c:1482 -#: ../libnm-glib/nm-device.c:1802 ../libnm-util/nm-connection.c:1606 -#: ../libnm/nm-device.c:1612 ../src/settings/plugins/ifcfg-rh/reader.c:3973 +#: ../clients/tui/nm-editor-utils.c:191 ../libnm-core/nm-connection.c:1606 +#: ../libnm-glib/nm-device.c:1803 ../libnm-util/nm-connection.c:1608 +#: ../libnm/nm-device.c:1648 ../src/settings/plugins/ifcfg-rh/reader.c:4059 msgid "Bond" msgstr "Kombinera" @@ -5331,9 +6004,9 @@ msgstr "Kombinera" msgid "Bond connection %d" msgstr "Kombinationsanslutning %d" -#: ../clients/tui/nm-editor-utils.c:200 ../libnm-core/nm-connection.c:1486 -#: ../libnm-glib/nm-device.c:1806 ../libnm-util/nm-connection.c:1610 -#: ../libnm/nm-device.c:1616 ../src/settings/plugins/ifcfg-rh/reader.c:4264 +#: ../clients/tui/nm-editor-utils.c:200 ../libnm-core/nm-connection.c:1610 +#: ../libnm-glib/nm-device.c:1807 ../libnm-util/nm-connection.c:1612 +#: ../libnm/nm-device.c:1652 ../src/settings/plugins/ifcfg-rh/reader.c:4350 msgid "Bridge" msgstr "Brygga" @@ -5342,9 +6015,9 @@ msgstr "Brygga" msgid "Bridge connection %d" msgstr "Brygganslutning %d" -#: ../clients/tui/nm-editor-utils.c:209 ../libnm-core/nm-connection.c:1484 -#: ../libnm-glib/nm-device.c:1804 ../libnm-util/nm-connection.c:1608 -#: ../libnm/nm-device.c:1614 ../src/settings/plugins/ifcfg-rh/reader.c:4079 +#: ../clients/tui/nm-editor-utils.c:209 ../libnm-core/nm-connection.c:1608 +#: ../libnm-glib/nm-device.c:1805 ../libnm-util/nm-connection.c:1610 +#: ../libnm/nm-device.c:1650 ../src/settings/plugins/ifcfg-rh/reader.c:4165 msgid "Team" msgstr "Grupp" @@ -5367,48 +6040,77 @@ msgstr "VPN-anslutning %d" msgid "Select..." msgstr "Markera…" -#: ../clients/tui/nmt-edit-connection-list.c:129 +#: ../clients/tui/nmt-edit-connection-list.c:112 msgid "Add" msgstr "Lägg till" -#: ../clients/tui/nmt-edit-connection-list.c:132 -#: ../clients/tui/nmt-page-ip4.c:175 ../clients/tui/nmt-page-ip6.c:173 -#: ../clients/tui/nmt-page-team-port.c:110 ../clients/tui/nmt-page-team.c:174 +#: ../clients/tui/nmt-edit-connection-list.c:115 +#: ../clients/tui/nmt-page-ip4.c:172 ../clients/tui/nmt-page-ip6.c:170 +#: ../clients/tui/nmt-page-team-port.c:112 ../clients/tui/nmt-page-team.c:176 msgid "Edit..." msgstr "Redigera…" -#: ../clients/tui/nmt-edit-connection-list.c:135 -#: ../clients/tui/nmtui-edit.c:523 +#: ../clients/tui/nmt-edit-connection-list.c:118 +#: ../clients/tui/nmtui-edit.c:527 msgid "Delete" msgstr "Ta bort" -#: ../clients/tui/nmt-editor.c:81 +#: ../clients/tui/nmt-editor-section.c:105 +msgid "Hide" +msgstr "Dölj" + +#: ../clients/tui/nmt-editor-section.c:105 +msgid "Show" +msgstr "Visa" + +#: ../clients/tui/nmt-editor.c:99 #, c-format msgid "Could not create editor for connection '%s' of type '%s'." msgstr "Kunde inte skapa redigerare för anslutning â€%s†av typen â€%sâ€." -#: ../clients/tui/nmt-editor.c:85 +#: ../clients/tui/nmt-editor.c:103 #, c-format msgid "Could not create editor for invalid connection '%s'." msgstr "Kunde inte skapa redigerare för ogiltig anslutning â€%sâ€." -#: ../clients/tui/nmt-editor.c:95 +#: ../clients/tui/nmt-editor.c:113 msgid "Edit Connection" msgstr "Redigera anslutning" -#: ../clients/tui/nmt-editor.c:148 +#: ../clients/tui/nmt-editor.c:166 #, c-format msgid "Unable to save connection: %s" msgstr "Kunde inte spara anslutning: %s" -#: ../clients/tui/nmt-editor.c:162 +#: ../clients/tui/nmt-editor.c:180 #, c-format msgid "Unable to add new connection: %s" msgstr "Kunde inte lägga till ny anslutning: %s" -#: ../clients/tui/nmt-editor.c:241 ../clients/tui/nmt-password-dialog.c:171 -#: ../clients/tui/nmt-route-editor.c:128 ../clients/tui/nmtui-edit.c:216 -#: ../clients/tui/nmtui-edit.c:522 ../clients/tui/nmtui-hostname.c:69 +#: ../clients/tui/nmt-editor.c:322 +msgid "Profile name" +msgstr "Profilnamn" + +#: ../clients/tui/nmt-editor.c:333 +msgid "Ethernet device" +msgstr "Ethernet-enhet" + +#: ../clients/tui/nmt-editor.c:335 +msgid "Device" +msgstr "Enhet" + +#. And finally the bottom widgets +#: ../clients/tui/nmt-editor.c:393 +msgid "Automatically connect" +msgstr "Anslut automatiskt" + +#: ../clients/tui/nmt-editor.c:399 +msgid "Available to all users" +msgstr "Tillgänglig för alla användare" + +#: ../clients/tui/nmt-editor.c:414 ../clients/tui/nmt-password-dialog.c:171 +#: ../clients/tui/nmt-route-editor.c:118 ../clients/tui/nmtui-edit.c:218 +#: ../clients/tui/nmtui-edit.c:526 ../clients/tui/nmtui-hostname.c:69 msgid "Cancel" msgstr "Avbryt" @@ -5420,167 +6122,145 @@ msgstr "(standard)" msgid "bytes" msgstr "byte" -#: ../clients/tui/nmt-page-bond.c:88 +#: ../clients/tui/nmt-page-bond.c:87 msgid "Round-robin" msgstr "Round-robin" -#: ../clients/tui/nmt-page-bond.c:89 +#: ../clients/tui/nmt-page-bond.c:88 msgid "Active Backup" msgstr "Aktiv säkerhetskopia" -#: ../clients/tui/nmt-page-bond.c:90 +#: ../clients/tui/nmt-page-bond.c:89 msgid "XOR" msgstr "XOR" -#: ../clients/tui/nmt-page-bond.c:91 +#: ../clients/tui/nmt-page-bond.c:90 msgid "Broadcast" msgstr "Broadcast" -#: ../clients/tui/nmt-page-bond.c:92 +#: ../clients/tui/nmt-page-bond.c:91 msgid "802.3ad" msgstr "802.3ad" -#: ../clients/tui/nmt-page-bond.c:93 +#: ../clients/tui/nmt-page-bond.c:92 msgid "Adaptive Transmit Load Balancing (tlb)" msgstr "Adaptive Transmit Load Balancing (tlb)" -#: ../clients/tui/nmt-page-bond.c:94 +#: ../clients/tui/nmt-page-bond.c:93 msgid "Adaptive Load Balancing (alb)" msgstr "Adaptive Load Balancing (alb)" -#: ../clients/tui/nmt-page-bond.c:100 +#: ../clients/tui/nmt-page-bond.c:99 msgid "MII (recommended)" msgstr "MII (rekommenderad)" -#: ../clients/tui/nmt-page-bond.c:101 +#: ../clients/tui/nmt-page-bond.c:100 msgid "ARP" msgstr "ARP" -#: ../clients/tui/nmt-page-bond.c:357 ../clients/tui/nmt-page-bridge.c:80 -#: ../clients/tui/nmt-page-team.c:153 +#: ../clients/tui/nmt-page-bond.c:358 ../clients/tui/nmt-page-bridge.c:81 +#: ../clients/tui/nmt-page-team.c:155 msgid "Slaves" msgstr "Slavar" -#: ../clients/tui/nmt-page-bond.c:369 ../clients/tui/nmt-page-wifi.c:232 +#: ../clients/tui/nmt-page-bond.c:370 ../clients/tui/nmt-page-wifi.c:233 msgid "Mode" msgstr "Läge" -#: ../clients/tui/nmt-page-bond.c:375 +#: ../clients/tui/nmt-page-bond.c:376 msgid "Primary" msgstr "Primär" -#: ../clients/tui/nmt-page-bond.c:381 +#: ../clients/tui/nmt-page-bond.c:382 msgid "Link monitoring" msgstr "Länkövervakning" -#: ../clients/tui/nmt-page-bond.c:387 ../clients/tui/nmt-page-bond.c:394 -#: ../clients/tui/nmt-page-bond.c:401 ../clients/tui/nmt-page-bond.c:408 +#: ../clients/tui/nmt-page-bond.c:388 ../clients/tui/nmt-page-bond.c:395 +#: ../clients/tui/nmt-page-bond.c:402 ../clients/tui/nmt-page-bond.c:409 msgctxt "milliseconds" msgid "ms" msgstr "ms" -#: ../clients/tui/nmt-page-bond.c:388 ../clients/tui/nmt-page-bond.c:409 +#: ../clients/tui/nmt-page-bond.c:389 ../clients/tui/nmt-page-bond.c:410 msgid "Monitoring frequency" msgstr "Övervakningsfrekvens" -#: ../clients/tui/nmt-page-bond.c:395 +#: ../clients/tui/nmt-page-bond.c:396 msgid "Link up delay" msgstr "Fördröjning för länk upp" -#: ../clients/tui/nmt-page-bond.c:402 +#: ../clients/tui/nmt-page-bond.c:403 msgid "Link down delay" msgstr "Fördröjning för länk ned" -#: ../clients/tui/nmt-page-bond.c:415 +#: ../clients/tui/nmt-page-bond.c:416 msgid "ARP targets" msgstr "ARP-mÃ¥l" -#: ../clients/tui/nmt-page-bridge-port.c:38 +#: ../clients/tui/nmt-page-bridge-port.c:63 msgid "BRIDGE PORT" msgstr "BRYGGPORT" -#: ../clients/tui/nmt-page-bridge-port.c:69 -#: ../clients/tui/nmt-page-bridge.c:106 +#: ../clients/tui/nmt-page-bridge-port.c:70 +#: ../clients/tui/nmt-page-bridge.c:107 msgid "Priority" msgstr "Prioritet" -#: ../clients/tui/nmt-page-bridge-port.c:75 +#: ../clients/tui/nmt-page-bridge-port.c:76 msgid "Path cost" msgstr "Sökvägskostnad" -#: ../clients/tui/nmt-page-bridge-port.c:77 +#: ../clients/tui/nmt-page-bridge-port.c:78 msgid "Hairpin mode" msgstr "HÃ¥rnÃ¥lsläge" -#: ../clients/tui/nmt-page-bridge.c:90 ../clients/tui/nmt-page-bridge.c:115 -#: ../clients/tui/nmt-page-bridge.c:125 ../clients/tui/nmt-page-bridge.c:135 +#: ../clients/tui/nmt-page-bridge.c:91 ../clients/tui/nmt-page-bridge.c:116 +#: ../clients/tui/nmt-page-bridge.c:126 ../clients/tui/nmt-page-bridge.c:136 msgid "seconds" msgstr "sekunder" -#: ../clients/tui/nmt-page-bridge.c:91 +#: ../clients/tui/nmt-page-bridge.c:92 msgid "Aging time" msgstr "Ã…lder" -#: ../clients/tui/nmt-page-bridge.c:93 +#: ../clients/tui/nmt-page-bridge.c:94 msgid "Enable STP (Spanning Tree Protocol)" msgstr "Aktivera STP (Spanning Tree Protocol)" -#: ../clients/tui/nmt-page-bridge.c:116 +#: ../clients/tui/nmt-page-bridge.c:117 msgid "Forward delay" msgstr "FramÃ¥tfördröjning" -#: ../clients/tui/nmt-page-bridge.c:126 +#: ../clients/tui/nmt-page-bridge.c:127 msgid "Hello time" msgstr "HallÃ¥tid" -#: ../clients/tui/nmt-page-bridge.c:136 +#: ../clients/tui/nmt-page-bridge.c:137 msgid "Max age" msgstr "Max Ã¥lder" -#. TTLS and PEAP are actually much more complicated, but this complication -#. * is not visible here since we only care about phase2 authentication -#. * (and don't even care of which one) -#. -#: ../clients/tui/nmt-page-dsl.c:67 ../clients/tui/nmt-page-wifi.c:334 -#: ../clients/tui/nmt-secret-agent.c:206 ../clients/tui/nmt-secret-agent.c:301 -msgid "Username" -msgstr "Användarnamn" - -#: ../clients/tui/nmt-page-dsl.c:76 ../clients/tui/nmt-page-wifi.c:279 -#: ../clients/tui/nmt-page-wifi.c:310 ../clients/tui/nmt-page-wifi.c:343 -#: ../clients/tui/nmt-secret-agent.c:211 ../clients/tui/nmt-secret-agent.c:248 -#: ../clients/tui/nmt-secret-agent.c:278 ../clients/tui/nmt-secret-agent.c:311 -#: ../clients/tui/nmt-secret-agent.c:380 ../clients/tui/nmt-secret-agent.c:393 -#: ../clients/tui/nmt-secret-agent.c:409 -msgid "Password" -msgstr "Lösenord" - -#: ../clients/tui/nmt-page-dsl.c:79 ../clients/tui/nmt-secret-agent.c:306 -msgid "Service" -msgstr "Tjänst" - -#: ../clients/tui/nmt-page-ethernet.c:41 +#: ../clients/tui/nmt-page-ethernet.c:73 msgid "ETHERNET" msgstr "TRÃ…DBUNDET" -#: ../clients/tui/nmt-page-ethernet.c:80 ../clients/tui/nmt-page-vlan.c:124 -#: ../clients/tui/nmt-page-wifi.c:366 +#: ../clients/tui/nmt-page-ethernet.c:80 ../clients/tui/nmt-page-vlan.c:125 +#: ../clients/tui/nmt-page-wifi.c:367 msgid "Cloned MAC address" -msgstr "Klonade MAC-adress" +msgstr "Klonad MAC-adress" -#: ../clients/tui/nmt-page-infiniband.c:40 -msgid "INFINIBAND" -msgstr "INFINIBAND" - -#: ../clients/tui/nmt-page-infiniband.c:51 +#: ../clients/tui/nmt-page-infiniband.c:50 msgid "Datagram" msgstr "Datagram" -#: ../clients/tui/nmt-page-infiniband.c:52 +#: ../clients/tui/nmt-page-infiniband.c:51 msgid "Connected" msgstr "Ansluten" -#: ../clients/tui/nmt-page-infiniband.c:90 +#: ../clients/tui/nmt-page-infiniband.c:84 +msgid "INFINIBAND" +msgstr "INFINIBAND" + +#: ../clients/tui/nmt-page-infiniband.c:91 msgid "Transport mode" msgstr "Transportläge" @@ -5604,46 +6284,50 @@ msgstr "Manuell" msgid "Shared" msgstr "Delad" -#: ../clients/tui/nmt-page-ip4.c:54 -msgid "IPv4 CONFIGURATION" -msgstr "IPv4-KONFIGURATION" - -#: ../clients/tui/nmt-page-ip4.c:100 ../clients/tui/nmt-page-ip6.c:100 +#: ../clients/tui/nmt-page-ip4.c:85 ../clients/tui/nmt-page-ip6.c:85 msgid "(No custom routes)" msgstr "(Inga anpassade rutter)" -#: ../clients/tui/nmt-page-ip4.c:103 ../clients/tui/nmt-page-ip6.c:103 +#: ../clients/tui/nmt-page-ip4.c:88 ../clients/tui/nmt-page-ip6.c:88 #, c-format msgid "One custom route" msgid_plural "%d custom routes" msgstr[0] "En anpassad rutt" msgstr[1] "%d anpassade rutter" -#: ../clients/tui/nmt-page-ip4.c:144 ../clients/tui/nmt-page-ip6.c:144 +#: ../clients/tui/nmt-page-ip4.c:131 +msgid "IPv4 CONFIGURATION" +msgstr "IPv4-KONFIGURATION" + +#: ../clients/tui/nmt-page-ip4.c:139 ../clients/tui/nmt-page-ip6.c:139 msgid "Addresses" msgstr "Adresser" -#: ../clients/tui/nmt-page-ip4.c:150 ../clients/tui/nmt-page-ip6.c:150 +#: ../clients/tui/nmt-page-ip4.c:146 ../clients/tui/nmt-page-ip6.c:146 msgid "Gateway" msgstr "Gateway" -#: ../clients/tui/nmt-page-ip4.c:156 ../clients/tui/nmt-page-ip6.c:156 +#: ../clients/tui/nmt-page-ip4.c:153 ../clients/tui/nmt-page-ip6.c:153 msgid "DNS servers" msgstr "DNS-servrar" -#: ../clients/tui/nmt-page-ip4.c:162 ../clients/tui/nmt-page-ip6.c:162 +#: ../clients/tui/nmt-page-ip4.c:159 ../clients/tui/nmt-page-ip6.c:159 msgid "Search domains" msgstr "Sökdomäner" -#: ../clients/tui/nmt-page-ip4.c:177 ../clients/tui/nmt-page-ip6.c:175 +#: ../clients/tui/nmt-page-ip4.c:174 ../clients/tui/nmt-page-ip6.c:172 msgid "Routing" msgstr "Routing" -#: ../clients/tui/nmt-page-ip4.c:179 ../clients/tui/nmt-page-ip6.c:177 +#: ../clients/tui/nmt-page-ip4.c:176 ../clients/tui/nmt-page-ip6.c:174 msgid "Never use this network for default route" msgstr "Använd aldrig detta nätverk för standardrutten" -#: ../clients/tui/nmt-page-ip4.c:187 +#: ../clients/tui/nmt-page-ip4.c:182 ../clients/tui/nmt-page-ip6.c:180 +msgid "Ignore automatically obtained routes" +msgstr "Ignorera automatiskt erhÃ¥llna rutter" + +#: ../clients/tui/nmt-page-ip4.c:190 msgid "Require IPv4 addressing for this connection" msgstr "Kräv IPv4-adressering för denna anslutning" @@ -5655,232 +6339,200 @@ msgstr "Ignorera" msgid "Automatic (DHCP-only)" msgstr "Automatisk (endast DHCP)" -#: ../clients/tui/nmt-page-ip6.c:54 +#: ../clients/tui/nmt-page-ip6.c:131 msgid "IPv6 CONFIGURATION" msgstr "IPv6-KONFIGURATION" -#: ../clients/tui/nmt-page-ip6.c:185 +#: ../clients/tui/nmt-page-ip6.c:188 msgid "Require IPv6 addressing for this connection" msgstr "Kräv IPv6-adressering för denna anslutning" -#: ../clients/tui/nmt-page-main.c:139 -msgid "Hide" -msgstr "Dölj" - -#: ../clients/tui/nmt-page-main.c:139 -msgid "Show" -msgstr "Visa" - -#: ../clients/tui/nmt-page-main.c:188 -msgid "Profile name" -msgstr "Profilnamn" - -#: ../clients/tui/nmt-page-main.c:199 -msgid "Ethernet device" -msgstr "Ethernet-enhet" - -#: ../clients/tui/nmt-page-main.c:201 -msgid "Device" -msgstr "Enhet" - -#: ../clients/tui/nmt-page-main.c:252 -msgid "Automatically connect" -msgstr "Anslut automatiskt" - -#: ../clients/tui/nmt-page-main.c:258 -msgid "Available to all users" -msgstr "Tillgänglig för alla användare" - -#: ../clients/tui/nmt-page-ppp.c:49 +#: ../clients/tui/nmt-page-ppp.c:134 msgid "PPP CONFIGURATION" msgstr "PPP-KONFIGURATION" -#: ../clients/tui/nmt-page-ppp.c:142 +#: ../clients/tui/nmt-page-ppp.c:143 msgid "Allowed authentication methods:" msgstr "TillÃ¥tna autentiseringsmetoder:" -#: ../clients/tui/nmt-page-ppp.c:149 +#: ../clients/tui/nmt-page-ppp.c:150 msgid "EAP" msgstr "EAP" -#: ../clients/tui/nmt-page-ppp.c:157 +#: ../clients/tui/nmt-page-ppp.c:158 msgid "PAP" msgstr "PAP" -#: ../clients/tui/nmt-page-ppp.c:165 +#: ../clients/tui/nmt-page-ppp.c:166 msgid "CHAP" msgstr "CHAP" -#: ../clients/tui/nmt-page-ppp.c:173 +#: ../clients/tui/nmt-page-ppp.c:174 msgid "MSCHAPv2" msgstr "MSCHAPv2" -#: ../clients/tui/nmt-page-ppp.c:181 +#: ../clients/tui/nmt-page-ppp.c:182 msgid "MSCHAP" msgstr "MSCHAP" -#: ../clients/tui/nmt-page-ppp.c:197 +#: ../clients/tui/nmt-page-ppp.c:198 msgid "Use point-to-point encryption (MPPE)" msgstr "Använd punkt-till-punkt-kryptering (MPPE)" -#: ../clients/tui/nmt-page-ppp.c:209 +#: ../clients/tui/nmt-page-ppp.c:210 msgid "Require 128-bit encryption" msgstr "Kräv 128-bitars kryptering" -#: ../clients/tui/nmt-page-ppp.c:219 +#: ../clients/tui/nmt-page-ppp.c:220 msgid "Use stateful MPPE" msgstr "Använd MPPE med tillstÃ¥nd" -#: ../clients/tui/nmt-page-ppp.c:231 +#: ../clients/tui/nmt-page-ppp.c:232 msgid "Allow BSD data compression" msgstr "TillÃ¥t BSD-datakomprimering" -#: ../clients/tui/nmt-page-ppp.c:239 +#: ../clients/tui/nmt-page-ppp.c:240 msgid "Allow Deflate data compression" msgstr "TillÃ¥t Deflate-datakomprimering" -#: ../clients/tui/nmt-page-ppp.c:247 +#: ../clients/tui/nmt-page-ppp.c:248 msgid "Use TCP header compression" msgstr "Använd TCP-huvudkomprimering" -#: ../clients/tui/nmt-page-ppp.c:257 +#: ../clients/tui/nmt-page-ppp.c:258 msgid "Send PPP echo packets" msgstr "Skicka PPP-ekopaket" -#: ../clients/tui/nmt-page-team-port.c:45 +#: ../clients/tui/nmt-page-team-port.c:95 msgid "TEAM PORT" msgstr "GRUPP-PORT" -#: ../clients/tui/nmt-page-team-port.c:100 ../clients/tui/nmt-page-team.c:164 +#: ../clients/tui/nmt-page-team-port.c:102 ../clients/tui/nmt-page-team.c:166 msgid "JSON configuration" msgstr "JSON-konfiguration" -#: ../clients/tui/nmt-page-vlan.c:101 +#: ../clients/tui/nmt-page-vlan.c:102 msgid "Parent" -msgstr "Förälder" +msgstr "Överordnad" -#: ../clients/tui/nmt-page-vlan.c:116 +#: ../clients/tui/nmt-page-vlan.c:117 msgid "VLAN id" msgstr "VLAN-ID" -#: ../clients/tui/nmt-page-wifi.c:57 -msgid "WI-FI" -msgstr "TRÃ…DLÖS" - -#: ../clients/tui/nmt-page-wifi.c:68 +#: ../clients/tui/nmt-page-wifi.c:67 msgctxt "Wi-Fi" msgid "Client" msgstr "Klient" -#: ../clients/tui/nmt-page-wifi.c:69 +#: ../clients/tui/nmt-page-wifi.c:68 msgid "Access Point" msgstr "Accesspunkt" -#: ../clients/tui/nmt-page-wifi.c:70 +#: ../clients/tui/nmt-page-wifi.c:69 msgid "Ad-Hoc Network" msgstr "Ad-Hoc-nätverk" -#: ../clients/tui/nmt-page-wifi.c:75 +#: ../clients/tui/nmt-page-wifi.c:74 msgctxt "Wi-Fi" msgid "Automatic" msgstr "Automatisk" #. 802.11a Wi-Fi network -#: ../clients/tui/nmt-page-wifi.c:77 +#: ../clients/tui/nmt-page-wifi.c:76 msgid "A (5 GHz)" msgstr "A (5 GHz)" #. 802.11b / 802.11g Wi-Fi network -#: ../clients/tui/nmt-page-wifi.c:79 +#: ../clients/tui/nmt-page-wifi.c:78 msgid "B/G (2.4 GHz)" msgstr "B/G (2.4 GHz)" -#: ../clients/tui/nmt-page-wifi.c:84 +#: ../clients/tui/nmt-page-wifi.c:83 msgctxt "Wi-Fi security" msgid "None" msgstr "Ingen" -#: ../clients/tui/nmt-page-wifi.c:85 +#: ../clients/tui/nmt-page-wifi.c:84 msgid "WPA & WPA2 Personal" msgstr "WPA & WPA2 Personal" -#: ../clients/tui/nmt-page-wifi.c:86 +#: ../clients/tui/nmt-page-wifi.c:85 msgid "WPA & WPA2 Enterprise" msgstr "WPA & WPA2 Enterprise" -#: ../clients/tui/nmt-page-wifi.c:87 +#: ../clients/tui/nmt-page-wifi.c:86 msgid "WEP 40/128-bit Key (Hex or ASCII)" msgstr "WEP 40/128-bit nyckel (Hex eller ASCII)" -#: ../clients/tui/nmt-page-wifi.c:88 +#: ../clients/tui/nmt-page-wifi.c:87 msgid "WEP 128-bit Passphrase" msgstr "WEP 128-bit lösenfras" -#: ../clients/tui/nmt-page-wifi.c:89 +#: ../clients/tui/nmt-page-wifi.c:88 msgid "Dynamic WEP (802.1x)" msgstr "Dynamisk WEP (802.1x)" -#: ../clients/tui/nmt-page-wifi.c:90 +#: ../clients/tui/nmt-page-wifi.c:89 msgid "LEAP" msgstr "LEAP" -#: ../clients/tui/nmt-page-wifi.c:95 +#: ../clients/tui/nmt-page-wifi.c:94 msgctxt "WEP key index" msgid "1 (Default)" -msgstr "1" +msgstr "1 (Standard)" -#: ../clients/tui/nmt-page-wifi.c:96 +#: ../clients/tui/nmt-page-wifi.c:95 msgctxt "WEP key index" msgid "2" msgstr "2" -#: ../clients/tui/nmt-page-wifi.c:97 +#: ../clients/tui/nmt-page-wifi.c:96 msgctxt "WEP key index" msgid "3" msgstr "3" -#: ../clients/tui/nmt-page-wifi.c:98 +#: ../clients/tui/nmt-page-wifi.c:97 msgctxt "WEP key index" msgid "4" msgstr "4" -#: ../clients/tui/nmt-page-wifi.c:103 +#: ../clients/tui/nmt-page-wifi.c:102 msgid "Open System" msgstr "Öppet system" -#: ../clients/tui/nmt-page-wifi.c:104 +#: ../clients/tui/nmt-page-wifi.c:103 msgid "Shared Key" msgstr "Delad nyckel" -#: ../clients/tui/nmt-page-wifi.c:258 +#: ../clients/tui/nmt-page-wifi.c:217 +msgid "WI-FI" +msgstr "TRÃ…DLÖS" + +#: ../clients/tui/nmt-page-wifi.c:259 msgid "Channel" msgstr "Kanal" -#: ../clients/tui/nmt-page-wifi.c:263 +#: ../clients/tui/nmt-page-wifi.c:264 msgid "Security" msgstr "Säkerhet" #. "wpa-enterprise" #. FIXME -#: ../clients/tui/nmt-page-wifi.c:284 +#: ../clients/tui/nmt-page-wifi.c:285 msgid "(No support for wpa-enterprise yet...)" msgstr "(Inget stöd för wpa-enterprise än…)" -#: ../clients/tui/nmt-page-wifi.c:291 ../clients/tui/nmt-secret-agent.c:262 -msgid "Key" -msgstr "Nyckel" - -#: ../clients/tui/nmt-page-wifi.c:294 ../clients/tui/nmt-page-wifi.c:313 +#: ../clients/tui/nmt-page-wifi.c:295 ../clients/tui/nmt-page-wifi.c:314 msgid "WEP index" msgstr "WEP-index" -#: ../clients/tui/nmt-page-wifi.c:302 ../clients/tui/nmt-page-wifi.c:321 +#: ../clients/tui/nmt-page-wifi.c:303 ../clients/tui/nmt-page-wifi.c:322 msgid "Authentication" msgstr "Autentisering" #. "dynamic-wep" #. FIXME -#: ../clients/tui/nmt-page-wifi.c:327 +#: ../clients/tui/nmt-page-wifi.c:328 msgid "(No support for dynamic-wep yet...)" msgstr "(Inget stöd för dynamic-wep än…)" @@ -5892,81 +6544,25 @@ msgstr "FrÃ¥ga alltid efter lösenord" msgid "Show password" msgstr "Visa lösenord" -#: ../clients/tui/nmt-route-table.c:219 +#: ../clients/tui/nmt-route-table.c:192 msgid "Destination" msgstr "Destination" -#: ../clients/tui/nmt-route-table.c:219 +#: ../clients/tui/nmt-route-table.c:192 msgid "Prefix" msgstr "Prefix" -#: ../clients/tui/nmt-route-table.c:228 +#: ../clients/tui/nmt-route-table.c:201 msgid "Next Hop" msgstr "Nästa hopp" -#: ../clients/tui/nmt-route-table.c:236 +#: ../clients/tui/nmt-route-table.c:209 msgid "Metric" msgstr "Mätvärde" -#: ../clients/tui/nmt-route-table.c:256 +#: ../clients/tui/nmt-route-table.c:229 msgid "No custom routes are defined." -msgstr "Inga anpassade rutter är definerade." - -#: ../clients/tui/nmt-secret-agent.c:220 -msgid "Identity" -msgstr "Identitet" - -#: ../clients/tui/nmt-secret-agent.c:225 -msgid "Private key password" -msgstr "Lösenord för privat nyckel" - -#: ../clients/tui/nmt-secret-agent.c:340 -msgid "Authentication required by wireless network" -msgstr "Autentisering krävs av trÃ¥dlösa nätverket" - -#: ../clients/tui/nmt-secret-agent.c:341 -#, c-format -msgid "" -"Passwords or encryption keys are required to access the wireless network " -"'%s'." -msgstr "" -"Lösenord eller krypteringsnycklar krävs för Ã¥tkomst till trÃ¥dlösa nätverket " -"â€%sâ€." - -#: ../clients/tui/nmt-secret-agent.c:349 -msgid "Wired 802.1X authentication" -msgstr "TrÃ¥dbunden 802.1X-autentisering" - -#: ../clients/tui/nmt-secret-agent.c:352 -msgid "Network name" -msgstr "Nätverksnamn" - -#: ../clients/tui/nmt-secret-agent.c:359 -msgid "DSL authentication" -msgstr "DSL-autentisering" - -#: ../clients/tui/nmt-secret-agent.c:367 -msgid "PIN code required" -msgstr "PIN-kod krävs" - -#: ../clients/tui/nmt-secret-agent.c:368 -msgid "PIN code is needed for the mobile broadband device" -msgstr "Det krävs PIN-kod för den mobila bredbandsenheten" - -#: ../clients/tui/nmt-secret-agent.c:370 -msgid "PIN" -msgstr "PIN" - -#: ../clients/tui/nmt-secret-agent.c:376 ../clients/tui/nmt-secret-agent.c:389 -#: ../clients/tui/nmt-secret-agent.c:405 -msgid "Mobile broadband network password" -msgstr "Nätverkslösenord för mobilt bredband" - -#: ../clients/tui/nmt-secret-agent.c:377 ../clients/tui/nmt-secret-agent.c:390 -#: ../clients/tui/nmt-secret-agent.c:406 -#, c-format -msgid "A password is required to connect to '%s'." -msgstr "Ett lösenord krävs för att ansluta till â€%sâ€." +msgstr "Inga anpassade rutter är definierade." #: ../clients/tui/nmt-slave-list.c:137 msgid "Select the type of slave connection you wish to add." @@ -5980,50 +6576,50 @@ msgstr "Lägg till…" msgid "Remove" msgstr "Ta bort" -#: ../clients/tui/nmtui-connect.c:90 +#: ../clients/tui/nmtui-connect.c:92 msgid "Activation failed" msgstr "Aktivering misslyckades" -#: ../clients/tui/nmtui-connect.c:145 +#: ../clients/tui/nmtui-connect.c:147 msgid "Connecting..." msgstr "Ansluter…" -#: ../clients/tui/nmtui-connect.c:174 ../clients/tui/nmtui-connect.c:197 +#: ../clients/tui/nmtui-connect.c:182 ../clients/tui/nmtui-connect.c:213 #, c-format msgid "Could not activate connection: %s" msgstr "Kunde inte aktivera anslutningen: %s" -#: ../clients/tui/nmtui-connect.c:257 ../clients/tui/nmtui-connect.c:306 +#: ../clients/tui/nmtui-connect.c:273 ../clients/tui/nmtui-connect.c:322 msgid "Activate" msgstr "Aktivera" -#: ../clients/tui/nmtui-connect.c:259 +#: ../clients/tui/nmtui-connect.c:275 msgid "Deactivate" msgstr "Inaktivera" -#: ../clients/tui/nmtui-connect.c:311 ../clients/tui/nmtui-edit.c:119 +#: ../clients/tui/nmtui-connect.c:327 ../clients/tui/nmtui-edit.c:121 #: ../clients/tui/nmtui.c:111 msgid "Quit" msgstr "Avsluta" -#: ../clients/tui/nmtui-connect.c:334 +#: ../clients/tui/nmtui-connect.c:350 #, c-format msgid "No such connection '%s'" msgstr "Ingen sÃ¥dan anslutning â€%sâ€" -#: ../clients/tui/nmtui-connect.c:336 +#: ../clients/tui/nmtui-connect.c:352 msgid "Connection is already active" msgstr "Anslutningen är redan aktiv" -#: ../clients/tui/nmtui-edit.c:224 +#: ../clients/tui/nmtui-edit.c:226 msgid "Create" msgstr "Skapa" -#: ../clients/tui/nmtui-edit.c:366 +#: ../clients/tui/nmtui-edit.c:368 msgid "Select the type of connection you wish to create." msgstr "Välj den typ av anslutning du vill skapa." -#: ../clients/tui/nmtui-edit.c:374 +#: ../clients/tui/nmtui-edit.c:376 msgid "" "If you are creating a VPN, and the VPN connection you wish to create does " "not appear in the list, you may not have the correct VPN plugin installed." @@ -6031,21 +6627,21 @@ msgstr "" "Om du skapar ett VPN, och VPN-konfigurationen du vill skapa inte visas i " "listan kanske du inte har rätt VPN-insticksmodul installerad." -#: ../clients/tui/nmtui-edit.c:410 ../clients/tui/nmtui-edit.c:426 +#: ../clients/tui/nmtui-edit.c:412 ../clients/tui/nmtui-edit.c:428 msgid "New Connection" msgstr "Ny anslutning" -#: ../clients/tui/nmtui-edit.c:465 +#: ../clients/tui/nmtui-edit.c:467 #, c-format msgid "Unable to delete connection: %s" msgstr "Kunde inte ta bort anslutningen: %s" -#: ../clients/tui/nmtui-edit.c:504 +#: ../clients/tui/nmtui-edit.c:506 #, c-format msgid "Could not delete connection '%s': %s" msgstr "Kunde inte ta bort anslutningen â€%sâ€: %s" -#: ../clients/tui/nmtui-edit.c:524 +#: ../clients/tui/nmtui-edit.c:528 #, c-format msgid "Are you sure you want to delete the connection '%s'?" msgstr "Är du säker pÃ¥ att du vill radera anslutningen â€%sâ€?" @@ -6112,7 +6708,7 @@ msgstr "Kunde inte kontakta Nätverkshanteraren: %s.\n" #: ../clients/tui/nmtui.c:242 msgid "NetworkManager is not running." -msgstr "Nätverkshanteraren är inte startad" +msgstr "Nätverkshanteraren är inte startad." #: ../libnm-core/crypto.c:120 ../libnm-util/crypto.c:133 #, c-format @@ -6159,160 +6755,160 @@ msgstr "Felformulerad PEM-fil: okänt chiffer för privat nyckel â€%sâ€." msgid "Could not decode private key." msgstr "Kunde inte avkoda privat nyckel." -#: ../libnm-core/crypto.c:273 ../libnm-util/crypto.c:285 +#: ../libnm-core/crypto.c:274 ../libnm-util/crypto.c:285 msgid "Failed to find expected PKCS#8 start tag." msgstr "Misslyckades med att hitta förväntad PKCS#8-starttagg." -#: ../libnm-core/crypto.c:281 ../libnm-util/crypto.c:293 +#: ../libnm-core/crypto.c:282 ../libnm-util/crypto.c:293 #, c-format msgid "Failed to find expected PKCS#8 end tag '%s'." msgstr "Misslyckades med att hitta förväntad PKCS#8-sluttagg â€%sâ€." -#: ../libnm-core/crypto.c:300 ../libnm-util/crypto.c:312 +#: ../libnm-core/crypto.c:301 ../libnm-util/crypto.c:312 msgid "Failed to decode PKCS#8 private key." msgstr "Misslyckades med att avkoda privat PKCS#8-nyckel." -#: ../libnm-core/crypto.c:342 ../libnm-util/crypto.c:354 +#: ../libnm-core/crypto.c:343 ../libnm-util/crypto.c:354 #, c-format msgid "IV must be an even number of bytes in length." msgstr "IV mÃ¥ste vara ett jämnt antal byte i längd." -#: ../libnm-core/crypto.c:356 ../libnm-util/crypto.c:368 +#: ../libnm-core/crypto.c:357 ../libnm-util/crypto.c:368 #, c-format msgid "IV contains non-hexadecimal digits." msgstr "IV innehÃ¥ller icke-hexadecimala siffror." -#: ../libnm-core/crypto.c:396 ../libnm-core/crypto_gnutls.c:151 -#: ../libnm-core/crypto_gnutls.c:269 ../libnm-core/crypto_nss.c:172 -#: ../libnm-core/crypto_nss.c:334 ../libnm-util/crypto.c:408 -#: ../libnm-util/crypto_gnutls.c:150 ../libnm-util/crypto_gnutls.c:267 -#: ../libnm-util/crypto_nss.c:170 ../libnm-util/crypto_nss.c:331 +#: ../libnm-core/crypto.c:397 ../libnm-core/crypto_gnutls.c:93 +#: ../libnm-core/crypto_gnutls.c:214 ../libnm-core/crypto_nss.c:115 +#: ../libnm-core/crypto_nss.c:280 ../libnm-util/crypto.c:408 +#: ../libnm-util/crypto_gnutls.c:146 ../libnm-util/crypto_gnutls.c:263 +#: ../libnm-util/crypto_nss.c:165 ../libnm-util/crypto_nss.c:326 #, c-format msgid "Private key cipher '%s' was unknown." msgstr "Privata nyckelchiffret â€%s†var okänt." -#: ../libnm-core/crypto.c:508 ../libnm-util/crypto.c:518 +#: ../libnm-core/crypto.c:496 ../libnm-util/crypto.c:518 #, c-format msgid "Unable to determine private key type." msgstr "Kunde inte bestämma typ av privat nyckel." -#: ../libnm-core/crypto.c:565 ../libnm-util/crypto.c:573 +#: ../libnm-core/crypto.c:504 +#, c-format +msgid "Password provided, but key was not encrypted." +msgstr "Lösenord tillhandahÃ¥llet, men nyckeln var inte krypterad." + +#: ../libnm-core/crypto.c:557 ../libnm-util/crypto.c:573 #, c-format msgid "PEM certificate had no start tag '%s'." msgstr "PEM-certifikatet hade ingen starttagg â€%sâ€." -#: ../libnm-core/crypto.c:574 ../libnm-util/crypto.c:582 +#: ../libnm-core/crypto.c:566 ../libnm-util/crypto.c:582 #, c-format msgid "PEM certificate had no end tag '%s'." msgstr "PEM-certifikatet hade ingen sluttagg â€%sâ€." -#: ../libnm-core/crypto.c:592 ../libnm-util/crypto.c:600 +#: ../libnm-core/crypto.c:584 ../libnm-util/crypto.c:600 #, c-format msgid "Failed to decode certificate." msgstr "Misslyckades med att avkoda certifikat." -#: ../libnm-core/crypto_gnutls.c:50 ../libnm-util/crypto_gnutls.c:50 +#: ../libnm-core/crypto_gnutls.c:51 ../libnm-util/crypto_gnutls.c:51 msgid "Failed to initialize the crypto engine." msgstr "Misslyckades med att initiera krypteringsmotorn." -#: ../libnm-core/crypto_gnutls.c:92 ../libnm-util/crypto_gnutls.c:92 -#, c-format -msgid "Failed to initialize the MD5 engine: %s / %s." -msgstr "Misslyckades med att initiera MD5-motorn: %s / %s." - -#: ../libnm-core/crypto_gnutls.c:159 ../libnm-util/crypto_gnutls.c:158 +#: ../libnm-core/crypto_gnutls.c:101 ../libnm-util/crypto_gnutls.c:154 #, c-format msgid "Invalid IV length (must be at least %zd)." msgstr "Ogiltig IV-längd (mÃ¥ste vara minst %zd)." -#: ../libnm-core/crypto_gnutls.c:170 ../libnm-util/crypto_gnutls.c:169 +#: ../libnm-core/crypto_gnutls.c:112 ../libnm-util/crypto_gnutls.c:165 #, c-format msgid "Failed to initialize the decryption cipher context: %s / %s." msgstr "" "Misslyckades med att initiera chifferkontexten för dekryptering: %s / %s." -#: ../libnm-core/crypto_gnutls.c:179 ../libnm-util/crypto_gnutls.c:178 +#: ../libnm-core/crypto_gnutls.c:121 ../libnm-util/crypto_gnutls.c:174 #, c-format msgid "Failed to set symmetric key for decryption: %s / %s." msgstr "" "Misslyckades med att ställa in symmetrisk nyckel för dekryptering: %s / %s." -#: ../libnm-core/crypto_gnutls.c:188 ../libnm-util/crypto_gnutls.c:187 +#: ../libnm-core/crypto_gnutls.c:130 ../libnm-util/crypto_gnutls.c:183 #, c-format msgid "Failed to set IV for decryption: %s / %s." msgstr "Misslyckades med att ställa in IV för dekryptering: %s / %s." -#: ../libnm-core/crypto_gnutls.c:197 ../libnm-util/crypto_gnutls.c:196 +#: ../libnm-core/crypto_gnutls.c:139 ../libnm-util/crypto_gnutls.c:192 #, c-format msgid "Failed to decrypt the private key: %s / %s." msgstr "Misslyckades med att dekryptera den privata nyckeln: %s / %s." -#: ../libnm-core/crypto_gnutls.c:207 ../libnm-core/crypto_nss.c:262 -#: ../libnm-util/crypto_gnutls.c:206 ../libnm-util/crypto_nss.c:260 +#: ../libnm-core/crypto_gnutls.c:149 ../libnm-core/crypto_nss.c:205 +#: ../libnm-util/crypto_gnutls.c:202 ../libnm-util/crypto_nss.c:255 #, c-format msgid "Failed to decrypt the private key: unexpected padding length." msgstr "" "Misslyckades med att dekryptera privata nyckeln: oväntad utfyllningslängd." -#: ../libnm-core/crypto_gnutls.c:218 ../libnm-core/crypto_nss.c:273 -#: ../libnm-util/crypto_gnutls.c:217 ../libnm-util/crypto_nss.c:271 +#: ../libnm-core/crypto_gnutls.c:160 ../libnm-core/crypto_nss.c:216 +#: ../libnm-util/crypto_gnutls.c:213 ../libnm-util/crypto_nss.c:266 #, c-format msgid "Failed to decrypt the private key." msgstr "Misslyckades med att dekryptera privata nyckeln." -#: ../libnm-core/crypto_gnutls.c:291 ../libnm-util/crypto_gnutls.c:289 +#: ../libnm-core/crypto_gnutls.c:236 ../libnm-util/crypto_gnutls.c:285 #, c-format msgid "Failed to initialize the encryption cipher context: %s / %s." msgstr "" "Misslyckades med att initiera chifferkontexten för kryptering: %s / %s." -#: ../libnm-core/crypto_gnutls.c:300 ../libnm-util/crypto_gnutls.c:298 +#: ../libnm-core/crypto_gnutls.c:245 ../libnm-util/crypto_gnutls.c:294 #, c-format msgid "Failed to set symmetric key for encryption: %s / %s." msgstr "" "Misslyckades med att ställa in symmetrisk nyckel för kryptering: %s / %s." -#: ../libnm-core/crypto_gnutls.c:310 ../libnm-util/crypto_gnutls.c:308 +#: ../libnm-core/crypto_gnutls.c:255 ../libnm-util/crypto_gnutls.c:304 #, c-format msgid "Failed to set IV for encryption: %s / %s." msgstr "Misslyckades med att ställa in IV för kryptering: %s / %s." -#: ../libnm-core/crypto_gnutls.c:319 ../libnm-util/crypto_gnutls.c:317 +#: ../libnm-core/crypto_gnutls.c:264 ../libnm-util/crypto_gnutls.c:313 #, c-format msgid "Failed to encrypt the data: %s / %s." -msgstr "Misslyckades med att kryptera datat: %s / %s." +msgstr "Misslyckades med att kryptera data: %s / %s." -#: ../libnm-core/crypto_gnutls.c:359 ../libnm-util/crypto_gnutls.c:357 +#: ../libnm-core/crypto_gnutls.c:307 ../libnm-util/crypto_gnutls.c:353 #, c-format msgid "Error initializing certificate data: %s" msgstr "Fel vid initiering av certifikatdata: %s" -#: ../libnm-core/crypto_gnutls.c:381 ../libnm-util/crypto_gnutls.c:379 +#: ../libnm-core/crypto_gnutls.c:329 ../libnm-util/crypto_gnutls.c:375 #, c-format msgid "Couldn't decode certificate: %s" msgstr "Kunde inte avkoda certifikat: %s" -#: ../libnm-core/crypto_gnutls.c:406 ../libnm-util/crypto_gnutls.c:403 +#: ../libnm-core/crypto_gnutls.c:357 ../libnm-util/crypto_gnutls.c:399 #, c-format msgid "Couldn't initialize PKCS#12 decoder: %s" msgstr "Kunde inte initiera PKCS#12-avkodare: %s" -#: ../libnm-core/crypto_gnutls.c:419 ../libnm-util/crypto_gnutls.c:416 +#: ../libnm-core/crypto_gnutls.c:370 ../libnm-util/crypto_gnutls.c:412 #, c-format msgid "Couldn't decode PKCS#12 file: %s" msgstr "Kunde inte avkoda PKCS#12-fil: %s" -#: ../libnm-core/crypto_gnutls.c:431 ../libnm-util/crypto_gnutls.c:428 +#: ../libnm-core/crypto_gnutls.c:382 ../libnm-util/crypto_gnutls.c:424 #, c-format msgid "Couldn't verify PKCS#12 file: %s" msgstr "Kunde inte verifiera PKCS#12-fil: %s" -#: ../libnm-core/crypto_gnutls.c:460 ../libnm-util/crypto_gnutls.c:456 +#: ../libnm-core/crypto_gnutls.c:414 ../libnm-util/crypto_gnutls.c:452 #, c-format msgid "Couldn't initialize PKCS#8 decoder: %s" msgstr "Kunde inte initiera PKCS#8-avkodare: %s" -#: ../libnm-core/crypto_gnutls.c:483 ../libnm-util/crypto_gnutls.c:479 +#: ../libnm-core/crypto_gnutls.c:437 ../libnm-util/crypto_gnutls.c:475 #, c-format msgid "Couldn't decode PKCS#8 file: %s" msgstr "Kunde inte avkoda PKCS#8-fil: %s" @@ -6322,393 +6918,557 @@ msgstr "Kunde inte avkoda PKCS#8-fil: %s" msgid "Failed to initialize the crypto engine: %d." msgstr "Misslyckades med att initiera krypteringsmotorn: %d." -#: ../libnm-core/crypto_nss.c:108 ../libnm-util/crypto_nss.c:107 -#, c-format -msgid "Failed to initialize the MD5 context: %d." -msgstr "Misslyckades med att initiera MD5-kontexten: %d." - -#: ../libnm-core/crypto_nss.c:180 ../libnm-util/crypto_nss.c:178 +#: ../libnm-core/crypto_nss.c:123 ../libnm-util/crypto_nss.c:173 #, c-format msgid "Invalid IV length (must be at least %d)." msgstr "Ogiltig IV-längd (mÃ¥ste vara minst %d)." -#: ../libnm-core/crypto_nss.c:191 ../libnm-util/crypto_nss.c:189 +#: ../libnm-core/crypto_nss.c:134 ../libnm-util/crypto_nss.c:184 #, c-format msgid "Failed to initialize the decryption cipher slot." msgstr "Misslyckades med att initiera dekrypteringschifferplatsen." -#: ../libnm-core/crypto_nss.c:201 ../libnm-util/crypto_nss.c:199 +#: ../libnm-core/crypto_nss.c:144 ../libnm-util/crypto_nss.c:194 #, c-format msgid "Failed to set symmetric key for decryption." msgstr "Misslyckades med att ställa in symmetrisk nyckel för dekryptering." -#: ../libnm-core/crypto_nss.c:211 ../libnm-util/crypto_nss.c:209 +#: ../libnm-core/crypto_nss.c:154 ../libnm-util/crypto_nss.c:204 #, c-format msgid "Failed to set IV for decryption." msgstr "Misslyckades med att ställa in IV för dekryptering." -#: ../libnm-core/crypto_nss.c:219 ../libnm-util/crypto_nss.c:217 +#: ../libnm-core/crypto_nss.c:162 ../libnm-util/crypto_nss.c:212 #, c-format msgid "Failed to initialize the decryption context." msgstr "Misslyckades med att initiera dekrypteringskontexten." -#: ../libnm-core/crypto_nss.c:232 ../libnm-util/crypto_nss.c:230 +#: ../libnm-core/crypto_nss.c:175 ../libnm-util/crypto_nss.c:225 #, c-format msgid "Failed to decrypt the private key: %d." msgstr "Misslyckades med att dekryptera privata nyckeln: %d." -#: ../libnm-core/crypto_nss.c:240 ../libnm-util/crypto_nss.c:238 +#: ../libnm-core/crypto_nss.c:183 ../libnm-util/crypto_nss.c:233 #, c-format msgid "Failed to decrypt the private key: decrypted data too large." msgstr "" "Misslyckades med att dekryptera privata nyckeln: dekrypterat data är för " "stort." -#: ../libnm-core/crypto_nss.c:251 ../libnm-util/crypto_nss.c:249 +#: ../libnm-core/crypto_nss.c:194 ../libnm-util/crypto_nss.c:244 #, c-format msgid "Failed to finalize decryption of the private key: %d." msgstr "" "Misslyckades med att färdigställa dekryptering av den privata nyckeln: %d." -#: ../libnm-core/crypto_nss.c:356 ../libnm-util/crypto_nss.c:353 +#: ../libnm-core/crypto_nss.c:302 ../libnm-util/crypto_nss.c:348 #, c-format msgid "Failed to initialize the encryption cipher slot." msgstr "Misslyckades med att initiera krypteringschifferplatsen." -#: ../libnm-core/crypto_nss.c:364 ../libnm-util/crypto_nss.c:361 +#: ../libnm-core/crypto_nss.c:310 ../libnm-util/crypto_nss.c:356 #, c-format msgid "Failed to set symmetric key for encryption." msgstr "Misslyckades med att ställa in symmetrisk nyckel för kryptering." -#: ../libnm-core/crypto_nss.c:372 ../libnm-util/crypto_nss.c:369 +#: ../libnm-core/crypto_nss.c:318 ../libnm-util/crypto_nss.c:364 #, c-format msgid "Failed to set IV for encryption." msgstr "Misslyckades med att ställa in IV för kryptering." -#: ../libnm-core/crypto_nss.c:380 ../libnm-util/crypto_nss.c:377 +#: ../libnm-core/crypto_nss.c:326 ../libnm-util/crypto_nss.c:372 #, c-format msgid "Failed to initialize the encryption context." msgstr "Misslyckades med att initiera krypteringskontexten." -#: ../libnm-core/crypto_nss.c:388 ../libnm-util/crypto_nss.c:385 +#: ../libnm-core/crypto_nss.c:334 ../libnm-util/crypto_nss.c:380 #, c-format msgid "Failed to encrypt: %d." msgstr "Misslyckades med att kryptera: %d." -#: ../libnm-core/crypto_nss.c:396 ../libnm-util/crypto_nss.c:393 +#: ../libnm-core/crypto_nss.c:342 ../libnm-util/crypto_nss.c:388 #, c-format msgid "Unexpected amount of data after encrypting." msgstr "Oväntad mängd data efter kryptering." -#: ../libnm-core/crypto_nss.c:436 ../libnm-util/crypto_nss.c:433 +#: ../libnm-core/crypto_nss.c:385 ../libnm-util/crypto_nss.c:428 #, c-format msgid "Couldn't decode certificate: %d" msgstr "Kunde inte avkoda certifikat: %d" -#: ../libnm-core/crypto_nss.c:471 +#: ../libnm-core/crypto_nss.c:423 #, c-format msgid "Password must be UTF-8" msgstr "Lösenord mÃ¥ste vara i UTF-8" -#: ../libnm-core/crypto_nss.c:501 ../libnm-util/crypto_nss.c:496 +#: ../libnm-core/crypto_nss.c:453 ../libnm-util/crypto_nss.c:491 #, c-format msgid "Couldn't initialize PKCS#12 decoder: %d" msgstr "Kunde inte initiera PKCS#12-avkodare: %d" -#: ../libnm-core/crypto_nss.c:510 ../libnm-util/crypto_nss.c:505 +#: ../libnm-core/crypto_nss.c:462 ../libnm-util/crypto_nss.c:500 #, c-format msgid "Couldn't decode PKCS#12 file: %d" msgstr "Kunde inte avkoda PKCS#12-fil: %d" -#: ../libnm-core/crypto_nss.c:519 ../libnm-util/crypto_nss.c:514 +#: ../libnm-core/crypto_nss.c:471 ../libnm-util/crypto_nss.c:509 #, c-format msgid "Couldn't verify PKCS#12 file: %d" msgstr "Kunde inte verifiera PKCS#12-fil: %d" -#: ../libnm-core/crypto_nss.c:564 ../libnm-util/crypto_nss.c:558 +#: ../libnm-core/crypto_nss.c:522 ../libnm-util/crypto_nss.c:553 msgid "Could not generate random data." msgstr "Kunde inte generera slumpmässigt data." -#: ../libnm-core/nm-connection.c:247 +#: ../libnm-core/nm-connection.c:226 msgid "wrong type; should be a list of strings." msgstr "fel typ; borde vara en lista av strängar." -#: ../libnm-core/nm-connection.c:302 +#: ../libnm-core/nm-connection.c:281 msgid "unknown setting name" msgstr "okänt inställningsnamn" -#: ../libnm-core/nm-connection.c:738 +#: ../libnm-core/nm-connection.c:805 msgid "setting not found" msgstr "inställningen hittades inte" -#: ../libnm-core/nm-connection.c:803 +#: ../libnm-core/nm-connection.c:869 msgid "setting not allowed in slave connection" msgstr "inställningen finns inte i slavanslutningen" -#: ../libnm-core/nm-connection.c:814 +#: ../libnm-core/nm-connection.c:880 msgid "setting is required for non-slave connections" msgstr "inställning krävs för anslutningar som inte är slavar" -#: ../libnm-core/nm-connection.c:880 +#: ../libnm-core/nm-connection.c:946 msgid "Unexpected failure to verify the connection" msgstr "Oväntat misslyckande med att verifiera anslutningen" -#: ../libnm-core/nm-connection.c:911 +#: ../libnm-core/nm-connection.c:979 msgid "Unexpected failure to normalize the connection" msgstr "Oväntat misslyckande med att normalisera anslutningen" -#: ../libnm-core/nm-setting-8021x.c:577 ../libnm-util/nm-setting-8021x.c:596 +#: ../libnm-core/nm-connection.c:1480 ../libnm-core/nm-setting-8021x.c:2375 +#: ../libnm-core/nm-setting-8021x.c:2392 ../libnm-core/nm-setting-8021x.c:2423 +#: ../libnm-core/nm-setting-8021x.c:2440 ../libnm-core/nm-setting-8021x.c:2482 +#: ../libnm-core/nm-setting-8021x.c:2494 ../libnm-core/nm-setting-8021x.c:2512 +#: ../libnm-core/nm-setting-8021x.c:2524 ../libnm-core/nm-setting-8021x.c:2548 +#: ../libnm-core/nm-setting-8021x.c:2713 ../libnm-core/nm-setting-adsl.c:190 +#: ../libnm-core/nm-setting-bluetooth.c:121 +#: ../libnm-core/nm-setting-bluetooth.c:139 ../libnm-core/nm-setting-cdma.c:142 +#: ../libnm-core/nm-setting-connection.c:809 +#: ../libnm-core/nm-setting-connection.c:848 +#: ../libnm-core/nm-setting-connection.c:961 +#: ../libnm-core/nm-setting-ip-config.c:1844 +#: ../libnm-core/nm-setting-olpc-mesh.c:112 +#: ../libnm-core/nm-setting-pppoe.c:143 ../libnm-core/nm-setting-vpn.c:400 +#: ../libnm-core/nm-setting-wimax.c:117 +#: ../libnm-core/nm-setting-wireless-security.c:862 +#: ../libnm-core/nm-setting-wireless.c:693 ../libnm-util/nm-setting.c:1372 +#: ../libnm-util/nm-setting.c:1391 ../libnm-util/nm-setting.c:1409 +#: ../libnm-util/nm-setting-8021x.c:2326 ../libnm-util/nm-setting-8021x.c:2343 +#: ../libnm-util/nm-setting-8021x.c:2384 ../libnm-util/nm-setting-8021x.c:2401 +#: ../libnm-util/nm-setting-8021x.c:2453 ../libnm-util/nm-setting-8021x.c:2465 +#: ../libnm-util/nm-setting-8021x.c:2483 ../libnm-util/nm-setting-8021x.c:2495 +#: ../libnm-util/nm-setting-8021x.c:2519 ../libnm-util/nm-setting-8021x.c:2681 +#: ../libnm-util/nm-setting-adsl.c:210 ../libnm-util/nm-setting-bluetooth.c:143 +#: ../libnm-util/nm-setting-bluetooth.c:161 ../libnm-util/nm-setting-cdma.c:163 +#: ../libnm-util/nm-setting-connection.c:769 +#: ../libnm-util/nm-setting-connection.c:785 +#: ../libnm-util/nm-setting-connection.c:846 +#: ../libnm-util/nm-setting-ip4-config.c:852 +#: ../libnm-util/nm-setting-ip6-config.c:835 +#: ../libnm-util/nm-setting-ip6-config.c:898 +#: ../libnm-util/nm-setting-olpc-mesh.c:124 +#: ../libnm-util/nm-setting-pppoe.c:164 ../libnm-util/nm-setting-vpn.c:424 +#: ../libnm-util/nm-setting-wimax.c:139 +#: ../libnm-util/nm-setting-wireless-security.c:892 +#: ../libnm-util/nm-setting-wireless.c:752 +msgid "property is missing" +msgstr "egenskapen saknas" + +#: ../libnm-core/nm-keyfile-reader.c:141 +msgid "ignoring missing number" +msgstr "ignorerar saknad siffra" + +#: ../libnm-core/nm-keyfile-reader.c:150 +#, c-format +msgid "ignoring invalid number '%s'" +msgstr "ignorerar ogiltigt tal â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:170 +#, c-format +msgid "ignoring invalid %s address: %s" +msgstr "ignorerar ogiltig %s-adress: %s" + +#: ../libnm-core/nm-keyfile-reader.c:210 +#, c-format +msgid "ignoring invalid gateway '%s' for %s route" +msgstr "ignorerar ogiltig gateway â€%s†för rutten %s" + +#: ../libnm-core/nm-keyfile-reader.c:230 +#, c-format +msgid "ignoring invalid %s route: %s" +msgstr "ignorerar ogiltig %s-rutt: %s" + +#: ../libnm-core/nm-keyfile-reader.c:348 +#, c-format +msgid "unexpected character '%c' for address %s: '%s' (position %td)" +msgstr "oväntat tecken â€%c†för adressen %s: â€%s†(position %td)" + +#: ../libnm-core/nm-keyfile-reader.c:358 +#, c-format +msgid "unexpected character '%c' for %s: '%s' (position %td)" +msgstr "oväntat tecken â€%c†för %s: â€%s†(position %td)" + +#: ../libnm-core/nm-keyfile-reader.c:367 +#, c-format +msgid "unexpected character '%c' in prefix length for %s: '%s' (position %td)" +msgstr "oväntat tecken â€%c†i prefixlängden för %s: â€%s†(position %td)" + +#: ../libnm-core/nm-keyfile-reader.c:378 +#, c-format +msgid "garbage at the end of value %s: '%s'" +msgstr "skräp vid slutet av värdet %s: â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:384 +#, c-format +msgid "deprecated semicolon at the end of value %s: '%s'" +msgstr "förÃ¥ldrat semikolon vid slutet av värdet %s: â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:399 +#, c-format +msgid "invalid prefix length for %s '%s', defaulting to %d" +msgstr "ogiltig prefixlängd för %s â€%sâ€, Ã¥tergÃ¥r till standard %d" + +#: ../libnm-core/nm-keyfile-reader.c:406 +#, c-format +msgid "missing prefix length for %s '%s', defaulting to %d" +msgstr "saknar prefixlängd för %s â€%sâ€, Ã¥tergÃ¥r till standard %d" + +#: ../libnm-core/nm-keyfile-reader.c:509 +#, c-format +msgid "ignoring invalid DNS server IPv4 address '%s'" +msgstr "ignorerar ogiltig DNS-server IPv4-adress â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:548 +#, c-format +msgid "ignoring invalid DNS server IPv6 address '%s'" +msgstr "ignorerar ogiltig DNS-server IPv6-adress â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:611 ../libnm-core/nm-keyfile-reader.c:752 +#: ../libnm-core/nm-keyfile-reader.c:1423 +#, c-format +msgid "ignoring invalid byte element '%d' (not between 0 and 255 inclusive)" +msgstr "" +"ignorerar ogiltigt byteelement â€%d†(inte mellan 0 och 255 inkluderande)" + +#: ../libnm-core/nm-keyfile-reader.c:625 +msgid "ignoring invalid MAC address" +msgstr "ignorerar ogiltig MAC-adress" + +#: ../libnm-core/nm-keyfile-reader.c:741 +msgid "ignoring invalid binary property" +msgstr "ignorerar ogiltig binäregenskap" + +#: ../libnm-core/nm-keyfile-reader.c:784 +msgid "ignoring invalid SSID" +msgstr "ignorerar ogiltigt SSID" + +#: ../libnm-core/nm-keyfile-reader.c:800 +msgid "ignoring invalid raw password" +msgstr "ignorerar ogiltigt rÃ¥tt lösenord" + +#: ../libnm-core/nm-keyfile-reader.c:875 ../libnm-core/nm-keyfile-reader.c:1041 +#, c-format +msgid "certificate or key file '%s' does not exist" +msgstr "certifikatet eller nyckelfilen â€%s†finns inte" + +#: ../libnm-core/nm-keyfile-reader.c:880 +#, c-format +msgid "invalid key/cert value path \"%s\"" +msgstr "ogiltig nyckel-/certvärde-sökväg â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:918 +msgid "invalid key/cert value data:;base64, is not base64" +msgstr "ogiltig nyckel-/cert-värdedata:;base64, är inte base64" + +#: ../libnm-core/nm-keyfile-reader.c:931 +msgid "invalid key/cert value data:;base64,file://" +msgstr "ogiltig nyckel-/cert-värdedata:;base64,file://" + +#: ../libnm-core/nm-keyfile-reader.c:1078 +msgid "invalid key/cert value is not a valid blob" +msgstr "ogiltigt nyckel-/certvärde är inte en giltig blob" + +#: ../libnm-core/nm-keyfile-reader.c:1083 +msgid "invalid key/cert value" +msgstr "ogiltigt nyckel-/certvärde" + +#: ../libnm-core/nm-keyfile-reader.c:1130 +#, c-format +msgid "invalid parity value '%s'" +msgstr "ogiltigt paritetsvärde â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:1324 +#, c-format +msgid "error loading setting value: %s" +msgstr "fel vid inläsning av inställningsvärdet: %s" + +#: ../libnm-core/nm-keyfile-reader.c:1356 +#, c-format +msgid "invalid negative value (%i)" +msgstr "ogiltigt negativt värde (%i)" + +#: ../libnm-core/nm-keyfile-reader.c:1377 +#, c-format +msgid "invalid char value (%i)" +msgstr "ogiltigt teckenvärde (%i)" + +#: ../libnm-core/nm-keyfile-reader.c:1400 +#, c-format +msgid "invalid int64 value (%s)" +msgstr "ogiltigt int64-värde (%s)" + +#: ../libnm-core/nm-keyfile-reader.c:1459 +#, c-format +msgid "too large FLAGS property '%s' (%llu)" +msgstr "för stor FLAGS-egenskap â€%s†(%llu)" + +#: ../libnm-core/nm-keyfile-reader.c:1472 +#, c-format +msgid "unhandled setting property type '%s'" +msgstr "ohanterad inställning för egenskapstypen â€%sâ€" + +#: ../libnm-core/nm-keyfile-reader.c:1503 +#, c-format +msgid "invalid setting name '%s'" +msgstr "ogiltigt namn pÃ¥ inställningen â€%sâ€" + +#: ../libnm-core/nm-setting-8021x.c:412 +msgid "data missing" +msgstr "data saknas" + +#: ../libnm-core/nm-setting-8021x.c:444 +msgid "binary data missing" +msgstr "binär data saknas" + +#: ../libnm-core/nm-setting-8021x.c:461 +msgid "file:// URI not NUL terminated" +msgstr "file://-URI är inte NUL-terminerad" + +#: ../libnm-core/nm-setting-8021x.c:470 +msgid "file:// URI is empty" +msgstr "file://-URI är tom" + +#: ../libnm-core/nm-setting-8021x.c:478 +msgid "file:// URI is not valid UTF-8" +msgstr "file://-URI är inte giltig UTF-8" + +#: ../libnm-core/nm-setting-8021x.c:677 ../libnm-util/nm-setting-8021x.c:640 msgid "CA certificate must be in X.509 format" msgstr "CA-certifikat mÃ¥ste vara i X.509-format" -#: ../libnm-core/nm-setting-8021x.c:892 ../libnm-core/nm-setting-8021x.c:1156 -#: ../libnm-core/nm-setting-8021x.c:1476 ../libnm-util/nm-setting-8021x.c:914 -#: ../libnm-util/nm-setting-8021x.c:1177 ../libnm-util/nm-setting-8021x.c:1500 +#: ../libnm-core/nm-setting-8021x.c:992 ../libnm-core/nm-setting-8021x.c:1256 +#: ../libnm-core/nm-setting-8021x.c:1576 ../libnm-util/nm-setting-8021x.c:958 +#: ../libnm-util/nm-setting-8021x.c:1221 ../libnm-util/nm-setting-8021x.c:1544 msgid "invalid certificate format" msgstr "ogiltigt certifikatformat" -#: ../libnm-core/nm-setting-8021x.c:1758 ../libnm-util/nm-setting-8021x.c:1769 +#: ../libnm-core/nm-setting-8021x.c:1859 ../libnm-util/nm-setting-8021x.c:1813 msgid "invalid private key" msgstr "ogiltig privat nyckel" -#: ../libnm-core/nm-setting-8021x.c:2068 ../libnm-util/nm-setting-8021x.c:2080 +#: ../libnm-core/nm-setting-8021x.c:2171 ../libnm-util/nm-setting-8021x.c:2124 msgid "invalid phase2 private key" msgstr "ogiltig privat nyckel för phase2" -#: ../libnm-core/nm-setting-8021x.c:2270 ../libnm-core/nm-setting-8021x.c:2287 -#: ../libnm-core/nm-setting-8021x.c:2317 ../libnm-core/nm-setting-8021x.c:2334 -#: ../libnm-core/nm-setting-8021x.c:2375 ../libnm-core/nm-setting-8021x.c:2387 -#: ../libnm-core/nm-setting-8021x.c:2405 ../libnm-core/nm-setting-8021x.c:2417 -#: ../libnm-core/nm-setting-8021x.c:2441 ../libnm-core/nm-setting-8021x.c:2623 -#: ../libnm-core/nm-setting-adsl.c:188 -#: ../libnm-core/nm-setting-bluetooth.c:118 -#: ../libnm-core/nm-setting-bluetooth.c:136 -#: ../libnm-core/nm-setting-cdma.c:140 -#: ../libnm-core/nm-setting-connection.c:762 -#: ../libnm-core/nm-setting-connection.c:778 -#: ../libnm-core/nm-setting-connection.c:808 -#: ../libnm-core/nm-setting-ip4-config.c:880 -#: ../libnm-core/nm-setting-ip6-config.c:799 -#: ../libnm-core/nm-setting-ip6-config.c:863 -#: ../libnm-core/nm-setting-olpc-mesh.c:106 -#: ../libnm-core/nm-setting-pppoe.c:141 ../libnm-core/nm-setting-vpn.c:378 -#: ../libnm-core/nm-setting-wimax.c:115 -#: ../libnm-core/nm-setting-wireless-security.c:861 -#: ../libnm-core/nm-setting-wireless.c:692 ../libnm-core/nm-setting.c:1764 -#: ../libnm-util/nm-setting.c:1370 ../libnm-util/nm-setting.c:1389 -#: ../libnm-util/nm-setting.c:1407 ../libnm-util/nm-setting-8021x.c:2282 -#: ../libnm-util/nm-setting-8021x.c:2299 ../libnm-util/nm-setting-8021x.c:2340 -#: ../libnm-util/nm-setting-8021x.c:2357 ../libnm-util/nm-setting-8021x.c:2409 -#: ../libnm-util/nm-setting-8021x.c:2421 ../libnm-util/nm-setting-8021x.c:2439 -#: ../libnm-util/nm-setting-8021x.c:2451 ../libnm-util/nm-setting-8021x.c:2475 -#: ../libnm-util/nm-setting-8021x.c:2653 ../libnm-util/nm-setting-adsl.c:208 -#: ../libnm-util/nm-setting-bluetooth.c:140 -#: ../libnm-util/nm-setting-bluetooth.c:158 -#: ../libnm-util/nm-setting-cdma.c:161 -#: ../libnm-util/nm-setting-connection.c:767 -#: ../libnm-util/nm-setting-connection.c:783 -#: ../libnm-util/nm-setting-connection.c:844 -#: ../libnm-util/nm-setting-ip4-config.c:828 -#: ../libnm-util/nm-setting-ip6-config.c:809 -#: ../libnm-util/nm-setting-ip6-config.c:873 -#: ../libnm-util/nm-setting-olpc-mesh.c:122 -#: ../libnm-util/nm-setting-pppoe.c:162 ../libnm-util/nm-setting-vpn.c:402 -#: ../libnm-util/nm-setting-wimax.c:137 -#: ../libnm-util/nm-setting-wireless-security.c:891 -#: ../libnm-util/nm-setting-wireless.c:750 -msgid "property is missing" -msgstr "egenskapen saknas" - -#: ../libnm-core/nm-setting-8021x.c:2277 ../libnm-core/nm-setting-8021x.c:2294 -#: ../libnm-core/nm-setting-8021x.c:2324 ../libnm-core/nm-setting-8021x.c:2341 -#: ../libnm-core/nm-setting-8021x.c:2381 ../libnm-core/nm-setting-8021x.c:2393 -#: ../libnm-core/nm-setting-8021x.c:2411 ../libnm-core/nm-setting-8021x.c:2423 -#: ../libnm-core/nm-setting-8021x.c:2448 ../libnm-core/nm-setting-adsl.c:195 -#: ../libnm-core/nm-setting-adsl.c:204 ../libnm-core/nm-setting-cdma.c:156 -#: ../libnm-core/nm-setting-cdma.c:165 -#: ../libnm-core/nm-setting-connection.c:769 -#: ../libnm-core/nm-setting-connection.c:819 -#: ../libnm-core/nm-setting-gsm.c:224 ../libnm-core/nm-setting-gsm.c:281 -#: ../libnm-core/nm-setting-gsm.c:290 -#: ../libnm-core/nm-setting-ip4-config.c:945 -#: ../libnm-core/nm-setting-ip4-config.c:954 -#: ../libnm-core/nm-setting-pppoe.c:148 ../libnm-core/nm-setting-pppoe.c:157 -#: ../libnm-core/nm-setting-vpn.c:387 ../libnm-core/nm-setting-vpn.c:397 -#: ../libnm-core/nm-setting-wimax.c:124 -#: ../libnm-core/nm-setting-wireless-security.c:891 -#: ../libnm-core/nm-setting-wireless-security.c:899 -#: ../libnm-core/nm-setting-wireless-security.c:923 -#: ../libnm-util/nm-setting-8021x.c:2289 ../libnm-util/nm-setting-8021x.c:2306 -#: ../libnm-util/nm-setting-8021x.c:2347 ../libnm-util/nm-setting-8021x.c:2364 -#: ../libnm-util/nm-setting-8021x.c:2415 ../libnm-util/nm-setting-8021x.c:2427 -#: ../libnm-util/nm-setting-8021x.c:2445 ../libnm-util/nm-setting-8021x.c:2457 -#: ../libnm-util/nm-setting-8021x.c:2482 ../libnm-util/nm-setting-adsl.c:215 -#: ../libnm-util/nm-setting-adsl.c:224 ../libnm-util/nm-setting-cdma.c:177 -#: ../libnm-util/nm-setting-cdma.c:186 -#: ../libnm-util/nm-setting-connection.c:774 -#: ../libnm-util/nm-setting-connection.c:851 -#: ../libnm-util/nm-setting-gsm.c:281 ../libnm-util/nm-setting-gsm.c:338 -#: ../libnm-util/nm-setting-gsm.c:347 -#: ../libnm-util/nm-setting-ip4-config.c:893 -#: ../libnm-util/nm-setting-ip4-config.c:902 -#: ../libnm-util/nm-setting-pppoe.c:169 ../libnm-util/nm-setting-pppoe.c:178 -#: ../libnm-util/nm-setting-vpn.c:411 ../libnm-util/nm-setting-vpn.c:421 -#: ../libnm-util/nm-setting-wimax.c:146 -#: ../libnm-util/nm-setting-wireless-security.c:921 -#: ../libnm-util/nm-setting-wireless-security.c:929 -#: ../libnm-util/nm-setting-wireless-security.c:953 +#: ../libnm-core/nm-setting-8021x.c:2382 ../libnm-core/nm-setting-8021x.c:2399 +#: ../libnm-core/nm-setting-8021x.c:2430 ../libnm-core/nm-setting-8021x.c:2447 +#: ../libnm-core/nm-setting-8021x.c:2488 ../libnm-core/nm-setting-8021x.c:2500 +#: ../libnm-core/nm-setting-8021x.c:2518 ../libnm-core/nm-setting-8021x.c:2530 +#: ../libnm-core/nm-setting-8021x.c:2555 ../libnm-core/nm-setting-adsl.c:197 +#: ../libnm-core/nm-setting-cdma.c:149 ../libnm-core/nm-setting-cdma.c:158 +#: ../libnm-core/nm-setting-connection.c:816 +#: ../libnm-core/nm-setting-connection.c:859 ../libnm-core/nm-setting-gsm.c:226 +#: ../libnm-core/nm-setting-gsm.c:283 ../libnm-core/nm-setting-ip-config.c:1851 +#: ../libnm-core/nm-setting-ip4-config.c:178 +#: ../libnm-core/nm-setting-pppoe.c:150 ../libnm-core/nm-setting-pppoe.c:159 +#: ../libnm-core/nm-setting-vpn.c:409 ../libnm-core/nm-setting-vpn.c:419 +#: ../libnm-core/nm-setting-wimax.c:126 +#: ../libnm-core/nm-setting-wireless-security.c:892 +#: ../libnm-core/nm-setting-wireless-security.c:916 +#: ../libnm-util/nm-setting-8021x.c:2333 ../libnm-util/nm-setting-8021x.c:2350 +#: ../libnm-util/nm-setting-8021x.c:2391 ../libnm-util/nm-setting-8021x.c:2408 +#: ../libnm-util/nm-setting-8021x.c:2459 ../libnm-util/nm-setting-8021x.c:2471 +#: ../libnm-util/nm-setting-8021x.c:2489 ../libnm-util/nm-setting-8021x.c:2501 +#: ../libnm-util/nm-setting-8021x.c:2526 ../libnm-util/nm-setting-adsl.c:217 +#: ../libnm-util/nm-setting-cdma.c:170 ../libnm-util/nm-setting-cdma.c:179 +#: ../libnm-util/nm-setting-connection.c:776 +#: ../libnm-util/nm-setting-connection.c:853 ../libnm-util/nm-setting-gsm.c:283 +#: ../libnm-util/nm-setting-gsm.c:340 ../libnm-util/nm-setting-ip4-config.c:917 +#: ../libnm-util/nm-setting-ip4-config.c:926 +#: ../libnm-util/nm-setting-pppoe.c:171 ../libnm-util/nm-setting-pppoe.c:180 +#: ../libnm-util/nm-setting-vpn.c:433 ../libnm-util/nm-setting-vpn.c:443 +#: ../libnm-util/nm-setting-wimax.c:148 +#: ../libnm-util/nm-setting-wireless-security.c:922 +#: ../libnm-util/nm-setting-wireless-security.c:946 msgid "property is empty" msgstr "egenskap är tom" -#: ../libnm-core/nm-setting-8021x.c:2306 ../libnm-core/nm-setting-8021x.c:2353 -#: ../libnm-util/nm-setting-8021x.c:2317 ../libnm-util/nm-setting-8021x.c:2329 -#: ../libnm-util/nm-setting-8021x.c:2375 ../libnm-util/nm-setting-8021x.c:2387 +#: ../libnm-core/nm-setting-8021x.c:2412 ../libnm-core/nm-setting-8021x.c:2460 +#: ../libnm-util/nm-setting-8021x.c:2361 ../libnm-util/nm-setting-8021x.c:2373 +#: ../libnm-util/nm-setting-8021x.c:2419 ../libnm-util/nm-setting-8021x.c:2431 #, c-format msgid "has to match '%s' property for PKCS#12" msgstr "mÃ¥ste matcha â€%sâ€-egenskapen för PKCS#12" -#: ../libnm-core/nm-setting-8021x.c:2598 ../libnm-core/nm-setting-8021x.c:2632 -#: ../libnm-core/nm-setting-bluetooth.c:127 -#: ../libnm-core/nm-setting-infiniband.c:191 -#: ../libnm-core/nm-setting-infiniband.c:206 -#: ../libnm-core/nm-setting-ip4-config.c:936 -#: ../libnm-core/nm-setting-ip6-config.c:854 -#: ../libnm-core/nm-setting-olpc-mesh.c:135 -#: ../libnm-core/nm-setting-wimax.c:133 ../libnm-core/nm-setting-wired.c:618 -#: ../libnm-core/nm-setting-wired.c:628 -#: ../libnm-core/nm-setting-wireless-security.c:942 -#: ../libnm-core/nm-setting-wireless-security.c:951 -#: ../libnm-core/nm-setting-wireless-security.c:959 -#: ../libnm-core/nm-setting-wireless-security.c:967 -#: ../libnm-core/nm-setting-wireless-security.c:975 -#: ../libnm-core/nm-setting-wireless-security.c:984 -#: ../libnm-core/nm-setting-wireless-security.c:993 -#: ../libnm-core/nm-setting-wireless-security.c:1002 -#: ../libnm-core/nm-setting-wireless-security.c:1038 -#: ../libnm-core/nm-setting-wireless-security.c:1048 -#: ../libnm-core/nm-setting-wireless.c:753 -#: ../libnm-core/nm-setting-wireless.c:762 -#: ../libnm-core/nm-setting-wireless.c:771 ../libnm-util/nm-setting.c:1380 -#: ../libnm-util/nm-setting.c:1398 ../libnm-util/nm-setting.c:1417 -#: ../libnm-util/nm-setting-8021x.c:2628 ../libnm-util/nm-setting-8021x.c:2662 -#: ../libnm-util/nm-setting-bluetooth.c:149 -#: ../libnm-util/nm-setting-infiniband.c:204 -#: ../libnm-util/nm-setting-infiniband.c:220 -#: ../libnm-util/nm-setting-ip4-config.c:884 -#: ../libnm-util/nm-setting-ip6-config.c:864 -#: ../libnm-util/nm-setting-olpc-mesh.c:150 -#: ../libnm-util/nm-setting-wimax.c:155 ../libnm-util/nm-setting-wired.c:660 -#: ../libnm-util/nm-setting-wired.c:669 -#: ../libnm-util/nm-setting-wireless-security.c:972 -#: ../libnm-util/nm-setting-wireless-security.c:981 -#: ../libnm-util/nm-setting-wireless-security.c:989 -#: ../libnm-util/nm-setting-wireless-security.c:997 -#: ../libnm-util/nm-setting-wireless-security.c:1005 -#: ../libnm-util/nm-setting-wireless-security.c:1014 -#: ../libnm-util/nm-setting-wireless-security.c:1023 -#: ../libnm-util/nm-setting-wireless-security.c:1032 -#: ../libnm-util/nm-setting-wireless-security.c:1068 -#: ../libnm-util/nm-setting-wireless-security.c:1078 -#: ../libnm-util/nm-setting-wireless.c:810 -#: ../libnm-util/nm-setting-wireless.c:819 -#: ../libnm-util/nm-setting-wireless.c:828 +#: ../libnm-core/nm-setting-8021x.c:2687 +#, c-format +msgid "certificate is invalid: %s" +msgstr "certifikatet är ogiltigt: %s" + +#: ../libnm-core/nm-setting-8021x.c:2722 +#: ../libnm-core/nm-setting-bluetooth.c:130 +#: ../libnm-core/nm-setting-infiniband.c:193 +#: ../libnm-core/nm-setting-infiniband.c:208 +#: ../libnm-core/nm-setting-ip4-config.c:169 +#: ../libnm-core/nm-setting-ip6-config.c:165 +#: ../libnm-core/nm-setting-olpc-mesh.c:141 +#: ../libnm-core/nm-setting-wimax.c:135 ../libnm-core/nm-setting-wired.c:660 +#: ../libnm-core/nm-setting-wired.c:670 +#: ../libnm-core/nm-setting-wireless-security.c:935 +#: ../libnm-core/nm-setting-wireless-security.c:944 +#: ../libnm-core/nm-setting-wireless-security.c:953 +#: ../libnm-core/nm-setting-wireless-security.c:989 +#: ../libnm-core/nm-setting-wireless-security.c:999 +#: ../libnm-core/nm-setting-wireless.c:754 +#: ../libnm-core/nm-setting-wireless.c:763 +#: ../libnm-core/nm-setting-wireless.c:772 ../libnm-util/nm-setting.c:1382 +#: ../libnm-util/nm-setting.c:1400 ../libnm-util/nm-setting.c:1419 +#: ../libnm-util/nm-setting-8021x.c:2656 ../libnm-util/nm-setting-8021x.c:2690 +#: ../libnm-util/nm-setting-bluetooth.c:152 +#: ../libnm-util/nm-setting-infiniband.c:206 +#: ../libnm-util/nm-setting-infiniband.c:222 +#: ../libnm-util/nm-setting-ip4-config.c:908 +#: ../libnm-util/nm-setting-ip6-config.c:889 +#: ../libnm-util/nm-setting-olpc-mesh.c:152 +#: ../libnm-util/nm-setting-wimax.c:157 ../libnm-util/nm-setting-wired.c:659 +#: ../libnm-util/nm-setting-wired.c:668 +#: ../libnm-util/nm-setting-wireless-security.c:965 +#: ../libnm-util/nm-setting-wireless-security.c:974 +#: ../libnm-util/nm-setting-wireless-security.c:983 +#: ../libnm-util/nm-setting-wireless-security.c:1019 +#: ../libnm-util/nm-setting-wireless-security.c:1029 +#: ../libnm-util/nm-setting-wireless.c:812 +#: ../libnm-util/nm-setting-wireless.c:821 +#: ../libnm-util/nm-setting-wireless.c:830 msgid "property is invalid" msgstr "ogiltig egenskap" -#: ../libnm-core/nm-setting-8021x.c:2657 ../libnm-core/nm-setting-8021x.c:2667 -#: ../libnm-core/nm-setting-8021x.c:2677 ../libnm-core/nm-setting-8021x.c:2687 -#: ../libnm-core/nm-setting-8021x.c:2697 ../libnm-core/nm-setting-adsl.c:216 -#: ../libnm-core/nm-setting-adsl.c:228 -#: ../libnm-core/nm-setting-bluetooth.c:144 -#: ../libnm-core/nm-setting-wireless-security.c:870 -#: ../libnm-util/nm-setting-8021x.c:2687 ../libnm-util/nm-setting-8021x.c:2697 -#: ../libnm-util/nm-setting-8021x.c:2707 ../libnm-util/nm-setting-8021x.c:2717 -#: ../libnm-util/nm-setting-8021x.c:2727 ../libnm-util/nm-setting-adsl.c:236 -#: ../libnm-util/nm-setting-adsl.c:248 -#: ../libnm-util/nm-setting-bluetooth.c:166 -#: ../libnm-util/nm-setting-wireless-security.c:900 +#: ../libnm-core/nm-setting-8021x.c:2747 ../libnm-core/nm-setting-8021x.c:2757 +#: ../libnm-core/nm-setting-8021x.c:2767 ../libnm-core/nm-setting-8021x.c:2777 +#: ../libnm-core/nm-setting-8021x.c:2787 ../libnm-core/nm-setting-adsl.c:209 +#: ../libnm-core/nm-setting-adsl.c:221 ../libnm-core/nm-setting-bluetooth.c:147 +#: ../libnm-core/nm-setting-wireless-security.c:871 +#: ../libnm-util/nm-setting-8021x.c:2715 ../libnm-util/nm-setting-8021x.c:2725 +#: ../libnm-util/nm-setting-8021x.c:2735 ../libnm-util/nm-setting-8021x.c:2745 +#: ../libnm-util/nm-setting-8021x.c:2755 ../libnm-util/nm-setting-adsl.c:229 +#: ../libnm-util/nm-setting-adsl.c:241 ../libnm-util/nm-setting-bluetooth.c:169 +#: ../libnm-util/nm-setting-wireless-security.c:901 #, c-format msgid "'%s' is not a valid value for the property" msgstr "Fel: â€%s†är inte ett giltigt värde för egenskapen" -#: ../libnm-core/nm-setting-bluetooth.c:166 +#: ../libnm-core/nm-setting-bluetooth.c:169 #, c-format msgid "'%s' connection requires '%s' or '%s' setting" msgstr "â€%sâ€-anslutning kräver â€%s†eller â€%sâ€-inställning" -#: ../libnm-core/nm-setting-bond.c:458 ../libnm-util/nm-setting-bond.c:501 +#: ../libnm-core/nm-setting-bond.c:455 ../libnm-util/nm-setting-bond.c:503 #, c-format msgid "invalid option '%s' or its value '%s'" msgstr "ogiltigt alternativ â€%s†eller dess värde â€%sâ€" -#: ../libnm-core/nm-setting-bond.c:477 ../libnm-util/nm-setting-bond.c:520 +#: ../libnm-core/nm-setting-bond.c:474 ../libnm-util/nm-setting-bond.c:522 #, c-format msgid "only one of '%s' and '%s' can be set" msgstr "endast en av â€%s†och â€%s†kan sättas" -#: ../libnm-core/nm-setting-bond.c:488 ../libnm-util/nm-setting-bond.c:531 +#: ../libnm-core/nm-setting-bond.c:486 ../libnm-util/nm-setting-bond.c:533 #, c-format msgid "mandatory option '%s' is missing" msgstr "obligatoriskt värde â€%s†saknas" -#: ../libnm-core/nm-setting-bond.c:497 ../libnm-util/nm-setting-bond.c:540 +#: ../libnm-core/nm-setting-bond.c:496 ../libnm-util/nm-setting-bond.c:542 #, c-format msgid "'%s' is not a valid value for '%s'" -msgstr "â€%s†är inte ett giltigt värde för â€%sâ€." +msgstr "â€%s†är inte ett giltigt värde för â€%sâ€" -#: ../libnm-core/nm-setting-bond.c:510 ../libnm-util/nm-setting-bond.c:553 +#: ../libnm-core/nm-setting-bond.c:510 ../libnm-util/nm-setting-bond.c:555 #, c-format msgid "'%s=%s' is incompatible with '%s > 0'" msgstr "â€%s=%s†är inte kompatibel med â€%s†> 0" -#: ../libnm-core/nm-setting-bond.c:523 ../libnm-util/nm-setting-bond.c:566 +#: ../libnm-core/nm-setting-bond.c:523 ../libnm-util/nm-setting-bond.c:568 #, c-format msgid "'%s' is not a valid interface name for '%s' option" -msgstr "â€%s†är inte ett giltigt gränssnittssnamn för flaggan â€%sâ€" +msgstr "â€%s†är inte ett giltigt gränssnittsnamn för flaggan â€%sâ€" -#: ../libnm-core/nm-setting-bond.c:533 ../libnm-util/nm-setting-bond.c:576 +#: ../libnm-core/nm-setting-bond.c:533 ../libnm-util/nm-setting-bond.c:578 #, c-format msgid "'%s' option is only valid for '%s=%s'" msgstr "â€%sâ€-alternativet är endast giltigt dÃ¥ â€%s=%sâ€" -#: ../libnm-core/nm-setting-bond.c:546 ../libnm-util/nm-setting-bond.c:589 +#: ../libnm-core/nm-setting-bond.c:546 ../libnm-util/nm-setting-bond.c:591 #, c-format msgid "'%s=%s' is not a valid configuration for '%s'" msgstr "â€%s=%s†är inte en giltig konfiguration â€%sâ€" #: ../libnm-core/nm-setting-bond.c:559 ../libnm-core/nm-setting-bond.c:568 #: ../libnm-core/nm-setting-bond.c:588 ../libnm-core/nm-setting-bond.c:624 -#: ../libnm-util/nm-setting-bond.c:602 ../libnm-util/nm-setting-bond.c:611 -#: ../libnm-util/nm-setting-bond.c:631 ../libnm-util/nm-setting-bond.c:667 +#: ../libnm-util/nm-setting-bond.c:604 ../libnm-util/nm-setting-bond.c:613 +#: ../libnm-util/nm-setting-bond.c:633 ../libnm-util/nm-setting-bond.c:669 #, c-format msgid "'%s' option requires '%s' option to be set" msgstr "â€%sâ€-alternativet kräver att â€%sâ€-alternativet är satt" -#: ../libnm-core/nm-setting-bond.c:599 ../libnm-util/nm-setting-bond.c:642 +#: ../libnm-core/nm-setting-bond.c:599 ../libnm-util/nm-setting-bond.c:644 #, c-format msgid "'%s' option is empty" msgstr "â€%sâ€-alternativet är tomt" -#: ../libnm-core/nm-setting-bond.c:611 ../libnm-util/nm-setting-bond.c:654 +#: ../libnm-core/nm-setting-bond.c:611 ../libnm-util/nm-setting-bond.c:656 #, c-format msgid "'%s' is not a valid IPv4 address for '%s' option" -msgstr "â€%s†är inte en giltig IPv4-adress för flaggan â€%sâ€." +msgstr "â€%s†är inte en giltig IPv4-adress för flaggan â€%sâ€" -#: ../libnm-core/nm-setting-bond.c:638 ../libnm-util/nm-setting-bond.c:681 +#: ../libnm-core/nm-setting-bond.c:638 ../libnm-util/nm-setting-bond.c:683 #, c-format msgid "'%s' option is only valid with mode '%s'" msgstr "â€%sâ€-alternativet är endast giltigt med läget â€%sâ€" -#: ../libnm-core/nm-setting-bridge-port.c:121 -#: ../libnm-core/nm-setting-bridge-port.c:133 -#: ../libnm-util/nm-setting-bridge-port.c:153 -#: ../libnm-util/nm-setting-bridge-port.c:165 +#: ../libnm-core/nm-setting-bond.c:653 +#, c-format +msgid "'%s' option should be string" +msgstr "â€%sâ€-alternativet bör vara en sträng" + +#: ../libnm-core/nm-setting-bridge-port.c:125 +#: ../libnm-core/nm-setting-bridge-port.c:137 +#: ../libnm-util/nm-setting-bridge-port.c:155 +#: ../libnm-util/nm-setting-bridge-port.c:167 #, c-format msgid "'%d' is not a valid value for the property (should be <= %d)" msgstr "â€%d†är inte ett giltigt värde för egenskapen (ska vara <=%d)" -#: ../libnm-core/nm-setting-bridge-port.c:158 -#: ../libnm-core/nm-setting-team-port.c:101 +#: ../libnm-core/nm-setting-bridge-port.c:155 +#: ../libnm-core/nm-setting-team-port.c:98 +#, c-format +msgid "missing setting" +msgstr "saknar inställning" + +#: ../libnm-core/nm-setting-bridge-port.c:166 +#: ../libnm-core/nm-setting-team-port.c:109 #, c-format msgid "" "A connection with a '%s' setting must have the slave-type set to '%s'. " @@ -6717,124 +7477,132 @@ msgstr "" "En anslutning med â€%sâ€-inställning mÃ¥ste ha slavtypen satt till â€%sâ€. " "Istället är den â€%sâ€" -#: ../libnm-core/nm-setting-bridge.c:204 ../libnm-util/nm-setting-bridge.c:268 +#: ../libnm-core/nm-setting-bridge.c:210 ../libnm-util/nm-setting-bridge.c:270 #, c-format msgid "value '%d' is out of range <%d-%d>" msgstr "värdet â€%d†är utanför intervallet <%d-%d>" -#: ../libnm-core/nm-setting-bridge.c:221 ../libnm-core/nm-setting-wired.c:593 -#: ../libnm-core/nm-setting-wired.c:652 ../libnm-util/nm-setting-bridge.c:285 -#: ../libnm-util/nm-setting-wired.c:635 ../libnm-util/nm-setting-wired.c:693 +#: ../libnm-core/nm-setting-bridge.c:227 ../libnm-core/nm-setting-wired.c:634 +#: ../libnm-core/nm-setting-wired.c:694 ../libnm-core/nm-setting-wired.c:722 +#: ../libnm-util/nm-setting-bridge.c:287 ../libnm-util/nm-setting-wired.c:634 +#: ../libnm-util/nm-setting-wired.c:692 msgid "is not a valid MAC address" msgstr "är inte en giltigt MAC-adress" -#: ../libnm-core/nm-setting-cdma.c:147 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "egenskap är tom'" - -#: ../libnm-core/nm-setting-connection.c:741 +#: ../libnm-core/nm-setting-connection.c:788 #, c-format msgid "setting required for connection of type '%s'" msgstr "inställning krävs för anslutning av typen â€%sâ€" -#: ../libnm-core/nm-setting-connection.c:829 +#: ../libnm-core/nm-setting-connection.c:869 #, c-format msgid "connection type '%s' is not valid" msgstr "anslutningstypen â€%s†är inte giltig" -#: ../libnm-core/nm-setting-connection.c:864 -#: ../libnm-util/nm-setting-connection.c:876 +#: ../libnm-core/nm-setting-connection.c:904 +#: ../libnm-util/nm-setting-connection.c:878 #, c-format msgid "Unknown slave type '%s'" msgstr "Okänd slavtyp â€%sâ€" -#: ../libnm-core/nm-setting-connection.c:874 -#: ../libnm-util/nm-setting-connection.c:886 -msgid "Slave connections need a valid '" -msgstr "Slavanslutningar behöver en giltig" +#: ../libnm-core/nm-setting-connection.c:914 +#: ../libnm-util/nm-setting-connection.c:888 +#, c-format +msgid "Slave connections need a valid '%s' property" +msgstr "Slavanslutningar behöver en giltig â€%sâ€-egenskap" + +#: ../libnm-core/nm-setting-connection.c:935 +#: ../libnm-util/nm-setting-connection.c:898 +#, c-format +msgid "Cannot set '%s' without '%s'" +msgstr "Kan inte sätta â€%s†utan â€%sâ€" -#: ../libnm-core/nm-setting-connection.c:895 -#: ../libnm-util/nm-setting-connection.c:895 -msgid "Cannot set '" -msgstr "kan inte sätta" +#: ../libnm-core/nm-setting-connection.c:949 +#, c-format +msgid "metered value %d is not valid" +msgstr "mätvärdet %d är inte giltigt" -#: ../libnm-core/nm-setting-connection.c:908 +#: ../libnm-core/nm-setting-connection.c:970 #, c-format msgid "property type should be set to '%s'" msgstr "egenskapstypen borde vara satt till â€%sâ€" -#: ../libnm-core/nm-setting-connection.c:923 +#: ../libnm-core/nm-setting-connection.c:985 #, c-format msgid "slave-type '%s' requires a '%s' setting in the connection" msgstr "slavtypen â€%s†kräver en â€%sâ€-inställning i anslutningen" -#: ../libnm-core/nm-setting-connection.c:933 +#: ../libnm-core/nm-setting-connection.c:995 #, c-format -msgid "Detect a slave connection with '" -msgstr "Upptäck en slavanslutning med '" +msgid "" +"Detect a slave connection with '%s' set and a port type '%s'. '%s' should be " +"set to '%s'" +msgstr "" +"Upptäck en slavanslutning med â€%s†satt och en porttyp â€%sâ€. â€%s†bör sättas " +"till â€%sâ€" -#: ../libnm-core/nm-setting-dcb.c:521 ../libnm-util/nm-setting-dcb.c:593 +#: ../libnm-core/nm-setting-dcb.c:523 ../libnm-util/nm-setting-dcb.c:595 msgid "flags invalid" msgstr "ogiltiga flaggor" -#: ../libnm-core/nm-setting-dcb.c:530 ../libnm-util/nm-setting-dcb.c:602 +#: ../libnm-core/nm-setting-dcb.c:532 ../libnm-util/nm-setting-dcb.c:604 msgid "flags invalid - disabled" msgstr "ogiltiga flaggor - inaktiverad" -#: ../libnm-core/nm-setting-dcb.c:556 ../libnm-core/nm-setting-dcb.c:605 -#: ../libnm-util/nm-setting-dcb.c:628 ../libnm-util/nm-setting-dcb.c:677 +#: ../libnm-core/nm-setting-dcb.c:558 ../libnm-core/nm-setting-dcb.c:607 +#: ../libnm-util/nm-setting-dcb.c:630 ../libnm-util/nm-setting-dcb.c:679 msgid "property invalid (not enabled)" msgstr "egenskap ogiltig (inaktiverad)" -#: ../libnm-core/nm-setting-dcb.c:565 ../libnm-util/nm-setting-dcb.c:637 +#: ../libnm-core/nm-setting-dcb.c:567 ../libnm-util/nm-setting-dcb.c:639 msgid "element invalid" msgstr "ogiltigt element" -#: ../libnm-core/nm-setting-dcb.c:580 ../libnm-util/nm-setting-dcb.c:652 +#: ../libnm-core/nm-setting-dcb.c:582 ../libnm-util/nm-setting-dcb.c:654 msgid "sum not 100%" msgstr "summan inte 100%" -#: ../libnm-core/nm-setting-dcb.c:614 ../libnm-core/nm-setting-dcb.c:646 -#: ../libnm-util/nm-setting-dcb.c:686 ../libnm-util/nm-setting-dcb.c:718 +#: ../libnm-core/nm-setting-dcb.c:616 ../libnm-core/nm-setting-dcb.c:648 +#: ../libnm-util/nm-setting-dcb.c:688 ../libnm-util/nm-setting-dcb.c:720 msgid "property invalid" msgstr "egenskap ogiltig" -#: ../libnm-core/nm-setting-dcb.c:636 ../libnm-util/nm-setting-dcb.c:708 +#: ../libnm-core/nm-setting-dcb.c:638 ../libnm-util/nm-setting-dcb.c:710 msgid "property missing" msgstr "egenskap saknas" -#: ../libnm-core/nm-setting-gsm.c:237 ../libnm-util/nm-setting-gsm.c:294 +#: ../libnm-core/nm-setting-gsm.c:239 ../libnm-util/nm-setting-gsm.c:296 #, c-format msgid "property value '%s' is empty or too long (>64)" msgstr "egenskapsvärde â€%s†är tomt eller för lÃ¥ngt (>64)" -#: ../libnm-core/nm-setting-gsm.c:269 ../libnm-util/nm-setting-gsm.c:326 +#: ../libnm-core/nm-setting-gsm.c:271 ../libnm-util/nm-setting-gsm.c:328 #, c-format msgid "'%s' contains invalid char(s) (use [A-Za-z._-])" msgstr "â€%s†innehÃ¥ller ogiltig(t/a) tecken (använd [A-Za-z._-])" -#: ../libnm-core/nm-setting-gsm.c:304 ../libnm-util/nm-setting-gsm.c:361 +#: ../libnm-core/nm-setting-gsm.c:297 ../libnm-util/nm-setting-gsm.c:354 #, c-format msgid "'%s' length is invalid (should be 5 or 6 digits)" msgstr "â€%sâ€-längden är ogiltig (ska vara 5 eller 6 siffror)" -#: ../libnm-core/nm-setting-infiniband.c:216 -#: ../libnm-util/nm-setting-infiniband.c:230 +#: ../libnm-core/nm-setting-infiniband.c:218 +#: ../libnm-util/nm-setting-infiniband.c:232 msgid "not a valid interface name" msgstr "ogiltigt gränssnittsnamn" -#: ../libnm-core/nm-setting-infiniband.c:224 -#: ../libnm-util/nm-setting-infiniband.c:238 +#: ../libnm-core/nm-setting-infiniband.c:226 +#: ../libnm-util/nm-setting-infiniband.c:240 msgid "Must specify a P_Key if specifying parent" -msgstr "MÃ¥ste ange en P_key om förälder anges" +msgstr "MÃ¥ste ange en P_key om överordnad anges" -#: ../libnm-core/nm-setting-infiniband.c:234 -#: ../libnm-util/nm-setting-infiniband.c:248 +#: ../libnm-core/nm-setting-infiniband.c:236 +#: ../libnm-util/nm-setting-infiniband.c:250 msgid "InfiniBand P_Key connection did not specify parent interface name" -msgstr "IfiniBand P_Key-anslutning angav inte ett föräldragränssnittnamn" +msgstr "InfiniBand P_Key-anslutning angav inte ett överordnat gränssnittsnamn" -#: ../libnm-core/nm-setting-infiniband.c:270 -#: ../libnm-util/nm-setting-infiniband.c:284 +#: ../libnm-core/nm-setting-infiniband.c:272 +#: ../libnm-util/nm-setting-infiniband.c:286 #, c-format msgid "" "interface name of software infiniband device must be '%s' or unset (instead " @@ -6843,247 +7611,285 @@ msgstr "" "gränssnittsnamnet pÃ¥ infiniband-mjukvaruenheten mÃ¥ste vara â€%s†eller inte " "sättas (istället är den â€%sâ€)" -#: ../libnm-core/nm-setting-infiniband.c:285 +#: ../libnm-core/nm-setting-infiniband.c:287 #, c-format msgid "mtu for transport mode '%s' can be at most %d but it is %d" msgstr "mtu för transportläge â€%s†kan som mest vara %d men är %d" -#: ../libnm-core/nm-setting-ip4-config.c:890 -#: ../libnm-core/nm-setting-ip6-config.c:809 -#: ../libnm-util/nm-setting-ip4-config.c:838 -#: ../libnm-util/nm-setting-ip6-config.c:819 +#: ../libnm-core/nm-setting-ip-config.c:77 #, c-format -msgid "this property cannot be empty for '%s=%s'" -msgstr "denna egenskap kan inte vara tom för â€%s=%sâ€" +msgid "Missing IPv4 address" +msgstr "Saknar IPv4-adress" -#: ../libnm-core/nm-setting-ip4-config.c:902 -#: ../libnm-core/nm-setting-ip4-config.c:912 -#: ../libnm-core/nm-setting-ip4-config.c:924 -#: ../libnm-core/nm-setting-ip6-config.c:822 -#: ../libnm-core/nm-setting-ip6-config.c:832 -#: ../libnm-core/nm-setting-ip6-config.c:842 -#: ../libnm-util/nm-setting-ip4-config.c:850 -#: ../libnm-util/nm-setting-ip4-config.c:860 -#: ../libnm-util/nm-setting-ip4-config.c:872 -#: ../libnm-util/nm-setting-ip6-config.c:832 -#: ../libnm-util/nm-setting-ip6-config.c:842 -#: ../libnm-util/nm-setting-ip6-config.c:852 +#: ../libnm-core/nm-setting-ip-config.c:77 #, c-format -msgid "this property is not allowed for '%s=%s'" -msgstr "denna egenskap är inte tillÃ¥ten för â€%s=%sâ€" +msgid "Missing IPv6 address" +msgstr "Saknar IPv6-adress" -#: ../libnm-core/nm-setting-ip4-config.c:971 -#: ../libnm-util/nm-setting-ip4-config.c:916 +#: ../libnm-core/nm-setting-ip-config.c:82 #, c-format -msgid "%d. IPv4 address is invalid" -msgstr "%d. IPv4-adressen är ogiltig" +msgid "Invalid IPv4 address '%s'" +msgstr "Ogiltig IPv4-adress â€%sâ€" -#: ../libnm-core/nm-setting-ip4-config.c:981 -#: ../libnm-util/nm-setting-ip4-config.c:926 +#: ../libnm-core/nm-setting-ip-config.c:82 #, c-format -msgid "%d. IPv4 address has invalid prefix" -msgstr "%d. IPv4-adressen har ogiltigt prefix" +msgid "Invalid IPv6 address '%s" +msgstr "Ogiltig IPv6-adress â€%sâ€" + +#: ../libnm-core/nm-setting-ip-config.c:96 +#, c-format +msgid "Invalid IPv4 address prefix '%u'" +msgstr "Ogiltig IPv4-adressprefix â€%uâ€" + +#: ../libnm-core/nm-setting-ip-config.c:96 +#, c-format +msgid "Invalid IPv6 address prefix '%u" +msgstr "Ogiltigt IPv6-adressprefix â€%uâ€" + +#: ../libnm-core/nm-setting-ip-config.c:114 +#, c-format +msgid "Invalid routing metric '%s'" +msgstr "Ogiltigt ruttmätvärde â€%sâ€" + +#: ../libnm-core/nm-setting-ip-config.c:1864 +#, c-format +msgid "%d. DNS server address is invalid" +msgstr "%d. DNS-serveradressen är ogiltig" -#: ../libnm-core/nm-setting-ip4-config.c:991 +#: ../libnm-core/nm-setting-ip-config.c:1880 #, c-format -msgid "%d. IPv4 address has invalid label '%s'" -msgstr "%d. IPv4-adressen har ogiltig etikett â€%sâ€" +msgid "%d. IP address is invalid" +msgstr "%d. IP-adressen är ogiltig" -#: ../libnm-core/nm-setting-ip4-config.c:1002 +#: ../libnm-core/nm-setting-ip-config.c:1892 #, c-format -msgid "IPv4 address / label count mismatch (%d vs %d)" -msgstr "IPv4-address / etikettsantal stämmer inte (%d vs %d)" +msgid "%d. IP address has 'label' property with invalid type" +msgstr "%d. IP-adressen har â€labelâ€-egenskap med ogiltig typ" -#: ../libnm-core/nm-setting-ip4-config.c:1018 -#: ../libnm-util/nm-setting-ip4-config.c:942 +#: ../libnm-core/nm-setting-ip-config.c:1901 +#, c-format +msgid "%d. IP address has invalid label '%s'" +msgstr "%d. IP-adressen har ogiltig etikett â€%sâ€" + +#: ../libnm-core/nm-setting-ip-config.c:1915 +msgid "gateway cannot be set if there are no addresses configured" +msgstr "gateway kan inte bestämmas om det inte finns adresser konfigurerade" + +#: ../libnm-core/nm-setting-ip-config.c:1924 +msgid "gateway is invalid" +msgstr "ogiltig gateway" + +#: ../libnm-core/nm-setting-ip-config.c:1938 #, c-format msgid "%d. route is invalid" msgstr "%d.-rutt ogiltig" -#: ../libnm-core/nm-setting-ip4-config.c:1028 -#: ../libnm-util/nm-setting-ip4-config.c:952 +#: ../libnm-core/nm-setting-ip-config.c:1947 #, c-format -msgid "%d. route has invalid prefix" -msgstr "%d.-rutten har ett ogiltigt prefix" +msgid "%d. route cannot be a default route" +msgstr "%d. rutt kan inte vara en standardrutt" -#: ../libnm-core/nm-setting-ip4-config.c:1044 -#: ../libnm-core/nm-setting-ip6-config.c:876 +#: ../libnm-core/nm-setting-ip4-config.c:123 +#: ../libnm-core/nm-setting-ip6-config.c:121 +#: ../libnm-util/nm-setting-ip4-config.c:862 +#: ../libnm-util/nm-setting-ip6-config.c:845 #, c-format -msgid "%d. DNS server address is invalid" -msgstr "%d. DNS-serveradressen är ogiltig" +msgid "this property cannot be empty for '%s=%s'" +msgstr "denna egenskap kan inte vara tom för â€%s=%sâ€" -#: ../libnm-core/nm-setting-ip6-config.c:821 -#: ../libnm-util/nm-setting-ip6-config.c:831 +#: ../libnm-core/nm-setting-ip4-config.c:135 +#: ../libnm-core/nm-setting-ip4-config.c:145 +#: ../libnm-core/nm-setting-ip4-config.c:157 +#: ../libnm-core/nm-setting-ip6-config.c:133 +#: ../libnm-core/nm-setting-ip6-config.c:143 +#: ../libnm-core/nm-setting-ip6-config.c:153 +#: ../libnm-util/nm-setting-ip4-config.c:874 +#: ../libnm-util/nm-setting-ip4-config.c:884 +#: ../libnm-util/nm-setting-ip4-config.c:896 +#: ../libnm-util/nm-setting-ip6-config.c:857 +#: ../libnm-util/nm-setting-ip6-config.c:867 +#: ../libnm-util/nm-setting-ip6-config.c:877 #, c-format -msgid "'%s' not allowed for %s=%s" -msgstr "â€%s†inte tillÃ¥tet för %s=%s" +msgid "this property is not allowed for '%s=%s'" +msgstr "denna egenskap är inte tillÃ¥ten för â€%s=%sâ€" -#: ../libnm-core/nm-setting-olpc-mesh.c:116 -#: ../libnm-core/nm-setting-wireless.c:702 -#: ../libnm-util/nm-setting-olpc-mesh.c:131 -#: ../libnm-util/nm-setting-wireless.c:759 +#: ../libnm-core/nm-setting-olpc-mesh.c:122 +#: ../libnm-core/nm-setting-wireless.c:703 +#: ../libnm-util/nm-setting-olpc-mesh.c:133 +#: ../libnm-util/nm-setting-wireless.c:761 msgid "SSID length is out of range <1-32> bytes" msgstr "SSID-längden är utanför intervallet <1-32> byte" -#: ../libnm-core/nm-setting-olpc-mesh.c:125 -#: ../libnm-core/nm-setting-wireless.c:742 -#: ../libnm-util/nm-setting-olpc-mesh.c:140 -#: ../libnm-util/nm-setting-wireless.c:799 +#: ../libnm-core/nm-setting-olpc-mesh.c:131 +#: ../libnm-core/nm-setting-wireless.c:743 +#: ../libnm-util/nm-setting-olpc-mesh.c:142 +#: ../libnm-util/nm-setting-wireless.c:801 #, c-format msgid "'%d' is not a valid channel" msgstr "â€%d†är inte en giltig kanal" -#: ../libnm-core/nm-setting-ppp.c:365 ../libnm-util/nm-setting-ppp.c:387 +#: ../libnm-core/nm-setting-ppp.c:367 ../libnm-util/nm-setting-ppp.c:389 #, c-format msgid "'%d' is out of valid range <128-16384>" msgstr "â€%d†är utanför giltigt intervall <128-16384>" -#: ../libnm-core/nm-setting-ppp.c:378 ../libnm-util/nm-setting-ppp.c:400 +#: ../libnm-core/nm-setting-ppp.c:380 ../libnm-util/nm-setting-ppp.c:402 #, c-format msgid "setting this property requires non-zero '%s' property" -msgstr "att sätta denna egenskap kräver icke-noll för â€%sâ€-egenskapen." +msgstr "att sätta denna egenskap kräver icke-noll för â€%sâ€-egenskapen" -#: ../libnm-core/nm-setting-vlan.c:512 ../libnm-util/nm-setting-vlan.c:554 +#: ../libnm-core/nm-setting-vlan.c:516 ../libnm-util/nm-setting-vlan.c:557 #, c-format msgid "'%s' value doesn't match '%s=%s'" msgstr "â€%sâ€-värde matchar inte â€%s=%sâ€" -#: ../libnm-core/nm-setting-vlan.c:523 ../libnm-util/nm-setting-vlan.c:565 +#: ../libnm-core/nm-setting-vlan.c:527 ../libnm-util/nm-setting-vlan.c:568 #, c-format msgid "'%s' is neither an UUID nor an interface name" msgstr "â€%s†är varken ett UUID eller ett gränssnittsnamn" -#: ../libnm-core/nm-setting-vlan.c:537 ../libnm-util/nm-setting-vlan.c:578 +#: ../libnm-core/nm-setting-vlan.c:541 ../libnm-util/nm-setting-vlan.c:581 #, c-format msgid "property is not specified and neither is '%s:%s'" msgstr "egenskapen är inte angiven och det är inte heller â€%s:%sâ€" -#: ../libnm-core/nm-setting-vlan.c:550 ../libnm-util/nm-setting-vlan.c:591 +#: ../libnm-core/nm-setting-vlan.c:554 ../libnm-util/nm-setting-vlan.c:594 msgid "flags are invalid" msgstr "flaggorna är ogiltiga" -#: ../libnm-core/nm-setting-vpn.c:419 +#: ../libnm-core/nm-setting-vpn.c:441 #, c-format msgid "secret was empty" msgstr "hemlighet är tom" -#: ../libnm-core/nm-setting-vpn.c:449 +#: ../libnm-core/nm-setting-vpn.c:471 msgid "setting contained a secret with an empty name" msgstr "inställning innehÃ¥ller en hemlighet med ett tomt namn" -#: ../libnm-core/nm-setting-vpn.c:457 +#: ../libnm-core/nm-setting-vpn.c:479 #, c-format msgid "secret value was empty" msgstr "hemligt värde var tomt" -#: ../libnm-core/nm-setting-vpn.c:504 ../libnm-core/nm-setting.c:1567 +#: ../libnm-core/nm-setting-vpn.c:526 ../libnm-core/nm-setting.c:1650 msgid "not a secret property" msgstr "inte en hemlig egenskap" -#: ../libnm-core/nm-setting-vpn.c:510 +#: ../libnm-core/nm-setting-vpn.c:532 msgid "secret is not of correct type" msgstr "hemlighet är inte av korrekt typ" -#: ../libnm-core/nm-setting-vpn.c:545 +#: ../libnm-core/nm-setting-vpn.c:567 #, c-format msgid "failed to convert value '%s' to uint" msgstr "misslyckades med att konvertera värdet â€%s†till uint" -#: ../libnm-core/nm-setting-vpn.c:553 +#: ../libnm-core/nm-setting-vpn.c:575 msgid "secret flags property not found" msgstr "hemliga flaggegenskaper hittades inte" -#: ../libnm-core/nm-setting-wired.c:573 ../libnm-util/nm-setting-wired.c:615 +#: ../libnm-core/nm-setting-wired.c:614 ../libnm-util/nm-setting-wired.c:614 #, c-format msgid "'%s' is not a valid Ethernet port value" msgstr "â€%s†är inte ett giltigt portvärde för Ethernet" -#: ../libnm-core/nm-setting-wired.c:583 ../libnm-util/nm-setting-wired.c:625 +#: ../libnm-core/nm-setting-wired.c:624 ../libnm-util/nm-setting-wired.c:624 #, c-format msgid "'%s' is not a valid duplex value" msgstr "â€%s†är inte ett giltigt värde för duplex" -#: ../libnm-core/nm-setting-wired.c:641 ../libnm-util/nm-setting-wired.c:682 +#: ../libnm-core/nm-setting-wired.c:683 ../libnm-util/nm-setting-wired.c:681 #, c-format msgid "invalid '%s' or its value '%s'" msgstr "ogiltig â€%s†eller dess värde â€%s" -#: ../libnm-core/nm-setting-wireless-security.c:882 -#: ../libnm-util/nm-setting-wireless-security.c:912 +#: ../libnm-core/nm-setting-wired.c:704 +msgid "Wake-on-LAN mode 'default' and 'ignore' are exclusive flags" +msgstr "" +"Wake-on-LAN-lägena â€default†och â€ignore†gÃ¥r ej kombinera med andra flaggor" + +#: ../libnm-core/nm-setting-wired.c:713 +msgid "Wake-on-LAN password can only be used with magic packet mode" +msgstr "Wake-on-LAN-lösenord kan bara användas med magiskt-paket-läge" + +#: ../libnm-core/nm-setting-wireless-security.c:883 +#: ../libnm-util/nm-setting-wireless-security.c:913 #, c-format msgid "'%s' security requires '%s=%s'" msgstr "â€%sâ€-säkerhet kräver â€%s=%sâ€" -#: ../libnm-core/nm-setting-wireless-security.c:911 -#: ../libnm-util/nm-setting-wireless-security.c:941 +#: ../libnm-core/nm-setting-wireless-security.c:904 +#: ../libnm-util/nm-setting-wireless-security.c:934 #, c-format msgid "'%s' security requires '%s' setting presence" msgstr "â€%sâ€-säkerhet kräver en â€%sâ€-inställning" -#: ../libnm-core/nm-setting-wireless-security.c:932 -#: ../libnm-util/nm-setting-wireless-security.c:962 +#: ../libnm-core/nm-setting-wireless-security.c:925 +#: ../libnm-util/nm-setting-wireless-security.c:955 #, c-format msgid "'%d' value is out of range <0-3>" msgstr "â€%dâ€-värdet är utanför intervallet <0-3>" -#: ../libnm-core/nm-setting-wireless-security.c:1029 -#: ../libnm-util/nm-setting-wireless-security.c:1059 +#: ../libnm-core/nm-setting-wireless-security.c:980 +#: ../libnm-util/nm-setting-wireless-security.c:1010 #, c-format msgid "'%s' connections require '%s' in this property" msgstr "â€%sâ€-anslutningar kräver â€%s†i denna egenskap" -#: ../libnm-core/nm-setting-wireless-security.c:1059 -#: ../libnm-util/nm-setting-wireless-security.c:1089 +#: ../libnm-core/nm-setting-wireless-security.c:1010 +#: ../libnm-util/nm-setting-wireless-security.c:1040 #, c-format msgid "'%s' can only be used with '%s=%s' (WEP)" msgstr "â€%s†kan endast användas med â€%s=%s†(WEP)" -#: ../libnm-core/nm-setting-wireless.c:711 -#: ../libnm-util/nm-setting-wireless.c:768 +#: ../libnm-core/nm-setting-wireless.c:712 +#: ../libnm-util/nm-setting-wireless.c:770 #, c-format msgid "'%s' is not a valid Wi-Fi mode" -msgstr "â€%s†är inte ett giltig Wi-Fi-läge." +msgstr "â€%s†är inte ett giltigt Wi-Fi-läge" -#: ../libnm-core/nm-setting-wireless.c:721 -#: ../libnm-util/nm-setting-wireless.c:778 +#: ../libnm-core/nm-setting-wireless.c:722 +#: ../libnm-util/nm-setting-wireless.c:780 #, c-format msgid "'%s' is not a valid band" msgstr "â€%s†är inte en giltig frekvens" -#: ../libnm-core/nm-setting-wireless.c:731 +#: ../libnm-core/nm-setting-wireless.c:732 #, c-format msgid "'%s' requires setting '%s' property" msgstr "â€%s†kräver en â€%sâ€-inställning" -#: ../libnm-core/nm-setting.c:1465 +#: ../libnm-core/nm-setting.c:833 +#, c-format +msgid "can't set property of type '%s' from value of type '%s'" +msgstr "kan inte sätta egenskap för typen â€%s†frÃ¥n värdet av typen â€%sâ€" + +#: ../libnm-core/nm-setting.c:1548 msgid "secret not found" -msgstr "hemlighet inte funnnen" +msgstr "hemlighet inte funnen" -#: ../libnm-core/nm-setting.c:1557 +#: ../libnm-core/nm-setting.c:1640 msgid "secret is not set" msgstr "hemlighet inte angiven" -#: ../libnm-core/nm-setting.c:1745 -msgid "missing setting" -msgstr "saknar inställning" +#: ../libnm-core/nm-utils.c:2480 ../libnm-util/nm-utils.c:1828 +#, c-format +msgid "Could not find \"%s\" binary" +msgstr "Kunde inte hitta binären â€%sâ€" -#: ../libnm-glib/nm-device.c:1792 ../libnm/nm-device.c:1602 +#: ../libnm-glib/nm-device.c:1793 ../libnm/nm-device.c:1638 msgid "Bluetooth" msgstr "Bluetooth" -#: ../libnm-glib/nm-device.c:1810 ../libnm/nm-device.c:1620 -msgid "ADSL" -msgstr "ADSL" - -#: ../libnm-glib/nm-device.c:1838 ../libnm/nm-device.c:1648 +#: ../libnm-glib/nm-device.c:1839 ../libnm/nm-device.c:1684 msgid "Wired" msgstr "TrÃ¥dbunden" -#: ../libnm-glib/nm-device.c:1869 ../libnm/nm-device.c:1679 +#: ../libnm-glib/nm-device.c:1870 ../libnm/nm-device.c:1715 msgid "PCI" msgstr "PCI" -#: ../libnm-glib/nm-device.c:1871 ../libnm/nm-device.c:1681 +#: ../libnm-glib/nm-device.c:1872 ../libnm/nm-device.c:1717 msgid "USB" msgstr "USB" @@ -7093,176 +7899,216 @@ msgstr "USB" #. * "%2$s (%1$s)" if there's no grammatical way to combine #. * the strings otherwise. #. -#: ../libnm-glib/nm-device.c:1967 ../libnm-glib/nm-device.c:1986 -#: ../libnm/nm-device.c:1775 ../libnm/nm-device.c:1794 +#: ../libnm-glib/nm-device.c:1968 ../libnm-glib/nm-device.c:1987 +#: ../libnm/nm-device.c:1811 ../libnm/nm-device.c:1830 #, c-format msgctxt "long device name" msgid "%s %s" msgstr "%s %s" -#: ../libnm-glib/nm-remote-connection.c:149 +#: ../libnm-glib/nm-remote-connection.c:151 msgid "Disconnected by D-Bus" msgstr "FrÃ¥nkopplad av D-Bus" -#: ../libnm-util/crypto_nss.c:468 +#: ../libnm-util/crypto_gnutls.c:88 +#, c-format +msgid "Failed to initialize the MD5 engine: %s / %s." +msgstr "Misslyckades med att initiera MD5-motorn: %s / %s." + +#: ../libnm-util/crypto_nss.c:102 +#, c-format +msgid "Failed to initialize the MD5 context: %d." +msgstr "Misslyckades med att initiera MD5-kontexten: %d." + +#: ../libnm-util/crypto_nss.c:463 #, c-format msgid "Couldn't convert password to UCS2: %d" msgstr "Kunde inte konvertera lösenord till UCS2: %d" -#: ../libnm-util/nm-setting-bluetooth.c:184 +#: ../libnm-util/nm-setting-bluetooth.c:187 #, c-format msgid "requires '%s' or '%s' setting" msgstr "kräver â€%s†eller â€%sâ€-inställning" -#: ../libnm-util/nm-setting-connection.c:861 +#: ../libnm-util/nm-setting-connection.c:863 #, c-format msgid "requires presence of '%s' setting in the connection" msgstr "kräver â€%sâ€-inställning i anslutningen" -#: ../libnm-util/nm-setting-vpn.c:561 +#: ../libnm-util/nm-setting-ip4-config.c:940 +#, c-format +msgid "%d. IPv4 address is invalid" +msgstr "%d. IPv4-adressen är ogiltig" + +#: ../libnm-util/nm-setting-ip4-config.c:950 +#, c-format +msgid "%d. IPv4 address has invalid prefix" +msgstr "%d. IPv4-adressen har ogiltigt prefix" + +#: ../libnm-util/nm-setting-ip4-config.c:966 +#: ../libnm-util/nm-setting-ip6-config.c:938 +#, c-format +msgid "%d. route has invalid prefix" +msgstr "%d.-rutten har ett ogiltigt prefix" + +#: ../libnm-util/nm-setting-ip6-config.c:912 +#, c-format +msgid "%d. IPv6 address is invalid" +msgstr "%d. IPv6-adressen är ogiltig" + +#: ../libnm-util/nm-setting-ip6-config.c:922 +#, c-format +msgid "%d. IPv6 address has invalid prefix" +msgstr "%d. IPv6-adressen har ogiltigt prefix" + +#: ../libnm-util/nm-setting-vpn.c:583 #, c-format msgid "Failed to convert '%s' value '%s' to uint" msgstr "Misslyckades med att konvertera â€%sâ€-värdet â€%s†till uint" -#: ../libnm-util/nm-setting-vpn.c:568 +#: ../libnm-util/nm-setting-vpn.c:590 #, c-format msgid "Secret flags property '%s' not found" msgstr "Hemliga flaggegenskapen â€%s†hittades inte" -#: ../libnm-util/nm-setting-wireless.c:788 +#: ../libnm-util/nm-setting-wireless.c:790 #, c-format msgid "requires setting '%s' property" msgstr "kräver en â€%sâ€-inställning" -#: ../libnm/nm-device-adsl.c:70 +#: ../libnm/nm-device-adsl.c:73 msgid "The connection was not an ADSL connection." msgstr "Anslutningen var inte en ADSL-anslutning." -#: ../libnm/nm-device-bond.c:114 +#: ../libnm/nm-device-bond.c:115 msgid "The connection was not a bond connection." msgstr "Anslutningen var inte en kombinerad anslutning." -#: ../libnm/nm-device-bridge.c:114 +#: ../libnm/nm-device-bridge.c:115 msgid "The connection was not a bridge connection." msgstr "Anslutningen var inte en brygganslutning." -#: ../libnm/nm-device-bt.c:139 +#: ../libnm/nm-device-bt.c:140 #, c-format msgid "The connection was not a Bluetooth connection." msgstr "Anslutningen var inte en Bluetooth-anslutning." -#: ../libnm/nm-device-bt.c:148 +#: ../libnm/nm-device-bt.c:149 msgid "Invalid device Bluetooth address." msgstr "Ogiltig adress för Bluetooth-enhet." -#: ../libnm/nm-device-bt.c:155 +#: ../libnm/nm-device-bt.c:156 msgid "The Bluetooth addresses of the device and the connection didn't match." msgstr "Adresserna för Bluetooth-enheten och anslutningen matchade inte." -#: ../libnm/nm-device-bt.c:164 +#: ../libnm/nm-device-bt.c:165 msgid "" "The device is lacking Bluetooth capabilities required by the connection." msgstr "Enheten saknar Bluetooth-förmÃ¥gorna som krävs av anslutningen." -#: ../libnm/nm-device-ethernet.c:137 +#: ../libnm/nm-device-ethernet.c:138 msgid "The connection was not an Ethernet or PPPoE connection." msgstr "Anslutningen var inte en Ethernet eller PPPoE-anslutning." -#: ../libnm/nm-device-ethernet.c:153 ../libnm/nm-device-infiniband.c:104 -#: ../libnm/nm-device-wifi.c:491 ../libnm/nm-device-wimax.c:310 +#: ../libnm/nm-device-ethernet.c:154 ../libnm/nm-device-infiniband.c:105 +#: ../libnm/nm-device-wifi.c:598 ../libnm/nm-device-wimax.c:311 msgid "Invalid device MAC address." msgstr "Ogiltigt MAC-adress för enhet." -#: ../libnm/nm-device-ethernet.c:159 ../libnm/nm-device-infiniband.c:112 -#: ../libnm/nm-device-wifi.c:498 ../libnm/nm-device-wimax.c:317 +#: ../libnm/nm-device-ethernet.c:160 ../libnm/nm-device-infiniband.c:113 +#: ../libnm/nm-device-wifi.c:605 ../libnm/nm-device-wimax.c:318 msgid "The MACs of the device and the connection didn't match." msgstr "MAC-adresserna för enheten och anslutningen matchade inte." -#: ../libnm/nm-device-generic.c:91 +#: ../libnm/nm-device-generic.c:92 msgid "The connection was not a generic connection." msgstr "Anslutningen var inte en generell anslutning." -#: ../libnm/nm-device-generic.c:98 +#: ../libnm/nm-device-generic.c:99 msgid "The connection did not specify an interface name." msgstr "Anslutningen angav inte ett gränssnittsnamn." -#: ../libnm/nm-device-infiniband.c:96 +#: ../libnm/nm-device-infiniband.c:97 msgid "The connection was not an InfiniBand connection." msgstr "Anslutningen var inte en InfiniBand-anslutning." -#: ../libnm/nm-device-modem.c:122 +#: ../libnm/nm-device-modem.c:123 msgid "The connection was not a modem connection." msgstr "Anslutningen var inte en modemanslutning." -#: ../libnm/nm-device-modem.c:130 +#: ../libnm/nm-device-modem.c:131 msgid "The connection was not a valid modem connection." msgstr "Anslutningen var inte en giltig modemanslutning." -#: ../libnm/nm-device-modem.c:137 +#: ../libnm/nm-device-modem.c:138 msgid "The device is lacking capabilities required by the connection." msgstr "Enheten saknar förmÃ¥gorna som krävs av anslutningen." -#: ../libnm/nm-device-olpc-mesh.c:117 +#: ../libnm/nm-device-olpc-mesh.c:118 msgid "The connection was not an OLPC Mesh connection." msgstr "Anslutningen var inte en OLPC Mesh-anslutning." -#: ../libnm/nm-device-team.c:120 +#: ../libnm/nm-device-team.c:121 msgid "The connection was not a team connection." msgstr "Anslutningen var inte en gruppanslutning." -#: ../libnm/nm-device-vlan.c:113 +#: ../libnm/nm-device-vlan.c:131 msgid "The connection was not a VLAN connection." msgstr "Anslutningen var inte en VLAN-anslutning." -#: ../libnm/nm-device-vlan.c:120 +#: ../libnm/nm-device-vlan.c:138 msgid "The VLAN identifiers of the device and the connection didn't match." msgstr "VLAN-identifierarna för enheten och anslutningen matchar inte." -#: ../libnm/nm-device-vlan.c:133 +#: ../libnm/nm-device-vlan.c:151 msgid "The hardware address of the device and the connection didn't match." msgstr "HÃ¥rdvaruadressen för enheten och anslutningen matchar inte." -#: ../libnm/nm-device-wifi.c:482 +#: ../libnm/nm-device-wifi.c:589 msgid "The connection was not a Wi-Fi connection." msgstr "Anslutningen var inte en Wi-Fi-anslutning." -#: ../libnm/nm-device-wifi.c:518 +#: ../libnm/nm-device-wifi.c:625 msgid "The device is lacking WPA capabilities required by the connection." msgstr "Enheten saknar WPA-förmÃ¥gorna som krävs av anslutningen." -#: ../libnm/nm-device-wifi.c:525 +#: ../libnm/nm-device-wifi.c:632 msgid "The device is lacking WPA2/RSN capabilities required by the connection." msgstr "Enheten saknar WPA2/RSN-förmÃ¥gorna som krävs av anslutningen." -#: ../libnm/nm-device-wimax.c:301 +#: ../libnm/nm-device-wimax.c:302 msgid "The connection was not a WiMAX connection." msgstr "Anslutningen var inte en WiMAX-anslutning." -#: ../libnm/nm-device.c:2120 +#: ../libnm/nm-device.c:2174 #, c-format msgid "The connection was not valid: %s" msgstr "Anslutningen var inte giltig: %s" -#: ../libnm/nm-device.c:2129 +#: ../libnm/nm-device.c:2183 #, c-format msgid "The interface names of the device and the connection didn't match." msgstr "Gränssnittsnamnen pÃ¥ enheten och anslutningen matchar inte." -#: ../libnm/nm-manager.c:1053 +#: ../libnm/nm-manager.c:861 +msgid "Active connection could not be attached to the device" +msgstr "Aktiv anslutning kunde inte fästas pÃ¥ enheten" + +#: ../libnm/nm-manager.c:1085 msgid "Active connection removed before it was initialized" msgstr "Aktiv anslutning togs bort innan den blev initialiserad" -#: ../libnm/nm-object.c:155 ../libnm/nm-object.c:299 +#: ../libnm/nm-object.c:1442 ../libnm/nm-object.c:1588 msgid "Caller did not specify D-Bus path for object" msgstr "Anroparen angav inte D-Bus-sökvägen för objektet" -#: ../libnm/nm-remote-settings.c:258 +#: ../libnm/nm-remote-settings.c:261 msgid "Connection removed before it was initialized" msgstr "Anslutning togs bort innan den blev initialiserad" -#: ../libnm/nm-vpn-plugin.c:713 +#: ../libnm/nm-vpn-plugin-old.c:892 msgid "No service name specified" -msgstr "Inget tjänstenamn angivet." +msgstr "Inget tjänstenamn angivet" #: ../policy/org.freedesktop.NetworkManager.policy.in.in.h:1 msgid "Enable or disable system networking" @@ -7376,95 +8222,48 @@ msgstr "Systemets policy förhindrar ändring av bestÃ¥ende värdnamn för syste #. * as "Wired Connection" or "VPN Connection". The %d is a number #. * that is combined with the first argument to create a unique #. * connection id. -#: ../src/NetworkManagerUtils.c:1154 +#: ../src/NetworkManagerUtils.c:1660 #, c-format msgctxt "connection id fallback" msgid "%s %d" msgstr "%s %d" -#: ../src/main.c:135 -#, c-format -msgid "Failed to set signal mask: %d" -msgstr "Misslyckades med att sätta signalmask: %d." - -#: ../src/main.c:144 -#, c-format -msgid "Failed to create signal handling thread: %d" -msgstr "Misslyckades med att skapa signalhanteringstrÃ¥d: %d" - -#: ../src/main.c:159 -#, c-format -msgid "Opening %s failed: %s\n" -msgstr "Öppnandet av %s misslyckades: %s\n" - -#: ../src/main.c:165 -#, c-format -msgid "Writing to %s failed: %s\n" -msgstr "Skrivning till %s misslyckades: %s\n" - -#: ../src/main.c:170 -#, c-format -msgid "Closing %s failed: %s\n" -msgstr "Stängning av %s misslyckades: %s\n" - -#: ../src/main.c:213 -#, c-format -msgid "NetworkManager is already running (pid %ld)\n" -msgstr "Nätverkshanteraren är redan igÃ¥ng (pid %ld)\n" - -#: ../src/main.c:366 +#. Logging/debugging +#: ../src/main.c:235 ../src/nm-iface-helper.c:300 msgid "Print NetworkManager version and exit" msgstr "Skriv ut version för Nätverkshanteraren och avsluta" -#: ../src/main.c:367 +#: ../src/main.c:236 ../src/nm-iface-helper.c:301 msgid "Don't become a daemon" msgstr "Bli inte en demon" -#: ../src/main.c:368 +#: ../src/main.c:237 ../src/nm-iface-helper.c:302 msgid "Don't become a daemon, and log to stderr" msgstr "Bli inte en demon, och logga till stderr" -#: ../src/main.c:369 +#: ../src/main.c:238 ../src/nm-iface-helper.c:303 #, c-format msgid "Log level: one of [%s]" msgstr "LoggnivÃ¥: en av [%s]" -#: ../src/main.c:371 +#: ../src/main.c:240 ../src/nm-iface-helper.c:305 #, c-format msgid "Log domains separated by ',': any combination of [%s]" msgstr "Logga domäner separerade med â€,â€: vilken kombination som helst av [%s]" -#: ../src/main.c:373 +#: ../src/main.c:242 ../src/nm-iface-helper.c:307 msgid "Make all warnings fatal" msgstr "Gör alla varningar till ödesdigra" -#: ../src/main.c:374 +#: ../src/main.c:243 msgid "Specify the location of a PID file" msgstr "Ange platsen för en PID-fil" -#: ../src/main.c:374 -msgid "filename" -msgstr "filnamn" - -#: ../src/main.c:375 +#: ../src/main.c:244 msgid "State file location" msgstr "Plats för tillstÃ¥ndsfil" -#: ../src/main.c:375 -msgid "/path/to/state.file" -msgstr "/sökväg/till/tillstÃ¥nds.fil" - -#: ../src/main.c:401 -#, c-format -msgid "GModules are not supported on your platform!\n" -msgstr "GModules stöds inte pÃ¥ din plattform!\n" - -#: ../src/main.c:406 -#, c-format -msgid "You must be root to run NetworkManager!\n" -msgstr "Du mÃ¥ste vara root för att köra Nätverkshanteraren!\n" - -#: ../src/main.c:429 +#: ../src/main.c:255 msgid "" "NetworkManager monitors all network connections and automatically\n" "chooses the best connection to use. It also allows the user to\n" @@ -7476,46 +8275,71 @@ msgstr "" "att användaren anger trÃ¥dlösa accesspunkter som trÃ¥dlösa nätverks-\n" "kort i datorn ska associeras med." -#: ../src/main.c:435 ../src/main.c:451 +#: ../src/main.c:345 ../src/main-utils.c:246 ../src/nm-iface-helper.c:384 #, c-format msgid "%s. Please use --help to see a list of valid options.\n" msgstr "%s. Använd --help för att se en lista över giltiga flaggor.\n" -#: ../src/main.c:456 +#: ../src/main.c:350 ../src/nm-iface-helper.c:389 #, c-format msgid "Ignoring unrecognized log domain(s) '%s' passed on command line.\n" msgstr "Ignorerar okända loggdomän(en|er) â€%s†given via kommandoraden.\n" -#: ../src/main.c:507 +#: ../src/main.c:360 #, c-format msgid "Failed to read configuration: (%d) %s\n" msgstr "Misslyckades med att läsa konfiguration: (%d) %s\n" -#: ../src/main.c:521 +#: ../src/main.c:376 #, c-format msgid "Error in configuration file: %s.\n" msgstr "Fel i konfigurationsfilen: %s.\n" -#: ../src/main.c:526 +#: ../src/main.c:381 #, c-format msgid "Ignoring unrecognized log domain(s) '%s' from config files.\n" msgstr "Ignorerar okända loggdomän(en|er) â€%s†frÃ¥n konfigurationsfiler.\n" -#: ../src/main.c:534 -#, c-format -msgid "State file %s parsing failed: (%d) %s\n" -msgstr "Tolkning av tillstÃ¥ndsfilen %s misslyckades: (%d) %s\n" - -#: ../src/main.c:547 +#: ../src/main.c:392 ../src/nm-iface-helper.c:399 #, c-format msgid "Could not daemonize: %s [error %u]\n" msgstr "Kunde inte bli demon: %s [fel %u]\n" -#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:151 +#: ../src/main-utils.c:101 +#, c-format +msgid "Opening %s failed: %s\n" +msgstr "Öppnandet av %s misslyckades: %s\n" + +#: ../src/main-utils.c:107 +#, c-format +msgid "Writing to %s failed: %s\n" +msgstr "Skrivning till %s misslyckades: %s\n" + +#: ../src/main-utils.c:112 +#, c-format +msgid "Closing %s failed: %s\n" +msgstr "Stängning av %s misslyckades: %s\n" + +#: ../src/main-utils.c:122 +#, c-format +msgid "Cannot create '%s': %s" +msgstr "Kan inte skapa â€%sâ€: %s" + +#: ../src/main-utils.c:174 +#, c-format +msgid "%s is already running (pid %ld)\n" +msgstr "%s är redan igÃ¥ng (pid %ld)\n" + +#: ../src/main-utils.c:184 +#, c-format +msgid "You must be root to run %s!\n" +msgstr "Du mÃ¥ste vara root för att köra %s!\n" + +#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:210 msgid "# Created by NetworkManager\n" msgstr "# Skapad av Nätverkshanteraren\n" -#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:158 +#: ../src/dhcp-manager/nm-dhcp-dhclient-utils.c:217 #, c-format msgid "" "# Merged from %s\n" @@ -7524,85 +8348,73 @@ msgstr "" "# Sammanfogad frÃ¥n %s\n" "\n" -#: ../src/dhcp-manager/nm-dhcp-manager.c:291 +#: ../src/dhcp-manager/nm-dhcp-manager.c:130 +#, c-format +msgid "'%s' support not found or not enabled." +msgstr "stöd för â€%s†kunde inte hittas eller var inaktiverat." + +#: ../src/dhcp-manager/nm-dhcp-manager.c:177 msgid "no usable DHCP client could be found." msgstr "ingen användbar DHCP-klient hittades." -#: ../src/dhcp-manager/nm-dhcp-manager.c:300 -msgid "'dhclient' could not be found or was disabled." -msgstr "â€dhclient†kunde inte hittas eller var inaktiverad." - -#: ../src/dhcp-manager/nm-dhcp-manager.c:310 -msgid "'dhcpcd' could not be found or was disabled." -msgstr "â€dhcpcd†kunde inte hittas eller var inaktiverad." - -#: ../src/dhcp-manager/nm-dhcp-manager.c:318 -#, c-format -msgid "unsupported DHCP client '%s'" -msgstr "DHCP-klienten â€%s†stöds inte" - -#: ../src/dns-manager/nm-dns-manager.c:374 +#: ../src/dns-manager/nm-dns-manager.c:364 msgid "NOTE: the libc resolver may not support more than 3 nameservers." msgstr "" "OBSERVERA: uppslag via glibc kanske inte har stöd för fler än 3 namnservrar." -#: ../src/dns-manager/nm-dns-manager.c:376 +#: ../src/dns-manager/nm-dns-manager.c:366 msgid "The nameservers listed below may not be recognized." msgstr "Namnservrarna listade nedan kanske inte kommer att kännas igen." -#: ../src/devices/adsl/nm-device-adsl.c:127 +#: ../src/devices/adsl/nm-device-adsl.c:129 msgid "ADSL connection" msgstr "ADSL-anslutning" -#: ../src/devices/bluetooth/nm-bluez-device.c:195 +#: ../src/devices/bluetooth/nm-bluez-device.c:201 #, c-format msgid "%s Network" msgstr "%s Nätverk" -#: ../src/devices/bluetooth/nm-device-bt.c:248 +#: ../src/devices/bluetooth/nm-device-bt.c:255 msgid "PAN requested, but Bluetooth device does not support NAP" msgstr "PAN begärd, men Bluetooth-enheten stöder inte NAP" -#: ../src/devices/bluetooth/nm-device-bt.c:258 +#: ../src/devices/bluetooth/nm-device-bt.c:265 msgid "PAN connections cannot specify GSM, CDMA, or serial settings" msgstr "" -"PAN-anslutningar kan inte specifiera GSM, CDMA eller seriella inställningar" +"PAN-anslutningar kan inte specificera GSM, CDMA eller seriella inställningar" -#: ../src/devices/bluetooth/nm-device-bt.c:271 +#: ../src/devices/bluetooth/nm-device-bt.c:278 msgid "PAN connection" msgstr "PAN-anslutning" -#: ../src/devices/bluetooth/nm-device-bt.c:278 +#: ../src/devices/bluetooth/nm-device-bt.c:285 msgid "DUN requested, but Bluetooth device does not support DUN" msgstr "DUN begärd, men Bluetooth-enheten stödjer inte DUN" -#: ../src/devices/bluetooth/nm-device-bt.c:288 +#: ../src/devices/bluetooth/nm-device-bt.c:295 msgid "DUN connection must include a GSM or CDMA setting" msgstr "DUN-anslutning mÃ¥ste innehÃ¥lla en GSM eller CDMA-inställningar" -#: ../src/devices/bluetooth/nm-device-bt.c:298 -#: ../src/devices/wwan/nm-modem-broadband.c:484 +#: ../src/devices/bluetooth/nm-device-bt.c:305 +#: ../src/devices/wwan/nm-modem-broadband.c:540 msgid "GSM connection" msgstr "GSM-anslutning" -#: ../src/devices/bluetooth/nm-device-bt.c:302 -#: ../src/devices/wwan/nm-modem-broadband.c:507 +#: ../src/devices/bluetooth/nm-device-bt.c:309 +#: ../src/devices/wwan/nm-modem-broadband.c:563 msgid "CDMA connection" msgstr "CDMA-anslutning" -#: ../src/devices/bluetooth/nm-device-bt.c:306 -msgid "DUN connection" -msgstr "DUN-anslutning" - -#: ../src/devices/bluetooth/nm-device-bt.c:311 +#: ../src/devices/bluetooth/nm-device-bt.c:317 msgid "Unknown/unhandled Bluetooth connection type" msgstr "Okänd/ohanterad Bluetooth-anslutningstyp" -#: ../src/devices/bluetooth/nm-device-bt.c:331 -#: ../src/devices/nm-device-ethernet.c:1443 -#: ../src/devices/nm-device-infiniband.c:196 -#: ../src/devices/wifi/nm-device-wifi.c:1130 -#: ../src/devices/wimax/nm-device-wimax.c:445 +#: ../src/devices/bluetooth/nm-device-bt.c:337 +#: ../src/devices/nm-device-ethernet.c:1446 +#: ../src/devices/nm-device-infiniband.c:204 +#: ../src/devices/wifi/nm-device-wifi.c:1112 +#: ../src/devices/wimax/nm-device-wimax.c:454 msgid "connection does not match device" msgstr "anslutning matchar inte enhet" @@ -7610,28 +8422,28 @@ msgstr "anslutning matchar inte enhet" msgid "Bond connection" msgstr "Kombinationsanslutning" -#: ../src/devices/nm-device-bridge.c:131 +#: ../src/devices/nm-device-bridge.c:130 msgid "Bridge connection" msgstr "Brygganslutning" -#: ../src/devices/nm-device-ethernet.c:1426 +#: ../src/devices/nm-device-ethernet.c:1427 msgid "PPPoE connection" msgstr "PPPoE-anslutning" -#: ../src/devices/nm-device-ethernet.c:1426 +#: ../src/devices/nm-device-ethernet.c:1427 msgid "Wired connection" msgstr "TrÃ¥dbunden anslutning" -#: ../src/devices/nm-device-ethernet-utils.c:38 +#: ../src/devices/nm-device-ethernet-utils.c:40 #, c-format msgid "Wired connection %d" msgstr "TrÃ¥dbunden anslutning %d" -#: ../src/devices/nm-device-infiniband.c:178 +#: ../src/devices/nm-device-infiniband.c:186 msgid "InfiniBand connection" msgstr "InfiniBand-anslutning" -#: ../src/devices/nm-device-vlan.c:216 +#: ../src/devices/nm-device-vlan.c:339 msgid "VLAN connection" msgstr "VLAN-anslutning" @@ -7639,160 +8451,160 @@ msgstr "VLAN-anslutning" msgid "Team connection" msgstr "Gruppanslutning" -#: ../src/devices/wifi/nm-device-olpc-mesh.c:150 +#: ../src/devices/wifi/nm-device-olpc-mesh.c:151 msgid "Mesh" msgstr "Mesh" -#: ../src/devices/wifi/nm-device-wifi.c:1099 +#: ../src/devices/wifi/nm-device-wifi.c:1080 msgid "WPA Ad-Hoc disabled due to kernel bugs" msgstr "WPA Ad-Hoc inaktiverad pÃ¥ grund av kärnfel" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:43 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:44 #, c-format msgid "%s is incompatible with static WEP keys" msgstr "%s är inte kompatibel med statiska WEP-nycklar" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:77 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:78 msgid "LEAP authentication requires a LEAP username" msgstr "LEAP-autentisering kräver ett LEAP-användarnamn" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:87 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:88 msgid "LEAP username requires 'leap' authentication" msgstr "LEAP-användarnamn kräver â€leapâ€-autentisering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:100 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:101 msgid "LEAP authentication requires IEEE 802.1x key management" msgstr "LEAP-autentisering kräver IEEE 802.1x-nyckelhantering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:120 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:121 msgid "LEAP authentication is incompatible with Ad-Hoc mode" msgstr "LEAP-autentisering är inkompatibelt med Ad-Hoc-läge" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:132 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:133 msgid "LEAP authentication is incompatible with 802.1x setting" msgstr "LEAP-autentisering är inkompatibelt med 802.1x-inställning" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:154 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:155 #, c-format msgid "a connection using '%s' authentication cannot use WPA key management" msgstr "" "en anslutning som använder â€%sâ€-autentisering kan inte använda WPA-" "nyckelhantering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:165 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:166 #, c-format msgid "a connection using '%s' authentication cannot specific WPA protocols" msgstr "" "en anslutning som använder â€%sâ€-autentisering kan inte specificera WPA-" "protokoll" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:181 -#: ../src/devices/wifi/nm-wifi-ap-utils.c:198 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:182 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:199 #, c-format msgid "a connection using '%s' authentication cannot specific WPA ciphers" msgstr "" "en anslutning som använder â€%sâ€-autentisering kan inte specificera WPA-" "chiffer" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:210 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:211 #, c-format msgid "a connection using '%s' authentication cannot specific a WPA password" msgstr "" "en anslutning som använder â€%sâ€-autentisering kan inte specificera ett WPA-" "lösenord" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:241 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:242 msgid "Dynamic WEP requires an 802.1x setting" msgstr "Dynamisk WEP kräver en 802.1x-inställning" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:251 -#: ../src/devices/wifi/nm-wifi-ap-utils.c:279 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:252 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:280 msgid "Dynamic WEP requires 'open' authentication" msgstr "Dynamisk WEP kräver â€openâ€-autentisering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:266 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:267 msgid "Dynamic WEP requires 'ieee8021x' key management" msgstr "Dynamisk WEP kräver â€ieee8021xâ€-nyckelhantering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:313 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:314 msgid "WPA-PSK authentication is incompatible with 802.1x" msgstr "WPA-PSK-autentisering är inkompatibelt med 802.1x" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:323 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:324 msgid "WPA-PSK requires 'open' authentication" msgstr "WPA-PSK kräver â€openâ€-autentisering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:335 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:336 msgid "WPA Ad-Hoc authentication requires an Ad-Hoc mode AP" msgstr "WPA Ad-Hoc-autentisering kräver en Ad-Hoc-läges-AP" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:348 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:349 msgid "WPA Ad-Hoc authentication requires 'wpa' protocol" msgstr "WPA Ad-Hoc-autentisering kräver â€wpaâ€-protokoll" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:360 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:361 msgid "WPA Ad-Hoc authentication requires 'none' pairwise cipher" msgstr "WPA Ad-Hoc-autentisering kräver parvisa chiffret â€noneâ€" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:372 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:373 msgid "WPA Ad-Hoc requires 'tkip' group cipher" msgstr "WPA Ad-Hoc kräver â€tkipâ€-gruppchiffer" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:386 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:387 msgid "Access point does not support PSK but setting requires it" msgstr "Accesspunkten stöder inte PSK men inställningen kräver det" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:416 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:417 msgid "WPA-EAP authentication requires an 802.1x setting" msgstr "WPA-EAP-autentisering kräver en 802.1x-inställning" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:426 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:427 msgid "WPA-EAP requires 'open' authentication" msgstr "WPA-EAP kräver â€openâ€-autentisering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:437 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:438 msgid "802.1x setting requires 'wpa-eap' key management" msgstr "802.1x-inställning kräver â€wpa-eapâ€-nyckelhantering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:450 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:451 msgid "Access point does not support 802.1x but setting requires it" msgstr "Accesspunktsläget stödjer inte 802.1x men inställningen kräver det" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:478 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:479 msgid "" "Access point mode is Ad-Hoc but setting requires Infrastructure security" msgstr "" "Accesspunktsläget är Ad-Hoc men inställningen kräver infrastrukturssäkerhet" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:488 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:489 msgid "Ad-Hoc mode is incompatible with 802.1x security" msgstr "Ad-Hoc-läge är inkompatibelt med 802.1x-säkerhet" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:497 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:498 msgid "Ad-Hoc mode is incompatible with LEAP security" msgstr "Ad-Hoc-läge är inkompatibelt med LEAP-säkerhet" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:507 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:508 msgid "Ad-Hoc mode requires 'open' authentication" msgstr "Ad-Hoc-läge kräver â€openâ€-autentisering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:517 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:518 msgid "" "Access point mode is Infrastructure but setting requires Ad-Hoc security" msgstr "" "Accesspunktsläge är infrastruktur men inställning kräver Ad-Hoc-säkerhet" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:559 -#: ../src/devices/wifi/nm-wifi-ap-utils.c:589 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:560 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:590 #, c-format msgid "connection does not match access point" msgstr "anslutningen matchar inte med accesspunkten" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:613 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:614 msgid "Access point is unencrypted but setting specifies security" -msgstr "Accespunkt är okrypterad men inställning specificerar säkerhet" +msgstr "Accesspunkt är okrypterad men inställning specificerar säkerhet" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:702 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:703 msgid "" "WPA authentication is incompatible with non-EAP (original) LEAP or Dynamic " "WEP" @@ -7800,92 +8612,465 @@ msgstr "" "WPA-autentisering är inkompatibel med icke-EAP (original) LEAP eller " "dynamisk WEP" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:712 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:713 msgid "WPA authentication is incompatible with Shared Key authentication" msgstr "WPA-autentisering är inkompatibelt med delad nyckelautentisering" -#: ../src/devices/wifi/nm-wifi-ap-utils.c:759 +#: ../src/devices/wifi/nm-wifi-ap-utils.c:760 msgid "Failed to determine AP security information" msgstr "Misslyckades med att bestämma AP-säkerhetsinformation" -#: ../src/devices/wwan/nm-modem-broadband.c:471 +#: ../src/devices/wwan/nm-modem-broadband.c:527 msgid "GSM mobile broadband connection requires a 'gsm' setting" msgstr "GSM-mobil bredbandsanslutning kräver en â€gsmâ€-inställning" -#: ../src/nm-config.c:352 +#: ../src/nm-config.c:463 msgid "Config file location" msgstr "Plats för konfigurationsfil" -#: ../src/nm-config.c:352 -msgid "/path/to/config.file" -msgstr "/sökväg/till/konfigurations.fil" - -#: ../src/nm-config.c:353 +#: ../src/nm-config.c:464 msgid "Config directory location" msgstr "Plats för konfigurationskatalog" -#: ../src/nm-config.c:353 -msgid "/path/to/config/dir" -msgstr "/sökväg/till/konfiguration/katalog" +#: ../src/nm-config.c:465 +msgid "State file for no-auto-default devices" +msgstr "TillstÃ¥ndsfil för no-auto-default-enheter" -#: ../src/nm-config.c:355 +#: ../src/nm-config.c:466 msgid "List of plugins separated by ','" msgstr "Lista över insticksmoduler separerade med â€,â€" -#: ../src/nm-config.c:355 -msgid "plugin1,plugin2" -msgstr "insticksmodul1,insticksmodul2" +#: ../src/nm-config.c:467 +msgid "Quit after initial configuration" +msgstr "Avsluta efter inledande konfiguration" #. These three are hidden for now, and should eventually just go away. -#: ../src/nm-config.c:358 +#: ../src/nm-config.c:470 msgid "An http(s) address for checking internet connectivity" msgstr "En http(s)-adress för att kontrollera internetanslutning" -#: ../src/nm-config.c:359 +#: ../src/nm-config.c:471 msgid "The interval between connectivity checks (in seconds)" msgstr "Intervallet mellan anslutningskontroller (i sekunder)" -#: ../src/nm-config.c:360 +#: ../src/nm-config.c:472 msgid "The expected start of the response" msgstr "Den förväntade starten pÃ¥ svaret" -#: ../src/nm-config.c:360 -msgid "Bingo!" -msgstr "Bingo!" +#. Interface/IP config +#: ../src/nm-iface-helper.c:286 +msgid "The interface to manage" +msgstr "Gränssnittet att hantera" + +#: ../src/nm-iface-helper.c:286 +msgid "eth0" +msgstr "eth0" + +#: ../src/nm-iface-helper.c:287 +msgid "Connection UUID" +msgstr "UUID för anslutning" + +#: ../src/nm-iface-helper.c:287 +msgid "661e8cd0-b618-46b8-9dc9-31a52baaa16b" +msgstr "661e8cd0-b618-46b8-9dc9-31a52baaa16b" + +#: ../src/nm-iface-helper.c:288 +msgid "Whether to manage IPv6 SLAAC" +msgstr "Huruvida IPv6 SLAAC ska hanteras" + +#: ../src/nm-iface-helper.c:289 +msgid "Whether SLAAC must be successful" +msgstr "Huruvida SLAAC mÃ¥ste lyckas" + +#: ../src/nm-iface-helper.c:290 +msgid "Use an IPv6 temporary privacy address" +msgstr "Använd en temporär IPv6-adress för sekretess" + +#: ../src/nm-iface-helper.c:291 +msgid "Current DHCPv4 address" +msgstr "Aktuell DCHPv4-adress" + +#: ../src/nm-iface-helper.c:292 +msgid "Whether DHCPv4 must be successful" +msgstr "Huruvida DHCPv4 mÃ¥ste lyckas" + +#: ../src/nm-iface-helper.c:293 +msgid "Hex-encoded DHCPv4 client ID" +msgstr "Hexkodat DHCPv4 klient-ID" + +#: ../src/nm-iface-helper.c:294 +msgid "Hostname to send to DHCP server" +msgstr "Värdnamn att skicka till DHCP-server" + +#: ../src/nm-iface-helper.c:294 +msgid "barbar" +msgstr "barbar" + +#: ../src/nm-iface-helper.c:295 +msgid "Route priority for IPv4" +msgstr "Ruttprioritet för IPv4" + +#: ../src/nm-iface-helper.c:295 +msgid "0" +msgstr "0" + +#: ../src/nm-iface-helper.c:296 +msgid "Route priority for IPv6" +msgstr "Ruttprioritet för IPv6" + +#: ../src/nm-iface-helper.c:296 +msgid "1024" +msgstr "1024" + +#: ../src/nm-iface-helper.c:297 +msgid "Hex-encoded Interface Identifier" +msgstr "Hexkodad gränssnittsidentifierare" + +#: ../src/nm-iface-helper.c:317 +msgid "" +"nm-iface-helper is a small, standalone process that manages a single network " +"interface." +msgstr "" +"nm-iface-helper är en liten fristÃ¥ende process som hanterar ett enstaka " +"nätverksgränssnitt." + +#: ../src/nm-iface-helper.c:365 +#, c-format +msgid "An interface name and UUID are required\n" +msgstr "Kräver ett gränssnittsnamn och UUID\n" + +#: ../src/nm-iface-helper.c:371 +#, c-format +msgid "Failed to find interface index for %s (%s)\n" +msgstr "Misslyckades med att hitta gränssnittsindex för %s (%s)\n" + +#: ../src/nm-iface-helper.c:431 +#, c-format +msgid "(%s): Invalid IID %s\n" +msgstr "(%s): Ogiltig IID %s\n" -#: ../src/nm-logging.c:149 +#: ../src/nm-logging.c:137 #, c-format msgid "Unknown log level '%s'" msgstr "Okänd loggnivÃ¥ â€%sâ€" -#: ../src/nm-logging.c:231 +#: ../src/nm-logging.c:219 #, c-format msgid "Unknown log domain '%s'" msgstr "Okänd loggdomän â€%sâ€" -#: ../src/nm-manager.c:3363 +#: ../src/nm-manager.c:3423 msgid "VPN connection" msgstr "VPN-anslutning" -#: ../src/nm-sleep-monitor-systemd.c:114 +#: ../src/nm-sleep-monitor-systemd.c:115 msgid "NetworkManager needs to turn off networks" msgstr "Nätverkshanteraren behöver stänga av nätverk" -#: ../src/settings/plugins/ibft/plugin.c:65 -#, c-format -msgid "ibft: failed to read iscsiadm records: %s" -msgstr "ibft: misslyckades med att läsa iscsiadm-poster: %s" - -#: ../src/settings/plugins/ibft/plugin.c:73 -#, c-format -msgid "ibft: read connection '%s'" -msgstr "ibft: läste anslutning â€%sâ€" - -#: ../src/settings/plugins/ibft/plugin.c:79 -#, c-format -msgid "ibft: failed to read iscsiadm record: %s" -msgstr "ibft: misslyckades med att läsa iscsiadm-post: %s" - #: ../src/settings/plugins/ifcfg-rh/reader.c:112 msgid "System" msgstr "System" + +#~ msgid "property is empty'" +#~ msgstr "egenskap är tom'" + +#~ msgid "Master: " +#~ msgstr "Master: " + +#~ msgid "Connection(s) (name, UUID, path or apath): " +#~ msgstr "Anslutning(ar) (namn, UUID eller sökväg): " + +#~ msgid "Enable IGMP snooping %s" +#~ msgstr "Aktivera IGMP-avlyssning %s" + +#~ msgid "Error: 'multicast-snooping': %s.\n" +#~ msgstr "Fel: â€multicast-avlyssningâ€: %s.\n" + +#~ msgid "Error: don't know how to create '%s' setting." +#~ msgstr "Fel: vet inte hur man skapar en â€%sâ€-inställning." + +#~ msgid "" +#~ "Warning: 'type' is ignored. Use 'nmcli connection add \"%s\" ...' instead." +#~ msgstr "" +#~ "Varning: â€typeâ€-ignoreras. Använd 'nmcli connection add \"%s\"...' " +#~ "istället." + +#~ msgid "Error: redundant 'master' option." +#~ msgstr "Fel: redundant â€masterâ€-flagga." + +#~ msgid "Error: 'multicast-snooping': %s." +#~ msgstr "Fel: â€multicast-avlyssningâ€: %s." + +#~ msgid "Error: bad color: %s\n" +#~ msgstr "Fel: dÃ¥lig färg: %s\n" + +#~ msgid "incorrect string '%s' of '--order' option" +#~ msgstr "fel sträng â€%s†för flaggan â€--orderâ€" + +#~ msgid "incorrect item '%s' in '--order' option" +#~ msgstr "fel objekt â€%s†i flaggan â€--orderâ€" + +#~ msgid "'--order' argument is missing" +#~ msgstr "â€--orderâ€-argumentet saknas" + +#~ msgid "NM-PLUGIN-MISSING" +#~ msgstr "NH-INSTICK-SAKNAS" + +#, fuzzy +#~| msgid "PHYS-PORT-ID" +#~ msgid "PORT-ID" +#~ msgstr "FYSI-PORT-ID" + +#, fuzzy +#~| msgid "USERNAME" +#~ msgid "SYSTEM-NAME" +#~ msgstr "ANVÄNDARNAMN" + +#, fuzzy +#~| msgid "CAPABILITIES" +#~ msgid "SYSTEM-CAPABILITIES" +#~ msgstr "FÖRMÃ…GOR" + +#, fuzzy +#~| msgid "Error: failed to set hostname: %s" +#~ msgid "Error: Failed to setup a Wi-Fi hotspot: %s" +#~ msgstr "Fel: misslyckades med att sätta värdnamn: %s" + +#, fuzzy +#~| msgid "Error: failed to set hostname: %s" +#~ msgid "Error: Failed to setup a Wi-Fi hotspot" +#~ msgstr "Fel: misslyckades med att sätta värdnamn: %s" + +#, fuzzy +#~| msgid "Connection with UUID '%s' created and activated on device '%s'\n" +#~ msgid "Hotspot '%s' activated on device '%s'\n" +#~ msgstr "Anslutningen med UUID â€%s†skapad och aktiverad pÃ¥ enhet â€%sâ€\n" + +#, fuzzy +#~| msgid "Error: No connection specified." +#~ msgid "Error: No property specified." +#~ msgstr "Fel: Ingen anslutning angiven." + +#, fuzzy +#~| msgid "Error: %s argument is missing." +#~ msgid "Error: Argument missing." +#~ msgstr "Fel: %s-argument saknas." + +#, fuzzy +#~| msgid "Error: 'mode': %s." +#~ msgid "Error: 'managed': %s." +#~ msgstr "Fel: â€modeâ€: %s." + +#, fuzzy +#~| msgid "Error: invalid property '%s': %s." +#~ msgid "Error: property '%s' is not known." +#~ msgstr "Fel: ogiltig egenskap â€%sâ€: %s." + +#, fuzzy +#~| msgid "'%s' is not a valid PSK" +#~ msgid "'%s' is not valid WPA PSK" +#~ msgstr "â€%s†inte en giltig PSK" + +#, fuzzy +#~| msgid "'%s' length is invalid (should be 5 or 6 digits)" +#~ msgid "'%s' is not valid WEP key (it should be 5 or 13 ASCII chars)" +#~ msgstr "â€%sâ€-längden är ogiltig (ska vara 5 eller 6 siffror)" + +#, fuzzy +#~| msgid "Error: 'ssid' is required." +#~ msgid "Error: ssid is too long." +#~ msgstr "Fel: â€ssid†krävs." + +#, fuzzy +#~| msgid "" +#~| "Error: wep-key-type argument value '%s' is invalid, use 'key' or " +#~| "'phrase'." +#~ msgid "Error: band argument value '%s' is invalid; use 'a' or 'bg'." +#~ msgstr "" +#~ "Fel: wep-key-type-argumentvärdet â€%s†är ogiltigt, använd â€key†eller " +#~ "â€phraseâ€." + +#, fuzzy +#~| msgid "Unknown parameter: %s\n" +#~ msgid "Error: Unknown parameter %s." +#~ msgstr "Okänd parameter: %s\n" + +#, fuzzy +#~| msgid "Error: 'apn' is required." +#~ msgid "Error: channel requires band too." +#~ msgstr "Fel: â€apn†krävs." + +#, fuzzy +#~| msgid "Error: 'channel': '%s' is not valid; use <1-13>." +#~ msgid "Error: channel '%s' not valid for band '%s'." +#~ msgstr "Fel: â€channelâ€: â€%s†är inte giltigt; använd <1-13>." + +#, fuzzy +#~| msgid "Error: Device '%s' is not a Wi-Fi device." +#~ msgid "Error: Device '%s' supports neither AP nor Ad-Hoc mode." +#~ msgstr "Fel: Enheten â€%s†är inte en trÃ¥dlös enhet." + +#, fuzzy +#~| msgid "Error: invalid property '%s': %s." +#~ msgid "Error: Invalid 'password': %s." +#~ msgstr "Fel: ogiltig egenskap â€%sâ€: %s." + +#, fuzzy +#~| msgid "Unknown parameter: %s\n" +#~ msgid "Error: unknown parameter: %s" +#~ msgstr "Okänd parameter: %s\n" + +#, fuzzy +#~| msgid "Error: 'device status': %s" +#~ msgid "Error: 'device lldp list': %s" +#~ msgstr "Fel: â€device statusâ€: %s" + +#, fuzzy +#~| msgid "Error: 'device wifi' command '%s' is not valid." +#~ msgid "Error: 'device lldp' command '%s' is not valid." +#~ msgstr "Fel: â€device wifiâ€-kommandot â€%s†är inte giltigt." + +#, fuzzy +#~| msgid "GVRP, " +#~ msgid "MVRP, " +#~ msgstr "GVRP, " + +#~ msgid "yes (%u)" +#~ msgstr "yes (%u)" + +#, fuzzy +#~| msgid "invalid option '%s' or its value '%s'" +#~ msgid "invalid option '%s', use one of [%s]" +#~ msgstr "ogiltigt alternativ â€%s†eller dess värde â€%sâ€" + +#~ msgid "the property doesn't contain DNS option '%s'" +#~ msgstr "egenskapen stöder inte DNS-alternativet â€%sâ€" + +#~ msgid "'%s' is not a valid powersave value" +#~ msgstr "â€%s†är inte ett giltigt värde för powersave" + +#~ msgid "Enable IGMP snooping" +#~ msgstr "Aktivera IGMP-avlyssning" + +#~ msgid "Method returned type '%s', but expected '%s'" +#~ msgstr "Metoden returnerade typen â€%s†men förväntade sig â€%sâ€" + +#, fuzzy +#~| msgid "failed to read passwd-file '%s': %s" +#~ msgid "failed stat file %s: %s" +#~ msgstr "misslyckades med att läsa lösenordsfilen â€%sâ€: %s" + +#, fuzzy +#~| msgid "Could not load file '%s'\n" +#~ msgid "not a file (%s)" +#~ msgstr "Kunde inte läsa in filen: â€%sâ€\n" + +#, fuzzy +#~| msgid "invalid field '%s'; allowed fields: %s" +#~ msgid "invalid file owner %d for %s" +#~ msgstr "ogiltigt fält â€%sâ€; tillÃ¥tna fält: %s" + +#, fuzzy +#~| msgid "invalid int64 value (%s)" +#~ msgid "path is not absolute (%s)" +#~ msgstr "ogiltigt int64-värde (%s)" + +#, fuzzy +#~| msgid "'%s' is not a valid value for '%s'" +#~ msgid "Plugin is not a valid file (%s)" +#~ msgstr "â€%s†är inte ett giltigt värde för â€%sâ€" + +#, fuzzy +#~| msgid "missing option" +#~ msgid "missing filename" +#~ msgstr "saknat alternativ" + +#, fuzzy +#~| msgid "missing setting" +#~ msgid "missing \"plugin\" setting" +#~ msgstr "saknar inställning" + +#~ msgid "Hash length too long (%d > %d)." +#~ msgstr "Hashlängden för lÃ¥ng (%d > %d)." + +#, fuzzy +#~| msgid "The MACs of the device and the connection didn't match." +#~ msgid "The MACs of the device and the connection do not match." +#~ msgstr "MAC-adresserna för enheten och anslutningen matchade inte." + +#, fuzzy +#~| msgid "The device is lacking capabilities required by the connection." +#~ msgid "Device MAC (%s) is blacklisted by the connection." +#~ msgstr "Enheten saknar förmÃ¥gorna som krävs av anslutningen." + +#, fuzzy +#~| msgid "Quit after initial configuration" +#~ msgid "Modify persistent global DNS configuration" +#~ msgstr "Avsluta efter initial konfiguration" + +#, fuzzy +#~| msgid "" +#~| "System policy prevents modification of the persistent system hostname" +#~ msgid "" +#~ "System policy prevents modification of the persistent global DNS " +#~ "configuration" +#~ msgstr "" +#~ "Systemets policy förhindrar ändring av bestÃ¥ende värdnamn för systemet" + +#~ msgid "System config directory location" +#~ msgstr "Plats för systemkonfigurationskatalog" + +#~ msgid "Internal config file location" +#~ msgstr "Plats för intern konfigurationsfil" + +#~ msgid "" +#~ "The logging backend configuration value. See logging.backend in " +#~ "NetworkManager.conf" +#~ msgstr "" +#~ "Loggbakändens konfigurationsvärde. Se logging.backend i NetworkManager." +#~ "conf" + +#~ msgid "'%s' not allowed for %s=%s" +#~ msgstr "â€%s†inte tillÃ¥tet för %s=%s" + +#~ msgid "filename" +#~ msgstr "filnamn" + +#~ msgid "/path/to/state.file" +#~ msgstr "/sökväg/till/tillstÃ¥nds.fil" + +#~ msgid "/path/to/config.file" +#~ msgstr "/sökväg/till/konfigurations.fil" + +#~ msgid "/path/to/config/dir" +#~ msgstr "/sökväg/till/konfiguration/katalog" + +#~ msgid "plugin1,plugin2" +#~ msgstr "insticksmodul1,insticksmodul2" + +#~ msgid "Bingo!" +#~ msgstr "Bingo!" + +#~ msgid "Device '%s' has been disconnected.\n" +#~ msgstr "Enheten â€%s†kopplades frÃ¥n.\n" + +#~ msgid "'%s' is ambiguous (on x off)" +#~ msgstr "â€%s†är dubbeltydig (pÃ¥ x av)" + +#~ msgid "Slave connections need a valid '" +#~ msgstr "Slavanslutningar behöver en giltig â€" + +#~ msgid "Cannot set '" +#~ msgstr "Kan inte sätta â€" + +#~ msgid "State file %s parsing failed: (%d) %s\n" +#~ msgstr "Tolkning av tillstÃ¥ndsfilen %s misslyckades: (%d) %s\n" + +#~ msgid "ibft: failed to read iscsiadm records: %s" +#~ msgstr "ibft: misslyckades med att läsa iscsiadm-poster: %s" + +#~ msgid "ibft: read connection '%s'" +#~ msgstr "ibft: läste anslutning â€%sâ€" + +#~ msgid "ibft: failed to read iscsiadm record: %s" +#~ msgstr "ibft: misslyckades med att läsa iscsiadm-post: %s" diff --git a/po/ta.po b/po/ta.po index 9deb92f7..ff0fa9e5 100644 --- a/po/ta.po +++ b/po/ta.po @@ -6016,8 +6016,8 @@ msgstr "'%s'஠இணைபà¯à®ªà®¤à®±à¯à®•௠ஒர௠கடவà¯à®šà¯à® #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rஇணைகà¯à®•ிறதà¯" +msgid "Connecting" +msgstr "இணைகà¯à®•ிறதà¯" #: ../clients/nm-online.c:149 msgid "" @@ -7457,10 +7457,6 @@ msgstr "மதிபà¯à®ªà¯ '%d' ஆனத௠வரமà¯à®ªà®¿à®±à¯à®•௠à msgid "is not a valid MAC address" msgstr "எனà¯à®ªà®¤à¯ செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à®¾à®© MAC à®®à¯à®•வரியலà¯à®²" -#: ../libnm-core/nm-setting-cdma.c:149 ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "பணà¯à®ªà¯ காலியாக உளà¯à®³à®¤à¯'" - #: ../libnm-core/nm-setting-connection.c:747 #, c-format #| msgid "'%s' setting is required for the connection when the property is set" diff --git a/po/te.po b/po/te.po index ef7c8608..5114a23c 100644 --- a/po/te.po +++ b/po/te.po @@ -5467,8 +5467,8 @@ msgstr "" #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rà°…à°¨à±à°¸à°‚ధానమౌచà±à°¨à±à°¨à°¦à°¿" +msgid "Connecting" +msgstr "à°…à°¨à±à°¸à°‚ధానమౌచà±à°¨à±à°¨à°¦à°¿" #: ../clients/nm-online.c:149 msgid "" @@ -6974,10 +6974,6 @@ msgstr "విలà±à°µ '%d' విసà±à°¤à±ƒà°¤à°¿ <%d-%d> బయట à°µà±à° msgid "is not a valid MAC address" msgstr "చెలà±à°²à±à°¨à°Ÿà±à°µà°‚à°Ÿà°¿ MAC à°šà°¿à°°à±à°¨à°¾à°®à°¾ కాదà±" -#: ../libnm-core/nm-setting-cdma.c:164 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "లకà±à°·à°£à°‚ ఖాళీ'" - #: ../libnm-core/nm-setting-connection.c:740 #: ../libnm-util/nm-setting-connection.c:861 #, c-format diff --git a/po/tr.po b/po/tr.po index a6e45e30..3ab8c16f 100644 --- a/po/tr.po +++ b/po/tr.po @@ -5762,8 +5762,8 @@ msgstr "'%s' ağına baÄŸlanmak için parola gerekiyor." #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rBaÄŸlanıyor" +msgid "Connecting" +msgstr "BaÄŸlanıyor" #: ../clients/nm-online.c:149 #| msgid "Time to wait for a connection, in seconds (default is 30)" @@ -7250,10 +7250,6 @@ msgstr "'%d' deÄŸeri aralığın dışında <%d-%d>" msgid "is not a valid MAC address" msgstr "geçerli bir MAC adresi deÄŸildir" -#: ../libnm-core/nm-setting-cdma.c:147 ../libnm-util/nm-setting-cdma.c:168 -msgid "property is empty'" -msgstr "özellik boÅŸ'" - #: ../libnm-core/nm-setting-connection.c:745 #, c-format #| msgid "no device found for connection '%s'" diff --git a/po/uk.po b/po/uk.po index 0828e3ce..b73bce72 100644 --- a/po/uk.po +++ b/po/uk.po @@ -5986,8 +5986,8 @@ msgstr "Ð”Ð»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· «%s» Ñлід Ð #: ../clients/nm-online.c:96 #, c-format -msgid "\rConnecting" -msgstr "\rÐ’ÑтановлюєтьÑÑ Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ" +msgid "Connecting" +msgstr "Ð’ÑтановлюєтьÑÑ Ð·â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ" #: ../clients/nm-online.c:149 msgid "" @@ -7440,10 +7440,6 @@ msgstr "Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Â«%d» лежить поза діапазоном <%d-% msgid "is not a valid MAC address" msgstr "не Ñ” коректною MAC-адреÑою" -#: ../libnm-core/nm-setting-cdma.c:149 ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "влаÑтивіÑть Ñ” порожньою" - #: ../libnm-core/nm-setting-connection.c:747 #, c-format #| msgid "'%s' setting is required for the connection when the property is set" diff --git a/po/zh_CN.po b/po/zh_CN.po index 5579d7f0..c52f27ca 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -5138,10 +5138,6 @@ msgstr "'%d' 䏿˜¯è¯¥å±žæ€§æœ‰æ•ˆå€¼ï¼ˆåº”为 <= %d)" msgid "value '%d' is out of range <%d-%d>" msgstr "值 '%d' 在 <%d-%d> 范围之外 " -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "属性为空" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5789,7 +5785,7 @@ msgstr "桥接" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" +msgid "Connecting" msgstr "连接ä¸" #: ../test/nm-online.c:104 diff --git a/po/zh_TW.po b/po/zh_TW.po index cef76ef2..d8539a69 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -5127,10 +5127,6 @@ msgstr "'%d' 䏿˜¯å±¬æ€§åˆæ–¼è¦å®šçš„值(應該 <= %d)" msgid "value '%d' is out of range <%d-%d>" msgstr "'%d' 值è½åœ¨ç¯„åœä¹‹å¤– <%d-%d>" -#: ../libnm-util/nm-setting-cdma.c:170 -msgid "property is empty'" -msgstr "屬性為空" - #: ../libnm-util/nm-setting-connection.c:734 #, c-format msgid "'%s' doesn't match the virtual interface name '%s'" @@ -5778,7 +5774,7 @@ msgstr "橋接" #: ../test/nm-online.c:73 #, c-format -msgid "\rConnecting" +msgid "Connecting" msgstr "æ£åœ¨é€£ç·š" #: ../test/nm-online.c:104 diff --git a/policy/Makefile.in b/policy/Makefile.in index 69d4d9c4..6d503639 100644 --- a/policy/Makefile.in +++ b/policy/Makefile.in @@ -284,6 +284,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/src/Makefile.am b/src/Makefile.am index 7339058c..e8279e77 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -39,6 +39,7 @@ endif AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/callouts \ @@ -117,6 +118,7 @@ libsystemd_dhcp_la_SOURCES = \ libsystemd_dhcp_la_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ $(SYSTEMD_DHCP_CFLAGS) \ $(GLIB_CFLAGS) diff --git a/src/Makefile.in b/src/Makefile.in index 2b999969..34ba856c 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -654,6 +654,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -800,9 +801,10 @@ SUBDIRS = . devices/adsl dhcp-manager ppp-manager settings/plugins \ # add each subdirectory that contains a libNM source file. $(sort) is being used # primarily for its side effect of removing duplicates. -AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/libnm-core \ - -I$(top_builddir)/libnm-core -I$(top_srcdir)/callouts \ - -DPREFIX=\"$(prefix)\" -DG_LOG_DOMAIN=\""NetworkManager"\" \ +AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include \ + -I$(top_srcdir)/libnm-core -I$(top_builddir)/libnm-core \ + -I$(top_srcdir)/callouts -DPREFIX=\"$(prefix)\" \ + -DG_LOG_DOMAIN=\""NetworkManager"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE $(foreach \ d,$(sort $(dir \ @@ -888,6 +890,7 @@ libsystemd_dhcp_la_SOURCES = \ libsystemd_dhcp_la_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ $(SYSTEMD_DHCP_CFLAGS) \ $(GLIB_CFLAGS) diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c index 63741dc3..15e03276 100644 --- a/src/NetworkManagerUtils.c +++ b/src/NetworkManagerUtils.c @@ -1878,6 +1878,9 @@ remove_from_hash (GHashTable *s_hash, const char *s_name, const char *p_name) { + if (!p_hash) + return; + g_hash_table_remove (p_hash, p_name); if (g_hash_table_size (p_hash) == 0) g_hash_table_remove (s_hash, s_name); @@ -2033,6 +2036,85 @@ check_connection_mac_address (NMConnection *orig, return FALSE; } +static gboolean +check_connection_cloned_mac_address (NMConnection *orig, + NMConnection *candidate, + GHashTable *settings) +{ + GHashTable *props; + const char *orig_mac = NULL, *cand_mac = NULL; + NMSettingWired *s_wired_orig, *s_wired_cand; + + props = check_property_in_hash (settings, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_CLONED_MAC_ADDRESS); + if (!props) + return TRUE; + + /* If one of the MAC addresses is NULL, we accept that connection */ + s_wired_orig = nm_connection_get_setting_wired (orig); + if (s_wired_orig) + orig_mac = nm_setting_wired_get_cloned_mac_address (s_wired_orig); + + s_wired_cand = nm_connection_get_setting_wired (candidate); + if (s_wired_cand) + cand_mac = nm_setting_wired_get_cloned_mac_address (s_wired_cand); + + if (!orig_mac || !cand_mac) { + remove_from_hash (settings, props, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_CLONED_MAC_ADDRESS); + return TRUE; + } + return FALSE; +} + +static gboolean +check_connection_s390_props (NMConnection *orig, + NMConnection *candidate, + GHashTable *settings) +{ + GHashTable *props1, *props2, *props3; + NMSettingWired *s_wired_orig, *s_wired_cand; + + props1 = check_property_in_hash (settings, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_S390_SUBCHANNELS); + props2 = check_property_in_hash (settings, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_S390_NETTYPE); + props3 = check_property_in_hash (settings, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_S390_OPTIONS); + if (!props1 && !props2 && !props3) + return TRUE; + + /* If the generated connection did not contain wired setting, + * allow it to match to a connection with a wired setting, + * but default (empty) s390-* properties */ + s_wired_orig = nm_connection_get_setting_wired (orig); + s_wired_cand = nm_connection_get_setting_wired (candidate); + if (!s_wired_orig && s_wired_cand) { + const char * const *subchans = nm_setting_wired_get_s390_subchannels (s_wired_cand); + const char *nettype = nm_setting_wired_get_s390_nettype (s_wired_cand); + guint32 num_options = nm_setting_wired_get_num_s390_options (s_wired_cand); + + if ((!subchans || !*subchans) && !nettype && num_options == 0) { + remove_from_hash (settings, props1, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_S390_SUBCHANNELS); + remove_from_hash (settings, props2, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_S390_NETTYPE); + remove_from_hash (settings, props3, + NM_SETTING_WIRED_SETTING_NAME, + NM_SETTING_WIRED_S390_OPTIONS); + return TRUE; + } + } + return FALSE; +} + static NMConnection * check_possible_match (NMConnection *orig, NMConnection *candidate, @@ -2053,6 +2135,12 @@ check_possible_match (NMConnection *orig, if (!check_connection_mac_address (orig, candidate, settings)) return NULL; + if (!check_connection_cloned_mac_address (orig, candidate, settings)) + return NULL; + + if (!check_connection_s390_props (orig, candidate, settings)) + return NULL; + if (g_hash_table_size (settings) == 0) return candidate; else diff --git a/src/NetworkManagerUtils.h b/src/NetworkManagerUtils.h index 70f62d47..1b7d924a 100644 --- a/src/NetworkManagerUtils.h +++ b/src/NetworkManagerUtils.h @@ -188,7 +188,7 @@ struct _NMUtilsIPv6IfaceId { }; }; -#define NM_UTILS_IPV6_IFACE_ID_INIT { .id = 0 } +#define NM_UTILS_IPV6_IFACE_ID_INIT { { .id = 0 } } gboolean nm_utils_get_ipv6_interface_identifier (NMLinkType link_type, const guint8 *hwaddr, diff --git a/src/devices/adsl/Makefile.am b/src/devices/adsl/Makefile.am index 07a8f9ee..d7457c88 100644 --- a/src/devices/adsl/Makefile.am +++ b/src/devices/adsl/Makefile.am @@ -8,6 +8,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/devices \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-adsl"\" \ diff --git a/src/devices/adsl/Makefile.in b/src/devices/adsl/Makefile.in index 6f7fe174..b6e944f8 100644 --- a/src/devices/adsl/Makefile.in +++ b/src/devices/adsl/Makefile.in @@ -341,6 +341,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -487,6 +488,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/devices \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-adsl"\" \ diff --git a/src/devices/bluetooth/Makefile.am b/src/devices/bluetooth/Makefile.am index 8ab561ac..e6e378f0 100644 --- a/src/devices/bluetooth/Makefile.am +++ b/src/devices/bluetooth/Makefile.am @@ -10,11 +10,13 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/src/devices/wwan \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-bluetooth"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ + $(GLIB_CFLAGS) \ $(DBUS_CFLAGS) GLIB_GENERATED = nm-bt-enum-types.h nm-bt-enum-types.c diff --git a/src/devices/bluetooth/Makefile.in b/src/devices/bluetooth/Makefile.in index 6233a751..bdc3b5cb 100644 --- a/src/devices/bluetooth/Makefile.in +++ b/src/devices/bluetooth/Makefile.in @@ -361,6 +361,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -504,12 +505,12 @@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = -I${top_srcdir}/src -I${top_builddir}/src \ -I${top_srcdir}/src/devices -I${top_srcdir}/src/settings \ -I${top_srcdir}/src/platform -I${top_srcdir}/src/devices/wwan \ - -I${top_srcdir}/include -I${top_builddir}/libnm-core \ - -I${top_srcdir}/libnm-core \ + -I${top_srcdir}/include -I$(top_builddir)/include \ + -I${top_builddir}/libnm-core -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-bluetooth"\" \ -DNETWORKMANAGER_COMPILATION \ - -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE $(DBUS_CFLAGS) \ - $(am__append_1) + -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE $(GLIB_CFLAGS) \ + $(DBUS_CFLAGS) $(am__append_1) GLIB_GENERATED = nm-bt-enum-types.h nm-bt-enum-types.c GLIB_MKENUMS_H_FLAGS = --identifier-prefix NM GLIB_MKENUMS_C_FLAGS = --identifier-prefix NM diff --git a/src/devices/bluetooth/nm-bluez-device.c b/src/devices/bluetooth/nm-bluez-device.c index d5426052..89ad8270 100644 --- a/src/devices/bluetooth/nm-bluez-device.c +++ b/src/devices/bluetooth/nm-bluez-device.c @@ -603,8 +603,10 @@ nm_bluez_device_connect_finish (NMBluezDevice *self, return NULL; device = (const char *) g_simple_async_result_get_op_res_gpointer (simple); - if (device && priv->bluez_version == 5) + if (device && priv->bluez_version == 5) { priv->connected = TRUE; + g_object_notify (G_OBJECT (self), NM_BLUEZ_DEVICE_CONNECTED); + } return device; } diff --git a/src/devices/nm-device-bond.c b/src/devices/nm-device-bond.c index 7f139424..afcba3b3 100644 --- a/src/devices/nm-device-bond.c +++ b/src/devices/nm-device-bond.c @@ -572,6 +572,7 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, { const char *iface = nm_connection_get_interface_name (connection); NMPlatformError plerr; + const NMPlatformLink *plink; g_assert (iface); @@ -584,14 +585,15 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, nm_platform_error_to_string (plerr)); return NULL; } + plink = nm_platform_link_get_by_ifname (NM_PLATFORM_GET, iface); return (NMDevice *) g_object_new (NM_TYPE_DEVICE_BOND, - NM_DEVICE_IFACE, iface, - NM_DEVICE_DRIVER, "bonding", - NM_DEVICE_TYPE_DESC, "Bond", - NM_DEVICE_DEVICE_TYPE, NM_DEVICE_TYPE_BOND, - NM_DEVICE_IS_MASTER, TRUE, - NULL); + NM_DEVICE_PLATFORM_DEVICE, plink, + NM_DEVICE_DRIVER, "bonding", + NM_DEVICE_TYPE_DESC, "Bond", + NM_DEVICE_DEVICE_TYPE, NM_DEVICE_TYPE_BOND, + NM_DEVICE_IS_MASTER, TRUE, + NULL); } NM_DEVICE_FACTORY_DEFINE_INTERNAL (BOND, Bond, bond, diff --git a/src/devices/nm-device-bridge.c b/src/devices/nm-device-bridge.c index e1cafd60..d6435530 100644 --- a/src/devices/nm-device-bridge.c +++ b/src/devices/nm-device-bridge.c @@ -498,6 +498,7 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, const char *mac_address_str; guint8 mac_address[NM_UTILS_HWADDR_LEN_MAX]; NMPlatformError plerr; + const NMPlatformLink *plink; g_assert (iface); @@ -523,9 +524,10 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, nm_platform_error_to_string (plerr)); return NULL; } + plink = nm_platform_link_get_by_ifname (NM_PLATFORM_GET, iface); return (NMDevice *) g_object_new (NM_TYPE_DEVICE_BRIDGE, - NM_DEVICE_IFACE, iface, + NM_DEVICE_PLATFORM_DEVICE, plink, NM_DEVICE_DRIVER, "bridge", NM_DEVICE_TYPE_DESC, "Bridge", NM_DEVICE_DEVICE_TYPE, NM_DEVICE_TYPE_BRIDGE, diff --git a/src/devices/nm-device-ethernet.c b/src/devices/nm-device-ethernet.c index beb86e11..8a023843 100644 --- a/src/devices/nm-device-ethernet.c +++ b/src/devices/nm-device-ethernet.c @@ -560,15 +560,18 @@ build_supplicant_config (NMDeviceEthernet *self) NMSupplicantConfig *config = NULL; NMSetting8021x *security; NMConnection *connection; + guint32 mtu; connection = nm_device_get_connection (NM_DEVICE (self)); g_assert (connection); con_uuid = nm_connection_get_uuid (connection); + mtu = nm_platform_link_get_mtu (NM_PLATFORM_GET, + nm_device_get_ifindex (NM_DEVICE (self))); config = nm_supplicant_config_new (); security = nm_connection_get_setting_802_1x (connection); - if (!nm_supplicant_config_add_setting_8021x (config, security, con_uuid, TRUE)) { + if (!nm_supplicant_config_add_setting_8021x (config, security, con_uuid, mtu, TRUE)) { _LOGW (LOGD_DEVICE, "Couldn't add 802.1X security setting to supplicant config."); g_object_unref (config); config = NULL; @@ -1195,15 +1198,22 @@ wake_on_lan_enable (NMDevice *device) value = nm_config_data_get_connection_default (NM_CONFIG_GET_DATA, "ethernet.wake-on-lan", device); + if (value) { wol = _nm_utils_ascii_str_to_int64 (value, 10, NM_SETTING_WIRED_WAKE_ON_LAN_NONE, - NM_SETTING_WIRED_WAKE_ON_LAN_ALL, + G_MAXINT32, NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT); + + if ( NM_FLAGS_ANY (wol, NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS) + && !nm_utils_is_power_of_two (wol)) { + nm_log_dbg (LOGD_ETHER, "invalid default value %u for wake-on-lan", (guint) wol); + wol = NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT; + } if (wol != NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT) goto found; } - wol = NM_SETTING_WIRED_WAKE_ON_LAN_NONE; + wol = NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE; found: return nmp_utils_ethtool_set_wake_on_lan (nm_device_get_iface (device), wol, password); } @@ -1474,6 +1484,7 @@ new_default_connection (NMDevice *self) NM_SETTING_CONNECTION_ID, defname, NM_SETTING_CONNECTION_TYPE, NM_SETTING_WIRED_SETTING_NAME, NM_SETTING_CONNECTION_AUTOCONNECT, TRUE, + NM_SETTING_CONNECTION_AUTOCONNECT_PRIORITY, NM_SETTING_CONNECTION_AUTOCONNECT_PRIORITY_MIN, NM_SETTING_CONNECTION_UUID, uuid, NM_SETTING_CONNECTION_TIMESTAMP, (guint64) time (NULL), NULL); diff --git a/src/devices/nm-device-infiniband.c b/src/devices/nm-device-infiniband.c index 2d519f61..c1571fd9 100644 --- a/src/devices/nm-device-infiniband.c +++ b/src/devices/nm-device-infiniband.c @@ -327,6 +327,7 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, int p_key, parent_ifindex; const char *iface; NMPlatformError plerr; + const NMPlatformLink *plink; if (!NM_IS_DEVICE_INFINIBAND (parent)) { g_set_error (error, NM_DEVICE_ERROR, NM_DEVICE_ERROR_CREATION_FAILED, @@ -352,9 +353,10 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, nm_platform_error_to_string (plerr)); return NULL; } + plink = nm_platform_link_get_by_ifname (NM_PLATFORM_GET, iface); return (NMDevice *) g_object_new (NM_TYPE_DEVICE_INFINIBAND, - NM_DEVICE_IFACE, iface, + NM_DEVICE_PLATFORM_DEVICE, plink, NM_DEVICE_DRIVER, nm_device_get_driver (parent), NM_DEVICE_TYPE_DESC, "InfiniBand", NM_DEVICE_DEVICE_TYPE, NM_DEVICE_TYPE_INFINIBAND, diff --git a/src/devices/nm-device-vlan.c b/src/devices/nm-device-vlan.c index e523e6bb..b330397f 100644 --- a/src/devices/nm-device-vlan.c +++ b/src/devices/nm-device-vlan.c @@ -56,6 +56,7 @@ typedef struct { NMDevice *parent; guint parent_state_id; + guint parent_hwaddr_id; int vlan_id; } NMDeviceVlanPrivate; @@ -88,6 +89,36 @@ parent_state_changed (NMDevice *parent, } static void +parent_hwaddr_changed (NMDevice *parent, + GParamSpec *pspec, + gpointer user_data) +{ + NMDeviceVlan *self = NM_DEVICE_VLAN (user_data); + NMConnection *connection; + NMSettingWired *s_wired; + const char *cloned_mac = NULL; + + /* Never touch assumed devices */ + if (nm_device_uses_assumed_connection (self)) + return; + + connection = nm_device_get_connection (self); + if (!connection) + return; + + /* Update the VLAN MAC only if configuration does not specify one */ + s_wired = nm_connection_get_setting_wired (connection); + if (s_wired) + cloned_mac = nm_setting_wired_get_cloned_mac_address (s_wired); + + if (!cloned_mac) { + _LOGD (LOGD_VLAN, "parent hardware address changed"); + nm_device_set_hw_addr (self, nm_device_get_hw_address (parent), + "set", LOGD_VLAN); + } +} + +static void nm_device_vlan_set_parent (NMDeviceVlan *self, NMDevice *parent, gboolean construct) { NMDeviceVlanPrivate *priv = NM_DEVICE_VLAN_GET_PRIVATE (self); @@ -96,10 +127,8 @@ nm_device_vlan_set_parent (NMDeviceVlan *self, NMDevice *parent, gboolean constr if (parent == priv->parent) return; - if (priv->parent_state_id) { - g_signal_handler_disconnect (priv->parent, priv->parent_state_id); - priv->parent_state_id = 0; - } + nm_clear_g_signal_handler (priv->parent, &priv->parent_state_id); + nm_clear_g_signal_handler (priv->parent, &priv->parent_hwaddr_id); g_clear_object (&priv->parent); if (parent) { @@ -109,6 +138,9 @@ nm_device_vlan_set_parent (NMDeviceVlan *self, NMDevice *parent, gboolean constr G_CALLBACK (parent_state_changed), device); + priv->parent_hwaddr_id = g_signal_connect (priv->parent, "notify::" NM_DEVICE_HW_ADDRESS, + G_CALLBACK (parent_hwaddr_changed), device); + /* Set parent-dependent unmanaged flag */ if (construct) { nm_device_set_initial_unmanaged_flag (device, @@ -666,6 +698,7 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, NMSettingVlan *s_vlan; gs_free char *iface = NULL; NMPlatformError plerr; + const NMPlatformLink *plink; if (!NM_IS_DEVICE (parent)) { g_set_error_literal (error, NM_DEVICE_ERROR, NM_DEVICE_ERROR_CREATION_FAILED, @@ -696,9 +729,10 @@ create_virtual_device_for_connection (NMDeviceFactory *factory, nm_platform_error_to_string (plerr)); return NULL; } + plink = nm_platform_link_get_by_ifname (NM_PLATFORM_GET, iface); device = (NMDevice *) g_object_new (NM_TYPE_DEVICE_VLAN, - NM_DEVICE_IFACE, iface, + NM_DEVICE_PLATFORM_DEVICE, plink, NM_DEVICE_VLAN_INT_PARENT_DEVICE, parent, NM_DEVICE_DRIVER, "8021q", NM_DEVICE_TYPE_DESC, "VLAN", diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index 58895821..9b69d5ab 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -95,6 +95,7 @@ enum { REMOVED, RECHECK_AUTO_ACTIVATE, RECHECK_ASSUME, + LINK_INITIALIZED, LAST_SIGNAL, }; static guint signals[LAST_SIGNAL] = { 0 }; @@ -342,6 +343,7 @@ typedef struct { /* master interface for bridge/bond/team slave */ NMDevice * master; gboolean enslaved; + gboolean master_ready_handled; guint master_ready_id; /* slave management */ @@ -1142,8 +1144,9 @@ nm_device_finish_init (NMDevice *self) /* Do not manage externally created software devices until they are IFF_UP */ if ( NM_DEVICE_GET_CLASS (self)->can_unmanaged_external_down (self) - && !nm_platform_link_is_up (NM_PLATFORM_GET, priv->ifindex) - && priv->ifindex > 0) + && priv->ifindex > 0 + && ( !priv->up + || !priv->platform_link_initialized)) nm_device_set_initial_unmanaged_flag (self, NM_UNMANAGED_EXTERNAL_DOWN, TRUE); if (priv->master) @@ -1158,8 +1161,8 @@ nm_device_finish_init (NMDevice *self) * Currently it can happen that NM deletes 127.0.0.1 address. */ nm_device_set_initial_unmanaged_flag (self, NM_UNMANAGED_DEFAULT, TRUE); } else if (priv->platform_link_initialized || (priv->is_nm_owned && nm_device_is_software (self))) { - nm_platform_link_get_unmanaged (NM_PLATFORM_GET, priv->ifindex, &platform_unmanaged); - nm_device_set_initial_unmanaged_flag (self, NM_UNMANAGED_DEFAULT, platform_unmanaged); + if (nm_platform_link_get_unmanaged (NM_PLATFORM_GET, priv->ifindex, &platform_unmanaged)) + nm_device_set_initial_unmanaged_flag (self, NM_UNMANAGED_DEFAULT, platform_unmanaged); } else { /* Hardware and externally-created software links stay unmanaged * until they are fully initialized by the platform. NM created @@ -1322,9 +1325,7 @@ nm_device_set_carrier (NMDevice *self, gboolean carrier) link_disconnect_action_cancel (self); klass->carrier_changed (self, TRUE); - if (priv->carrier_wait_id) { - g_source_remove (priv->carrier_wait_id); - priv->carrier_wait_id = 0; + if (nm_clear_g_source (&priv->carrier_wait_id)) { nm_device_remove_pending_action (self, "carrier wait", TRUE); _carrier_wait_check_queued_act_request (self); } @@ -1373,6 +1374,8 @@ device_link_changed (NMDevice *self) NMPlatformLink info; const NMPlatformLink *pllink; int ifindex; + gboolean emit_link_initialized = FALSE; + gboolean was_up; priv->device_link_changed_id = 0; @@ -1448,8 +1451,29 @@ device_link_changed (NMDevice *self) if (ip_ifname_changed) update_dynamic_ip_setup (self); - if (priv->up != NM_FLAGS_HAS (info.flags, IFF_UP)) { - priv->up = NM_FLAGS_HAS (info.flags, IFF_UP); + if (priv->ifindex > 0 && !priv->platform_link_initialized && info.initialized) { + priv->platform_link_initialized = TRUE; + + if (nm_platform_link_get_unmanaged (NM_PLATFORM_GET, priv->ifindex, &platform_unmanaged)) { + nm_device_set_unmanaged (self, + NM_UNMANAGED_DEFAULT, + platform_unmanaged, + NM_DEVICE_STATE_REASON_USER_REQUESTED); + } + + nm_device_set_unmanaged (self, + NM_UNMANAGED_PLATFORM_INIT, + FALSE, + NM_DEVICE_STATE_REASON_NOW_MANAGED); + + emit_link_initialized = TRUE; + } + + was_up = priv->up; + priv->up = NM_FLAGS_HAS (info.flags, IFF_UP); + + if ( priv->platform_link_initialized + && (emit_link_initialized || priv->up != was_up)) { /* Manage externally-created software interfaces only when they are IFF_UP */ g_assert (priv->ifindex > 0); @@ -1491,21 +1515,8 @@ device_link_changed (NMDevice *self) } } - if (priv->ifindex > 0 && !priv->platform_link_initialized && info.initialized) { - priv->platform_link_initialized = TRUE; - - if (nm_platform_link_get_unmanaged (NM_PLATFORM_GET, priv->ifindex, &platform_unmanaged)) { - nm_device_set_unmanaged (self, - NM_UNMANAGED_DEFAULT, - platform_unmanaged, - NM_DEVICE_STATE_REASON_USER_REQUESTED); - } - - nm_device_set_unmanaged (self, - NM_UNMANAGED_PLATFORM_INIT, - FALSE, - NM_DEVICE_STATE_REASON_NOW_MANAGED); - } + if (emit_link_initialized) + g_signal_emit (self, signals[LINK_INITIALIZED], 0); return G_SOURCE_REMOVE; } @@ -1894,9 +1905,10 @@ nm_device_slave_notify_enslave (NMDevice *self, gboolean success) if (activating) { priv->ip4_state = IP_DONE; priv->ip6_state = IP_DONE; - nm_device_queue_state (self, - success ? NM_DEVICE_STATE_SECONDARIES : NM_DEVICE_STATE_FAILED, - NM_DEVICE_STATE_REASON_NONE); + if (success) + nm_device_queue_state (self, NM_DEVICE_STATE_SECONDARIES, NM_DEVICE_STATE_REASON_NONE); + else + nm_device_queue_state (self, NM_DEVICE_STATE_FAILED, NM_DEVICE_STATE_REASON_UNKNOWN); } else nm_device_queue_recheck_assume (self); } @@ -2613,19 +2625,23 @@ activation_source_schedule (NMDevice *self, GSourceFunc func, int family) act_source_func = &priv->act_source_func; } - if (*act_source_id) - _LOGE (LOGD_DEVICE, "activation stage already scheduled"); - - /* Don't bother rescheduling the same function that's about to - * run anyway. Fixes issues with crappy wireless drivers sending - * streams of associate events before NM has had a chance to process - * the first one. - */ - if (!*act_source_id || (*act_source_func != func)) { - activation_source_clear (self, TRUE, family); - *act_source_id = g_idle_add (func, self); - *act_source_func = func; + if (*act_source_id) { + if (*act_source_func == func) { + /* Don't bother rescheduling the same function that's about to + * run anyway. Fixes issues with crappy wireless drivers sending + * streams of associate events before NM has had a chance to process + * the first one. + */ + _LOGD (LOGD_DEVICE, "activation stage already scheduled"); + return; + } else { + _LOGW (LOGD_DEVICE, "a different activation stage already scheduled"); + activation_source_clear (self, TRUE, family); + } } + + *act_source_id = g_idle_add (func, self); + *act_source_func = func; } static gboolean @@ -2655,19 +2671,22 @@ get_ip_config_may_fail (NMDevice *self, int family) } static void -master_ready_cb (NMActiveConnection *active, - GParamSpec *pspec, - NMDevice *self) +master_ready (NMDevice *self, + NMActiveConnection *active) { NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE (self); NMActiveConnection *master; - g_assert (priv->state == NM_DEVICE_STATE_PREPARE); + g_return_if_fail (priv->state == NM_DEVICE_STATE_PREPARE); + g_return_if_fail (!priv->master_ready_handled); /* Notify a master device that it has a new slave */ - g_assert (nm_active_connection_get_master_ready (active)); + g_return_if_fail (nm_active_connection_get_master_ready (active)); master = nm_active_connection_get_master (active); + priv->master_ready_handled = TRUE; + nm_clear_g_signal_handler (active, &priv->master_ready_id); + priv->master = g_object_ref (nm_active_connection_get_device (master)); nm_device_master_add_slave (priv->master, self, @@ -2676,11 +2695,14 @@ master_ready_cb (NMActiveConnection *active, _LOGD (LOGD_DEVICE, "master connection ready; master device %s", nm_device_get_iface (priv->master)); - if (priv->master_ready_id) { - g_signal_handler_disconnect (active, priv->master_ready_id); - priv->master_ready_id = 0; - } +} +static void +master_ready_cb (NMActiveConnection *active, + GParamSpec *pspec, + NMDevice *self) +{ + master_ready (self, active); nm_device_activate_schedule_stage2_device_config (self); } @@ -2728,23 +2750,7 @@ nm_device_activate_stage1_device_prepare (gpointer user_data) g_assert (ret == NM_ACT_STAGE_RETURN_SUCCESS); } - if (nm_active_connection_get_master (active)) { - /* If the master connection is ready for slaves, attach ourselves */ - if (nm_active_connection_get_master_ready (active)) - master_ready_cb (active, NULL, self); - else { - _LOGD (LOGD_DEVICE, "waiting for master connection to become ready"); - - /* Attach a signal handler and wait for the master connection to begin activating */ - g_assert (priv->master_ready_id == 0); - priv->master_ready_id = g_signal_connect (active, - "notify::" NM_ACTIVE_CONNECTION_INT_MASTER_READY, - (GCallback) master_ready_cb, - self); - /* Postpone */ - } - } else - nm_device_activate_schedule_stage2_device_config (self); + nm_device_activate_schedule_stage2_device_config (self); out: _LOGD (LOGD_DEVICE, "Activation: Stage 1 of 5 (Device Prepare) complete."); @@ -2862,6 +2868,31 @@ nm_device_activate_schedule_stage2_device_config (NMDevice *self) priv = NM_DEVICE_GET_PRIVATE (self); g_return_if_fail (priv->act_request); + if (!priv->master_ready_handled) { + NMActiveConnection *active = NM_ACTIVE_CONNECTION (priv->act_request); + + if (!nm_active_connection_get_master (active)) { + g_warn_if_fail (!priv->master_ready_id); + priv->master_ready_handled = TRUE; + } else { + /* If the master connection is ready for slaves, attach ourselves */ + if (nm_active_connection_get_master_ready (active)) + master_ready (self, active); + else { + _LOGD (LOGD_DEVICE, "waiting for master connection to become ready"); + + if (priv->master_ready_id == 0) { + priv->master_ready_id = g_signal_connect (active, + "notify::" NM_ACTIVE_CONNECTION_INT_MASTER_READY, + (GCallback) master_ready_cb, + self); + } + /* Postpone */ + return; + } + } + } + activation_source_schedule (self, nm_device_activate_stage2_device_config, 0); _LOGD (LOGD_DEVICE, "Activation: Stage 2 of 5 (Device Configure) scheduled..."); @@ -3467,6 +3498,16 @@ dhcp4_fail (NMDevice *self, gboolean timeout) return; } + /* Instead of letting an assumed connection fail (which means that the + * device will transition to the ACTIVATED state without IP configuration), + * retry DHCP again. + */ + if (nm_device_uses_assumed_connection (self)) { + _LOGI (LOGD_DHCP4, "Scheduling DHCPv4 restart because the connection is assumed"); + priv->dhcp4_restart_id = g_timeout_add_seconds (120, dhcp4_restart_cb, self); + return; + } + if (timeout || (priv->ip4_state == IP_CONF)) nm_device_activate_schedule_ip4_config_timeout (self); else if (priv->ip4_state == IP_DONE) @@ -4141,6 +4182,16 @@ dhcp6_fail (NMDevice *self, gboolean timeout) return; } + /* Instead of letting an assumed connection fail (which means that the + * device will transition to the ACTIVATED state without IP configuration), + * retry DHCP again. + */ + if (nm_device_uses_assumed_connection (self)) { + _LOGI (LOGD_DHCP6, "Scheduling DHCPv6 restart because the connection is assumed"); + priv->dhcp6_restart_id = g_timeout_add_seconds (120, dhcp6_restart_cb, self); + return; + } + if (timeout || (priv->ip6_state == IP_CONF)) nm_device_activate_schedule_ip6_config_timeout (self); else if (priv->ip6_state == IP_DONE) @@ -4513,7 +4564,12 @@ linklocal6_start (NMDevice *self) check_and_add_ipv6ll_addr (self); - priv->linklocal6_timeout_id = g_timeout_add_seconds (5, linklocal6_timeout_cb, self); + /* Depending on the network and what the 'dad_transmits' and 'retrans_time_ms' + * sysctl values are, DAD for the IPv6LL address may take quite a while. + * FIXME: use dad/retrans sysctl values if they are higher than a minimum time. + * (rh #1101809) + */ + priv->linklocal6_timeout_id = g_timeout_add_seconds (15, linklocal6_timeout_cb, self); return NM_ACT_STAGE_RETURN_POSTPONE; } @@ -5060,7 +5116,6 @@ act_stage3_ip6_config_start (NMDevice *self, NMDeviceStateReason *reason) { NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE (self); - const char *ip_iface; NMActStageReturn ret = NM_ACT_STAGE_RETURN_FAILURE; NMConnection *connection; const char *method; @@ -5071,8 +5126,6 @@ act_stage3_ip6_config_start (NMDevice *self, g_return_val_if_fail (reason != NULL, NM_ACT_STAGE_RETURN_FAILURE); - ip_iface = nm_device_get_ip_iface (self); - connection = nm_device_get_connection (self); g_assert (connection); @@ -5347,11 +5400,13 @@ nm_device_activate_stage3_ip_config_start (gpointer user_data) } /* IPv4 */ - if (!nm_device_activate_stage3_ip4_start (self)) + if ( nm_device_activate_ip4_state_in_wait (self) + && !nm_device_activate_stage3_ip4_start (self)) goto out; /* IPv6 */ - if (!nm_device_activate_stage3_ip6_start (self)) + if ( nm_device_activate_ip6_state_in_wait (self) + && !nm_device_activate_stage3_ip6_start (self)) goto out; nm_device_check_ip_failed (self, TRUE); @@ -6003,10 +6058,8 @@ clear_act_request (NMDevice *self) nm_active_connection_set_default (NM_ACTIVE_CONNECTION (priv->act_request), FALSE); - if (priv->master_ready_id) { - g_signal_handler_disconnect (priv->act_request, priv->master_ready_id); - priv->master_ready_id = 0; - } + priv->master_ready_handled = FALSE; + nm_clear_g_signal_handler (priv->act_request, &priv->master_ready_id); g_clear_object (&priv->act_request); g_object_notify (G_OBJECT (self), NM_DEVICE_ACTIVE_CONNECTION); @@ -6302,7 +6355,7 @@ _carrier_wait_check_queued_act_request (NMDevice *self) priv->queued_act_request_is_waiting_for_carrier = FALSE; if (!priv->carrier) { _LOGD (LOGD_DEVICE, "Cancel queued activation request as we have no carrier after timeout"); - g_clear_object (&priv->queued_act_request); + _clear_queued_act_request (priv); } else { _LOGD (LOGD_DEVICE, "Activate queued activation request as we now have carrier"); queued_req = priv->queued_act_request; @@ -6326,6 +6379,8 @@ _carrier_wait_check_act_request_must_queue (NMDevice *self, NMActRequest *req) return FALSE; connection = nm_act_request_get_connection (req); + if (!connection_requires_carrier (connection)) + return FALSE; if (!nm_device_check_connection_available (self, connection, NM_DEVICE_CHECK_CON_AVAILABLE_ALL, NULL)) { /* We passed all @flags we have, and no @specific_object. @@ -6457,7 +6512,6 @@ nm_device_set_ip4_config (NMDevice *self, NMDeviceStateReason *reason) { NMDevicePrivate *priv; - const char *ip_iface; NMIP4Config *old_config = NULL; gboolean has_changes = FALSE; gboolean success = TRUE; @@ -6467,7 +6521,6 @@ nm_device_set_ip4_config (NMDevice *self, g_return_val_if_fail (NM_IS_DEVICE (self), FALSE); priv = NM_DEVICE_GET_PRIVATE (self); - ip_iface = nm_device_get_ip_iface (self); ip_ifindex = nm_device_get_ip_ifindex (self); old_config = priv->ip4_config; @@ -6592,7 +6645,6 @@ nm_device_set_ip6_config (NMDevice *self, NMDeviceStateReason *reason) { NMDevicePrivate *priv; - const char *ip_iface; NMIP6Config *old_config = NULL; gboolean has_changes = FALSE; gboolean success = TRUE; @@ -6602,7 +6654,6 @@ nm_device_set_ip6_config (NMDevice *self, g_return_val_if_fail (NM_IS_DEVICE (self), FALSE); priv = NM_DEVICE_GET_PRIVATE (self); - ip_iface = nm_device_get_ip_iface (self); ip_ifindex = nm_device_get_ip_ifindex (self); old_config = priv->ip6_config; @@ -7058,9 +7109,7 @@ nm_device_bring_up (NMDevice *self, gboolean block, gboolean *no_firmware) * a timeout is reached. */ if (nm_device_has_capability (self, NM_DEVICE_CAP_CARRIER_DETECT)) { - if (priv->carrier_wait_id) - g_source_remove (priv->carrier_wait_id); - else + if (!nm_clear_g_source (&priv->carrier_wait_id)) nm_device_add_pending_action (self, "carrier wait", TRUE); priv->carrier_wait_id = g_timeout_add_seconds (5, carrier_wait_timeout, self); } @@ -8032,16 +8081,23 @@ _cleanup_generic_post (NMDevice *self, CleanupType cleanup_type) NMDeviceStateReason ignored = NM_DEVICE_STATE_REASON_NONE; priv->default_route.v4_has = FALSE; - priv->default_route.v4_is_assumed = TRUE; priv->default_route.v6_has = FALSE; - priv->default_route.v6_is_assumed = TRUE; - priv->v4_commit_first_time = TRUE; - priv->v6_commit_first_time = TRUE; + if (cleanup_type == CLEANUP_TYPE_DECONFIGURE) { + priv->default_route.v4_is_assumed = FALSE; + priv->default_route.v6_is_assumed = FALSE; + nm_default_route_manager_ip4_update_default_route (nm_default_route_manager_get (), self); + nm_default_route_manager_ip6_update_default_route (nm_default_route_manager_get (), self); + } + priv->default_route.v4_is_assumed = TRUE; + priv->default_route.v6_is_assumed = TRUE; nm_default_route_manager_ip4_update_default_route (nm_default_route_manager_get (), self); nm_default_route_manager_ip6_update_default_route (nm_default_route_manager_get (), self); + priv->v4_commit_first_time = TRUE; + priv->v6_commit_first_time = TRUE; + /* Clean up IP configs; this does not actually deconfigure the * interface; the caller must flush routes and addresses explicitly. */ @@ -8206,15 +8262,9 @@ nm_device_spawn_iface_helper (NMDevice *self) dhcp4_address = find_dhcp4_address (self); method = nm_utils_get_ip_config_method (connection, NM_TYPE_SETTING_IP4_CONFIG); - if ( priv->ip4_config - && priv->ip4_state == IP_DONE - && g_strcmp0 (method, NM_SETTING_IP4_CONFIG_METHOD_AUTO) == 0 - && priv->dhcp4_client - && dhcp4_address) { + if (g_strcmp0 (method, NM_SETTING_IP4_CONFIG_METHOD_AUTO) == 0) { NMSettingIPConfig *s_ip4; - GBytes *client_id; char *hex_client_id; - const char *hostname; s_ip4 = nm_connection_get_setting_ip4_config (connection); g_assert (s_ip4); @@ -8227,29 +8277,30 @@ nm_device_spawn_iface_helper (NMDevice *self) if (nm_setting_ip_config_get_may_fail (s_ip4) == FALSE) g_ptr_array_add (argv, g_strdup ("--dhcp4-required")); - client_id = nm_dhcp_client_get_client_id (priv->dhcp4_client); - if (client_id) { - g_ptr_array_add (argv, g_strdup ("--dhcp4-clientid")); - hex_client_id = bin2hexstr (g_bytes_get_data (client_id, NULL), - g_bytes_get_size (client_id)); - g_ptr_array_add (argv, hex_client_id); - } + if (priv->dhcp4_client) { + const char *hostname; + GBytes *client_id; + + client_id = nm_dhcp_client_get_client_id (priv->dhcp4_client); + if (client_id) { + g_ptr_array_add (argv, g_strdup ("--dhcp4-clientid")); + hex_client_id = bin2hexstr (g_bytes_get_data (client_id, NULL), + g_bytes_get_size (client_id)); + g_ptr_array_add (argv, hex_client_id); + } - hostname = nm_dhcp_client_get_hostname (priv->dhcp4_client); - if (hostname) { - g_ptr_array_add (argv, g_strdup ("--dhcp4-hostname")); - g_ptr_array_add (argv, g_strdup (hostname)); + hostname = nm_dhcp_client_get_hostname (priv->dhcp4_client); + if (hostname) { + g_ptr_array_add (argv, g_strdup ("--dhcp4-hostname")); + g_ptr_array_add (argv, g_strdup (hostname)); + } } configured = TRUE; } method = nm_utils_get_ip_config_method (connection, NM_TYPE_SETTING_IP6_CONFIG); - if ( priv->ip6_config - && priv->ip6_state == IP_DONE - && g_strcmp0 (method, NM_SETTING_IP6_CONFIG_METHOD_AUTO) == 0 - && priv->rdisc - && priv->ac_ip6_config) { + if (g_strcmp0 (method, NM_SETTING_IP6_CONFIG_METHOD_AUTO) == 0) { NMSettingIPConfig *s_ip6; char *hex_iid; NMUtilsIPv6IfaceId iid = NM_UTILS_IPV6_IFACE_ID_INIT; @@ -8611,6 +8662,14 @@ _set_state_full (NMDevice *self, nm_dispatcher_call (DISPATCHER_ACTION_UP, nm_act_request_get_connection (req), self, NULL, NULL, NULL); break; case NM_DEVICE_STATE_FAILED: + /* Usually upon failure the activation chain is interrupted in + * one of the stages; but in some cases the device fails for + * external events (as a failure of master connection) while + * the activation sequence is running and so we need to ensure + * that the chain is terminated here. + */ + _cancel_activation (self); + if (nm_device_uses_assumed_connection (self)) { /* Avoid tearing down assumed connection, assume it's connected */ nm_device_queue_state (self, @@ -9195,10 +9254,7 @@ dispose (GObject *object) g_hash_table_remove_all (priv->available_connections); - if (priv->carrier_wait_id) { - g_source_remove (priv->carrier_wait_id); - priv->carrier_wait_id = 0; - } + nm_clear_g_source (&priv->carrier_wait_id); _clear_queued_act_request (priv); @@ -9822,6 +9878,13 @@ nm_device_class_init (NMDeviceClass *klass) 0, NULL, NULL, NULL, G_TYPE_NONE, 0); + signals[LINK_INITIALIZED] = + g_signal_new (NM_DEVICE_LINK_INITIALIZED, + G_OBJECT_CLASS_TYPE (object_class), + G_SIGNAL_RUN_FIRST, + 0, NULL, NULL, NULL, + G_TYPE_NONE, 0); + nm_dbus_manager_register_exported_type (nm_dbus_manager_get (), G_TYPE_FROM_CLASS (klass), &dbus_glib_nm_device_object_info); diff --git a/src/devices/nm-device.h b/src/devices/nm-device.h index e9d5b948..49cef8e1 100644 --- a/src/devices/nm-device.h +++ b/src/devices/nm-device.h @@ -74,6 +74,7 @@ #define NM_DEVICE_REMOVED "removed" #define NM_DEVICE_RECHECK_AUTO_ACTIVATE "recheck-auto-activate" #define NM_DEVICE_RECHECK_ASSUME "recheck-assume" +#define NM_DEVICE_LINK_INITIALIZED "link-initialized" G_BEGIN_DECLS diff --git a/src/devices/team/Makefile.am b/src/devices/team/Makefile.am index 6fea9b3f..46c5fe1d 100644 --- a/src/devices/team/Makefile.am +++ b/src/devices/team/Makefile.am @@ -8,6 +8,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/devices \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-team"\" \ diff --git a/src/devices/team/Makefile.in b/src/devices/team/Makefile.in index 342c41ee..7305b05a 100644 --- a/src/devices/team/Makefile.in +++ b/src/devices/team/Makefile.in @@ -345,6 +345,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -487,8 +488,8 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = -I${top_srcdir}/src -I${top_builddir}/src \ -I${top_srcdir}/src/devices -I${top_srcdir}/src/platform \ - -I${top_srcdir}/include -I${top_builddir}/libnm-core \ - -I${top_srcdir}/libnm-core \ + -I${top_srcdir}/include -I$(top_builddir)/include \ + -I${top_builddir}/libnm-core -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-team"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE $(DBUS_CFLAGS) \ diff --git a/src/devices/team/nm-device-team.c b/src/devices/team/nm-device-team.c index 09b2dd7d..1950fd2a 100644 --- a/src/devices/team/nm-device-team.c +++ b/src/devices/team/nm-device-team.c @@ -710,6 +710,7 @@ nm_device_team_new_for_connection (NMConnection *connection, GError **error) { const char *iface = nm_connection_get_interface_name (connection); NMPlatformError plerr; + const NMPlatformLink *plink; g_assert (iface); @@ -722,9 +723,10 @@ nm_device_team_new_for_connection (NMConnection *connection, GError **error) nm_platform_error_to_string (plerr)); return NULL; } + plink = nm_platform_link_get_by_ifname (NM_PLATFORM_GET, iface); return (NMDevice *) g_object_new (NM_TYPE_DEVICE_TEAM, - NM_DEVICE_IFACE, iface, + NM_DEVICE_PLATFORM_DEVICE, plink, NM_DEVICE_DRIVER, "team", NM_DEVICE_TYPE_DESC, "Team", NM_DEVICE_DEVICE_TYPE, NM_DEVICE_TYPE_TEAM, diff --git a/src/devices/wifi/Makefile.am b/src/devices/wifi/Makefile.am index 230c00ac..4ac59e3d 100644 --- a/src/devices/wifi/Makefile.am +++ b/src/devices/wifi/Makefile.am @@ -12,6 +12,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/src/supplicant-manager \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-wifi"\" \ diff --git a/src/devices/wifi/Makefile.in b/src/devices/wifi/Makefile.in index b679bfc2..82ebad74 100644 --- a/src/devices/wifi/Makefile.in +++ b/src/devices/wifi/Makefile.in @@ -385,6 +385,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -534,6 +535,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/src/supplicant-manager \ -I${top_srcdir}/include \ + -I$(top_builddir)/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-wifi"\" \ diff --git a/src/devices/wifi/nm-device-wifi-glue.h b/src/devices/wifi/nm-device-wifi-glue.h index 3d0f63db..8f8da2af 100644 --- a/src/devices/wifi/nm-device-wifi-glue.h +++ b/src/devices/wifi/nm-device-wifi-glue.h @@ -74,9 +74,9 @@ dbus_glib_marshal_nm_device_wifi_BOOLEAN__POINTER_POINTER (GClosure *closure gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_BOOLEAN__POINTER_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_BOOLEAN__POINTER_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; gboolean v_return; g_return_if_fail (return_value != NULL); @@ -121,9 +121,9 @@ dbus_glib_marshal_nm_device_wifi_VOID__BOXED_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__BOXED_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__BOXED_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); diff --git a/src/devices/wifi/nm-device-wifi.c b/src/devices/wifi/nm-device-wifi.c index dde743b1..15d41206 100644 --- a/src/devices/wifi/nm-device-wifi.c +++ b/src/devices/wifi/nm-device-wifi.c @@ -499,7 +499,7 @@ update_seen_bssids_cache (NMDeviceWifi *self, NMAccessPoint *ap) } static void -set_current_ap (NMDeviceWifi *self, NMAccessPoint *new_ap, gboolean recheck_available_connections, gboolean force_remove_old_ap) +set_current_ap (NMDeviceWifi *self, NMAccessPoint *new_ap, gboolean recheck_available_connections) { NMDeviceWifiPrivate *priv; NMAccessPoint *old_ap; @@ -530,7 +530,7 @@ set_current_ap (NMDeviceWifi *self, NMAccessPoint *new_ap, gboolean recheck_avai if (old_ap) { NM80211Mode mode = nm_ap_get_mode (old_ap); - if (force_remove_old_ap || mode == NM_802_11_MODE_ADHOC || mode == NM_802_11_MODE_AP || nm_ap_get_fake (old_ap)) { + if (mode == NM_802_11_MODE_ADHOC || mode == NM_802_11_MODE_AP || nm_ap_get_fake (old_ap)) { remove_access_point (self, old_ap); if (recheck_available_connections) nm_device_recheck_available_connections (NM_DEVICE (self)); @@ -629,7 +629,7 @@ periodic_update (NMDeviceWifi *self, NMAccessPoint *ignore_ap) new_bssid ? new_bssid : "(none)", new_ssid ? nm_utils_escape_ssid (new_ssid->data, new_ssid->len) : "(none)"); - set_current_ap (self, new_ap, TRUE, FALSE); + set_current_ap (self, new_ap, TRUE); } new_rate = nm_platform_wifi_get_rate (NM_PLATFORM_GET, ifindex); @@ -690,7 +690,7 @@ remove_all_aps (NMDeviceWifi *self) NMDeviceWifiPrivate *priv = NM_DEVICE_WIFI_GET_PRIVATE (self); if (priv->ap_list) { - set_current_ap (self, NULL, FALSE, FALSE); + set_current_ap (self, NULL, FALSE); while (priv->ap_list) remove_access_point (self, NM_AP (priv->ap_list->data)); @@ -728,7 +728,7 @@ deactivate (NMDevice *device) * was non-broadcasting or something) get rid of it, because 'fake' * APs should only live for as long as we're connected to them. **/ - set_current_ap (self, NULL, TRUE, FALSE); + set_current_ap (self, NULL, TRUE); /* Clear any critical protocol notification in the Wi-Fi stack */ nm_platform_wifi_indicate_addressing_running (NM_PLATFORM_GET, ifindex, FALSE); @@ -958,8 +958,6 @@ complete_connection (NMDevice *device, NMDeviceWifi *self = NM_DEVICE_WIFI (device); NMDeviceWifiPrivate *priv = NM_DEVICE_WIFI_GET_PRIVATE (self); NMSettingWireless *s_wifi; - NMSettingWirelessSecurity *s_wsec; - NMSetting8021x *s_8021x; const char *setting_mac; char *str_ssid = NULL; NMAccessPoint *ap = NULL; @@ -971,8 +969,6 @@ complete_connection (NMDevice *device, const char *perm_hw_addr; s_wifi = nm_connection_get_setting_wireless (connection); - s_wsec = nm_connection_get_setting_wireless_security (connection); - s_8021x = nm_connection_get_setting_802_1x (connection); if (!specific_object) { /* If not given a specific object, we need at minimum an SSID */ @@ -1548,6 +1544,9 @@ request_wireless_scan (NMDeviceWifi *self, GHashTable *scan_options) static gboolean request_wireless_scan_periodic (gpointer user_data) { + NMDeviceWifiPrivate *priv = NM_DEVICE_WIFI_GET_PRIVATE (user_data); + + priv->pending_scan_id = 0; request_wireless_scan (user_data, NULL); return FALSE; } @@ -1650,7 +1649,7 @@ try_fill_ssid_for_hidden_ap (NMAccessPoint *ap) g_return_if_fail (nm_ap_get_ssid (ap) == NULL); bssid = nm_ap_get_address (ap); - g_assert (bssid); + g_return_if_fail (bssid); /* Look for this AP's BSSID in the seen-bssids list of a connection, * and if a match is found, copy over the SSID */ @@ -1692,11 +1691,9 @@ merge_scanned_ap (NMDeviceWifi *self, NMDeviceWifiPrivate *priv = NM_DEVICE_WIFI_GET_PRIVATE (self); NMAccessPoint *found_ap = NULL; const GByteArray *ssid; - const char *bssid; gboolean strict_match = TRUE; /* Let the manager try to fill in the SSID from seen-bssids lists */ - bssid = nm_ap_get_address (merge_ap); ssid = nm_ap_get_ssid (merge_ap); if (!ssid || nm_utils_is_empty_ssid (ssid->data, ssid->len)) { /* Try to fill the SSID from the AP database */ @@ -1706,12 +1703,12 @@ merge_scanned_ap (NMDeviceWifi *self, if (ssid && (nm_utils_is_empty_ssid (ssid->data, ssid->len) == FALSE)) { /* Yay, matched it, no longer treat as hidden */ _LOGD (LOGD_WIFI_SCAN, "matched hidden AP %s => '%s'", - str_if_set (bssid, "(none)"), nm_utils_escape_ssid (ssid->data, ssid->len)); + nm_ap_get_address (merge_ap), nm_utils_escape_ssid (ssid->data, ssid->len)); nm_ap_set_broadcast (merge_ap, FALSE); } else { /* Didn't have an entry for this AP in the database */ _LOGD (LOGD_WIFI_SCAN, "failed to match hidden AP %s", - str_if_set (bssid, "(none)")); + nm_ap_get_address (merge_ap)); } } @@ -1730,7 +1727,7 @@ merge_scanned_ap (NMDeviceWifi *self, if (found_ap) { _LOGD (LOGD_WIFI_SCAN, "merging AP '%s' %s (%p) with existing (%p)", ssid ? nm_utils_escape_ssid (ssid->data, ssid->len) : "(none)", - str_if_set (bssid, "(none)"), + nm_ap_get_address (merge_ap), merge_ap, found_ap); @@ -1753,7 +1750,7 @@ merge_scanned_ap (NMDeviceWifi *self, /* New entry in the list */ _LOGD (LOGD_WIFI_SCAN, "adding new AP '%s' %s (%p)", ssid ? nm_utils_escape_ssid (ssid->data, ssid->len) : "(none)", - str_if_set (bssid, "(none)"), merge_ap); + nm_ap_get_address (merge_ap), merge_ap); g_object_ref (merge_ap); priv->ap_list = g_slist_prepend (priv->ap_list, merge_ap); @@ -1872,7 +1869,7 @@ supplicant_iface_new_bss_cb (NMSupplicantInterface *iface, merge_scanned_ap (self, ap); g_object_unref (ap); } else - _LOGW (LOGD_WIFI_SCAN, "invalid AP properties received"); + _LOGD (LOGD_WIFI_SCAN, "invalid AP properties received for %s", object_path); /* Remove outdated access points */ schedule_scanlist_cull (self); @@ -2010,11 +2007,21 @@ link_timeout_cb (gpointer user_data) /* If the access point failed, and wasn't found by the supplicant when it * attempted to reconnect, then it's probably out of range or turned off. - * Remove it from the list and if it's actually still present, it'll be - * found in the next scan. */ - if (priv->ssid_found == FALSE && priv->current_ap) - set_current_ap (self, NULL, TRUE, TRUE); + if (priv->ssid_found == FALSE && priv->current_ap) { + NMAccessPoint *old_ap = g_object_ref (priv->current_ap); + + set_current_ap (self, NULL, TRUE); + + /* If it was an external entity and the supplicant doesn't know about + * it, remove it from the scan list. If it's still around, it'll get + * found in the next scan. + */ + if ( nm_ap_get_mode (old_ap) == NM_802_11_MODE_INFRA + && g_object_get_data (G_OBJECT (old_ap), WPAS_REMOVED_TAG)) + remove_access_point (self, old_ap); + g_object_unref (old_ap); + } nm_device_state_changed (device, NM_DEVICE_STATE_FAILED, @@ -2486,13 +2493,16 @@ build_supplicant_config (NMDeviceWifi *self, if (s_wireless_sec) { NMSetting8021x *s_8021x; const char *con_uuid = nm_connection_get_uuid (connection); + guint32 mtu = nm_platform_link_get_mtu (NM_PLATFORM_GET, + nm_device_get_ifindex (NM_DEVICE (self))); g_assert (con_uuid); s_8021x = nm_connection_get_setting_802_1x (connection); if (!nm_supplicant_config_add_setting_wireless_security (config, s_wireless_sec, s_8021x, - con_uuid)) { + con_uuid, + mtu)) { _LOGE (LOGD_WIFI, "Couldn't add 802-11-wireless-security setting to supplicant config."); goto error; } @@ -2609,14 +2619,14 @@ act_stage1_prepare (NMDevice *device, NMDeviceStateReason *reason) priv->ap_list = g_slist_prepend (priv->ap_list, ap); nm_ap_export_to_dbus (ap); g_object_freeze_notify (G_OBJECT (self)); - set_current_ap (self, ap, FALSE, FALSE); + set_current_ap (self, ap, FALSE); emit_ap_added_removed (self, ACCESS_POINT_ADDED, ap, TRUE); g_object_thaw_notify (G_OBJECT (self)); nm_active_connection_set_specific_object (NM_ACTIVE_CONNECTION (req), nm_ap_get_dbus_path (ap)); return NM_ACT_STAGE_RETURN_SUCCESS; done: - set_current_ap (self, ap, TRUE, FALSE); + set_current_ap (self, ap, TRUE); return NM_ACT_STAGE_RETURN_SUCCESS; } @@ -3004,10 +3014,10 @@ done: * then the fake one and reset it. Reset the fake current_ap to NULL * now, which will remove the fake ap. **/ - set_current_ap (self, NULL, TRUE, FALSE); + set_current_ap (self, NULL, TRUE); } - /* No need to update seen BSSIDs cache, that is done by set_current_ap() already */ + update_seen_bssids_cache (self, priv->current_ap); /* Reset scan interval to something reasonable */ priv->scan_interval = SCAN_INTERVAL_MIN + (SCAN_INTERVAL_STEP * 2); diff --git a/src/devices/wifi/nm-wifi-ap-utils.c b/src/devices/wifi/nm-wifi-ap-utils.c index 9ac7052e..1a772fb7 100644 --- a/src/devices/wifi/nm-wifi-ap-utils.c +++ b/src/devices/wifi/nm-wifi-ap-utils.c @@ -549,11 +549,11 @@ nm_ap_utils_complete_connection (const GByteArray *ap_ssid, s_8021x = nm_connection_get_setting_802_1x (connection); /* Fill in missing SSID */ - ap_ssid_bytes = g_bytes_new (ap_ssid->data, ap_ssid->len); + ap_ssid_bytes = ap_ssid ? g_bytes_new (ap_ssid->data, ap_ssid->len) : NULL; ssid = nm_setting_wireless_get_ssid (s_wifi); if (!ssid) g_object_set (G_OBJECT (s_wifi), NM_SETTING_WIRELESS_SSID, ap_ssid_bytes, NULL); - else if (!g_bytes_equal (ssid, ap_ssid_bytes)) { + else if (!ap_ssid_bytes || !g_bytes_equal (ssid, ap_ssid_bytes)) { g_set_error_literal (error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_INVALID_PROPERTY, diff --git a/src/devices/wifi/nm-wifi-ap.c b/src/devices/wifi/nm-wifi-ap.c index 1485f4c1..72430021 100644 --- a/src/devices/wifi/nm-wifi-ap.c +++ b/src/devices/wifi/nm-wifi-ap.c @@ -476,9 +476,10 @@ nm_ap_new_from_properties (const char *supplicant_path, GVariant *properties) nm_ap_set_supplicant_path (ap, supplicant_path); - /* ignore APs with invalid BSSIDs */ + /* ignore APs with invalid or missing BSSIDs */ addr = nm_ap_get_address (ap); - if ( nm_utils_hwaddr_matches (addr, -1, bad_bssid1, ETH_ALEN) + if ( !addr + || nm_utils_hwaddr_matches (addr, -1, bad_bssid1, ETH_ALEN) || nm_utils_hwaddr_matches (addr, -1, bad_bssid2, ETH_ALEN)) { g_object_unref (ap); return NULL; diff --git a/src/devices/wifi/tests/Makefile.am b/src/devices/wifi/tests/Makefile.am index 2a7d7849..f76bdbf5 100644 --- a/src/devices/wifi/tests/Makefile.am +++ b/src/devices/wifi/tests/Makefile.am @@ -1,5 +1,6 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I${top_srcdir}/src/platform \ diff --git a/src/devices/wifi/tests/Makefile.in b/src/devices/wifi/tests/Makefile.in index f807ee77..f2488c7d 100644 --- a/src/devices/wifi/tests/Makefile.in +++ b/src/devices/wifi/tests/Makefile.in @@ -511,6 +511,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -653,6 +654,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I${top_srcdir}/src/platform \ diff --git a/src/devices/wifi/tests/test-wifi-ap-utils.c b/src/devices/wifi/tests/test-wifi-ap-utils.c index 3c405e26..26e130c4 100644 --- a/src/devices/wifi/tests/test-wifi-ap-utils.c +++ b/src/devices/wifi/tests/test-wifi-ap-utils.c @@ -1364,10 +1364,10 @@ main (int argc, char **argv) test_open_ap_leap_connection_1); g_test_add_func ("/wifi/open_ap/leap_connection/2", test_open_ap_leap_connection_2); - g_test_add_data_func ("/wifi/open_ap/wep_connection", + g_test_add_data_func ("/wifi/open_ap/wep_connection_true", (gconstpointer) TRUE, test_open_ap_wep_connection); - g_test_add_data_func ("/wifi/open_ap/wep_connection", + g_test_add_data_func ("/wifi/open_ap/wep_connection_false", (gconstpointer) FALSE, test_open_ap_wep_connection); @@ -1441,104 +1441,57 @@ main (int argc, char **argv) (gconstpointer) IDX_PRIV, test_ap_wpa_eap_connection_5); +#define ADD_FUNC(func) do { \ + gchar *name_idx = g_strdup_printf ("/wifi/wpa_psk/" G_STRINGIFY (func) "/%zd", i); \ + g_test_add_data_func (name_idx, (gconstpointer) i, func); \ + g_free (name_idx); \ + } while (0) + /* WPA-PSK tests */ for (i = IDX_WPA_PSK_PTKIP_GTKIP; i <= IDX_WPA_RSN_PSK_PCCMP_GCCMP; i++) { - g_test_add_data_func ("/wifi/wpa_psk/empty_connection", - (gconstpointer) i, - test_wpa_ap_empty_connection); - g_test_add_data_func ("/wifi/wpa_psk/leap_connection/1", - (gconstpointer) i, - test_wpa_ap_leap_connection_1); - g_test_add_data_func ("/wifi/wpa_psk/leap_connection/2", - (gconstpointer) i, - test_wpa_ap_leap_connection_2); - - g_test_add_data_func ("/wifi/wpa_psk/dynamic_wep_connection", - (gconstpointer) i, - test_wpa_ap_dynamic_wep_connection); - - g_test_add_data_func ("/wifi/wpa_psk/wpa_psk_connection/1", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_1); - g_test_add_data_func ("/wifi/wpa_psk/wpa_psk_connection/2", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_2); - g_test_add_data_func ("/wifi/wpa_psk/wpa_psk_connection/3", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_3); - g_test_add_data_func ("/wifi/wpa_psk/wpa_psk_connection/4", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_4); - g_test_add_data_func ("/wifi/wpa_psk/wpa_psk_connection/5", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_5); - - g_test_add_data_func ("/wifi/wpa_psk/wpa_eap_connection/1", - (gconstpointer) i, - test_ap_wpa_eap_connection_1); - g_test_add_data_func ("/wifi/wpa_psk/wpa_eap_connection/2", - (gconstpointer) i, - test_ap_wpa_eap_connection_2); - g_test_add_data_func ("/wifi/wpa_psk/wpa_eap_connection/3", - (gconstpointer) i, - test_ap_wpa_eap_connection_3); - g_test_add_data_func ("/wifi/wpa_psk/wpa_eap_connection/4", - (gconstpointer) i, - test_ap_wpa_eap_connection_4); - g_test_add_data_func ("/wifi/wpa_psk/wpa_eap_connection/5", - (gconstpointer) i, - test_ap_wpa_eap_connection_5); + ADD_FUNC(test_wpa_ap_empty_connection); + ADD_FUNC(test_wpa_ap_leap_connection_1); + ADD_FUNC(test_wpa_ap_leap_connection_2); + ADD_FUNC(test_wpa_ap_dynamic_wep_connection); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_1); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_2); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_3); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_4); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_5); + ADD_FUNC(test_ap_wpa_eap_connection_1); + ADD_FUNC(test_ap_wpa_eap_connection_2); + ADD_FUNC(test_ap_wpa_eap_connection_3); + ADD_FUNC(test_ap_wpa_eap_connection_4); + ADD_FUNC(test_ap_wpa_eap_connection_5); } +#undef ADD_FUNC +#define ADD_FUNC(func) do { \ + gchar *name_idx = g_strdup_printf ("/wifi/rsn_psk/" G_STRINGIFY (func) "/%zd", i); \ + g_test_add_data_func (name_idx, (gconstpointer) i, func); \ + g_free (name_idx); \ + } while (0) + /* RSN-PSK tests */ for (i = IDX_WPA_RSN_PSK_PTKIP_PCCMP_GTKIP; i <= IDX_RSN_PSK_PTKIP_PCCMP_GTKIP; i++) { - g_test_add_data_func ("/wifi/rsn_psk/empty_connection", - (gconstpointer) i, - test_wpa_ap_empty_connection); - g_test_add_data_func ("/wifi/rsn_psk/leap_connection/1", - (gconstpointer) i, - test_wpa_ap_leap_connection_1); - g_test_add_data_func ("/wifi/rsn_psk/leap_connection/2", - (gconstpointer) i, - test_wpa_ap_leap_connection_2); - - g_test_add_data_func ("/wifi/rsn_psk/dynamic_wep_connection", - (gconstpointer) i, - test_wpa_ap_dynamic_wep_connection); - - g_test_add_data_func ("/wifi/rsn_psk/wpa_psk_connection/1", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_1); - g_test_add_data_func ("/wifi/rsn_psk/wpa_psk_connection/2", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_2); - g_test_add_data_func ("/wifi/rsn_psk/wpa_psk_connection/3", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_3); - g_test_add_data_func ("/wifi/rsn_psk/wpa_psk_connection/4", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_4); - g_test_add_data_func ("/wifi/rsn_psk/wpa_psk_connection/5", - (gconstpointer) i, - test_wpa_ap_wpa_psk_connection_5); - - g_test_add_data_func ("/wifi/rsn_psk/wpa_eap_connection/1", - (gconstpointer) i, - test_ap_wpa_eap_connection_1); - g_test_add_data_func ("/wifi/rsn_psk/wpa_eap_connection/2", - (gconstpointer) i, - test_ap_wpa_eap_connection_2); - g_test_add_data_func ("/wifi/rsn_psk/wpa_eap_connection/3", - (gconstpointer) i, - test_ap_wpa_eap_connection_3); - g_test_add_data_func ("/wifi/rsn_psk/wpa_eap_connection/4", - (gconstpointer) i, - test_ap_wpa_eap_connection_4); - g_test_add_data_func ("/wifi/rsn_psk/wpa_eap_connection/5", - (gconstpointer) i, - test_ap_wpa_eap_connection_5); + ADD_FUNC(test_wpa_ap_empty_connection); + ADD_FUNC(test_wpa_ap_leap_connection_1); + ADD_FUNC(test_wpa_ap_leap_connection_2); + ADD_FUNC(test_wpa_ap_dynamic_wep_connection); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_1); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_2); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_3); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_4); + ADD_FUNC(test_wpa_ap_wpa_psk_connection_5); + ADD_FUNC(test_ap_wpa_eap_connection_1); + ADD_FUNC(test_ap_wpa_eap_connection_2); + ADD_FUNC(test_ap_wpa_eap_connection_3); + ADD_FUNC(test_ap_wpa_eap_connection_4); + ADD_FUNC(test_ap_wpa_eap_connection_5); } +#undef ADD_FUNC + /* Scanned signal strength conversion tests */ g_test_add_func ("/wifi/strength/dbm", test_strength_dbm); diff --git a/src/devices/wimax/Makefile.am b/src/devices/wimax/Makefile.am index 555b5ff2..0ecd1158 100644 --- a/src/devices/wimax/Makefile.am +++ b/src/devices/wimax/Makefile.am @@ -4,6 +4,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/devices \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-wimax"\" \ diff --git a/src/devices/wimax/Makefile.in b/src/devices/wimax/Makefile.in index 8ad4b4e2..b1b57a79 100644 --- a/src/devices/wimax/Makefile.in +++ b/src/devices/wimax/Makefile.in @@ -339,6 +339,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -485,6 +486,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/devices \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -I${top_builddir}/libnm-core \ -I${top_srcdir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-wimax"\" \ diff --git a/src/devices/wwan/Makefile.am b/src/devices/wwan/Makefile.am index 7e5b190b..055b07b9 100644 --- a/src/devices/wwan/Makefile.am +++ b/src/devices/wwan/Makefile.am @@ -9,12 +9,14 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/settings \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/include \ - -I${top_builddir}/libnm-core \ + -I$(top_builddir)/include \ -I${top_srcdir}/libnm-core \ + -I${top_builddir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-wwan"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ $(DBUS_CFLAGS) \ + $(GLIB_CFLAGS) \ $(MM_GLIB_CFLAGS) BUILT_SOURCES = $(null) diff --git a/src/devices/wwan/Makefile.in b/src/devices/wwan/Makefile.in index 227c622f..571b1b7d 100644 --- a/src/devices/wwan/Makefile.in +++ b/src/devices/wwan/Makefile.in @@ -350,6 +350,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -497,12 +498,14 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src/settings \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/include \ - -I${top_builddir}/libnm-core \ + -I$(top_builddir)/include \ -I${top_srcdir}/libnm-core \ + -I${top_builddir}/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-wwan"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ $(DBUS_CFLAGS) \ + $(GLIB_CFLAGS) \ $(MM_GLIB_CFLAGS) BUILT_SOURCES = $(null) $(GLIB_GENERATED) nm-device-modem-glue.h diff --git a/src/devices/wwan/nm-modem-broadband.c b/src/devices/wwan/nm-modem-broadband.c index 4bb72fd1..ec4f4a2f 100644 --- a/src/devices/wwan/nm-modem-broadband.c +++ b/src/devices/wwan/nm-modem-broadband.c @@ -1146,6 +1146,19 @@ sim_changed (MMModem *modem, GParamSpec *pspec, gpointer user_data) } static void +supported_ip_families_changed (MMModem *modem, GParamSpec *pspec, gpointer user_data) +{ + NMModemBroadband *self = NM_MODEM_BROADBAND (user_data); + + g_return_if_fail (modem == self->priv->modem_iface); + + g_object_set (G_OBJECT (self), + NM_MODEM_IP_TYPES, + mm_ip_family_to_nm (mm_modem_get_supported_ip_families (modem)), + NULL); +} + +static void nm_modem_broadband_init (NMModemBroadband *self) { self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, @@ -1176,6 +1189,10 @@ set_property (GObject *object, G_CALLBACK (sim_changed), self); sim_changed (self->priv->modem_iface, NULL, self); + g_signal_connect (self->priv->modem_iface, + "notify::supported-ip-families", + G_CALLBACK (supported_ip_families_changed), + self); /* Note: don't grab the Simple iface here; the Modem interface is the * only one assumed to be always valid and available */ diff --git a/src/dhcp-manager/Makefile.in b/src/dhcp-manager/Makefile.in index 8c6e059c..6a2cad49 100644 --- a/src/dhcp-manager/Makefile.in +++ b/src/dhcp-manager/Makefile.in @@ -336,6 +336,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/src/dhcp-manager/nm-dhcp-systemd.c b/src/dhcp-manager/nm-dhcp-systemd.c index 2bd0d72f..571765f7 100644 --- a/src/dhcp-manager/nm-dhcp-systemd.c +++ b/src/dhcp-manager/nm-dhcp-systemd.c @@ -397,6 +397,7 @@ nm_dhcp_systemd_get_lease_ip_configs (const char *iface, ip4_config = lease_to_ip4_config (lease, NULL, default_route_metric, FALSE, NULL); if (ip4_config) leases = g_slist_append (leases, ip4_config); + sd_dhcp_lease_unref (lease); } return leases; @@ -532,6 +533,7 @@ ip4_start (NMDhcpClient *client, const char *dhcp_anycast_addr, const char *last struct in_addr last_addr = { 0 }; const char *hostname; int r, i; + gboolean success = FALSE; g_assert (priv->client4 == NULL); g_assert (priv->client6 == NULL); @@ -618,8 +620,6 @@ ip4_start (NMDhcpClient *client, const char *dhcp_anycast_addr, const char *last } } - if (lease) - sd_dhcp_lease_unref (lease); /* Add requested options */ for (i = 0; dhcp4_requests[i].name; i++) { @@ -642,12 +642,13 @@ ip4_start (NMDhcpClient *client, const char *dhcp_anycast_addr, const char *last goto error; } - return TRUE; + success = TRUE; error: - sd_dhcp_client_unref (priv->client4); - priv->client4 = NULL; - return FALSE; + sd_dhcp_lease_unref (lease); + if (!success) + priv->client4 = sd_dhcp_client_unref (priv->client4); + return success; } static void diff --git a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.c b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.c index a6d81727..3870342c 100644 --- a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.c +++ b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.c @@ -31,12 +31,28 @@ struct sd_event_source { gpointer user_data; GIOChannel *channel; - sd_event_io_handler_t io_cb; - uint64_t usec; - sd_event_time_handler_t time_cb; + union { + struct { + sd_event_io_handler_t cb; + } io; + struct { + sd_event_time_handler_t cb; + uint64_t usec; + } time; + }; }; +static struct sd_event_source * +source_new (void) +{ + struct sd_event_source *source; + + source = g_slice_new0 (struct sd_event_source); + source->refcount = 1; + return source; +} + int sd_event_source_set_priority (sd_event_source *s, int64_t priority) { @@ -62,7 +78,7 @@ sd_event_source_unref (sd_event_source *s) */ g_io_channel_unref (s->channel); } - g_free (s); + g_slice_free (struct sd_event_source, s); } return NULL; } @@ -81,6 +97,7 @@ static gboolean io_ready (GIOChannel *channel, GIOCondition condition, struct sd_event_source *source) { int r, revents = 0; + gboolean result; if (condition & G_IO_IN) revents |= EPOLLIN; @@ -93,13 +110,18 @@ io_ready (GIOChannel *channel, GIOCondition condition, struct sd_event_source *s if (condition & G_IO_HUP) revents |= EPOLLHUP; - r = source->io_cb (source, g_io_channel_unix_get_fd (channel), revents, source->user_data); - if (r < 0) { + source->refcount++; + + r = source->io.cb (source, g_io_channel_unix_get_fd (channel), revents, source->user_data); + if (r < 0 || source->refcount <= 1) { source->id = 0; - return G_SOURCE_REMOVE; - } + result = G_SOURCE_REMOVE; + } else + result = G_SOURCE_CONTINUE; - return G_SOURCE_CONTINUE; + sd_event_source_unref (source); + + return result; } int @@ -109,13 +131,16 @@ sd_event_add_io (sd_event *e, sd_event_source **s, int fd, uint32_t events, sd_e GIOChannel *channel; GIOCondition condition = 0; + /* systemd supports floating sd_event_source by omitting the @s argument. + * We don't have such users and don't implement floating references. */ + g_return_val_if_fail (s, -EINVAL); + channel = g_io_channel_unix_new (fd); if (!channel) return -EINVAL; - source = g_new0 (struct sd_event_source, 1); - source->refcount = 1; - source->io_cb = callback; + source = source_new (); + source->io.cb = callback; source->user_data = userdata; source->channel = channel; @@ -141,15 +166,14 @@ sd_event_add_io (sd_event *e, sd_event_source **s, int fd, uint32_t events, sd_e static gboolean time_ready (struct sd_event_source *source) { - int r; + source->refcount++; - r = source->time_cb (source, source->usec, source->user_data); - if (r < 0) { - source->id = 0; - return G_SOURCE_REMOVE; - } + source->time.cb (source, source->time.usec, source->user_data); + source->id = 0; + + sd_event_source_unref (source); - return G_SOURCE_CONTINUE; + return G_SOURCE_REMOVE; } int @@ -158,11 +182,14 @@ sd_event_add_time(sd_event *e, sd_event_source **s, clockid_t clock, uint64_t us struct sd_event_source *source; uint64_t n = now (clock); - source = g_new0 (struct sd_event_source, 1); - source->refcount = 1; - source->time_cb = callback; + /* systemd supports floating sd_event_source by omitting the @s argument. + * We don't have such users and don't implement floating references. */ + g_return_val_if_fail (s, -EINVAL); + + source = source_new (); + source->time.cb = callback; source->user_data = userdata; - source->usec = usec; + source->time.usec = usec; if (usec > 1000) usec = n < usec - 1000 ? usec - n : 1000; diff --git a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h index f8856a1b..5e91c307 100644 --- a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h +++ b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h @@ -35,6 +35,7 @@ #endif #include <unistd.h> #include <sys/syscall.h> +#include <time.h> #include "nm-logging.h" @@ -43,6 +44,12 @@ #define BPF_XOR 0xa0 #endif +#ifndef CLOCK_BOOTTIME +#define CLOCK_BOOTTIME 7 +#endif + +/*****************************************************************************/ + static inline guint32 _slog_level_to_nm (int slevel) { @@ -75,18 +82,20 @@ G_STMT_START { \ #define log_assert_failed(e, file, line, func) \ G_STMT_START { \ - nm_log_err (LOGD_DHCP, #file ":" #line "(" #func "): assertion failed: " # e); \ + nm_log_err (LOGD_DHCP, "%s:%d (%s): assertion failed: %s", (""file), (line), (func), G_STRINGIFY (e)); \ g_assert (FALSE); \ } G_STMT_END #define log_assert_failed_unreachable(t, file, line, func) \ G_STMT_START { \ - nm_log_err (LOGD_DHCP, #file ":" #line "(" #func "): assert unreachable: " # t); \ + nm_log_err (LOGD_DHCP, "%s:%d (%s): assert unreachable: %s", (""file), (line), (func), G_STRINGIFY (t)); \ g_assert_not_reached (); \ } G_STMT_END #define log_assert_failed_return(e, file, line, func) \ - nm_log_err (LOGD_DHCP, #file ":" #line "(" #func "): assert return: " # e); \ +G_STMT_START { \ + nm_log_err (LOGD_DHCP, "%s:%d (%s): assert return: %s", (""file), (line), (func), G_STRINGIFY (e)); \ +} G_STMT_END #define log_oom nm_log_err(LOGD_CORE, "%s:%s/%s: OOM", __FILE__, __LINE__, __func__) diff --git a/src/dhcp-manager/systemd-dhcp/src/libsystemd-network/sd-dhcp6-client.c b/src/dhcp-manager/systemd-dhcp/src/libsystemd-network/sd-dhcp6-client.c index 6c5a6ab5..6754fe19 100644 --- a/src/dhcp-manager/systemd-dhcp/src/libsystemd-network/sd-dhcp6-client.c +++ b/src/dhcp-manager/systemd-dhcp/src/libsystemd-network/sd-dhcp6-client.c @@ -285,6 +285,11 @@ static void client_notify(sd_dhcp6_client *client, int event) { static int client_reset(sd_dhcp6_client *client) { assert_return(client, -EINVAL); + if (client->lease) { + dhcp6_lease_clear_timers(&client->lease->ia); + client->lease = sd_dhcp6_lease_unref(client->lease); + } + client->receive_message = sd_event_source_unref(client->receive_message); @@ -828,7 +833,10 @@ static int client_receive_advertise(sd_dhcp6_client *client, r = dhcp6_lease_get_preference(client->lease, &pref_lease); if (!client->lease || r < 0 || pref_advertise > pref_lease) { - sd_dhcp6_lease_unref(client->lease); + if (client->lease) { + dhcp6_lease_clear_timers(&client->lease->ia); + sd_dhcp6_lease_unref(client->lease); + } client->lease = lease; lease = NULL; r = 0; diff --git a/src/dhcp-manager/systemd-dhcp/src/shared/macro.h b/src/dhcp-manager/systemd-dhcp/src/shared/macro.h index e6cf6eec..bdda4dce 100644 --- a/src/dhcp-manager/systemd-dhcp/src/shared/macro.h +++ b/src/dhcp-manager/systemd-dhcp/src/shared/macro.h @@ -46,6 +46,7 @@ #define _alignas_(x) __attribute__((aligned(__alignof(x)))) #define _cleanup_(x) __attribute__((cleanup(x))) +#if (defined (__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))) || defined (__clang__) /* Temporarily disable some warnings */ #define DISABLE_WARNING_DECLARATION_AFTER_STATEMENT \ _Pragma("GCC diagnostic push"); \ @@ -69,6 +70,14 @@ #define REENABLE_WARNING \ _Pragma("GCC diagnostic pop") +#else +#define DISABLE_WARNING_DECLARATION_AFTER_STATEMENT +#define DISABLE_WARNING_FORMAT_NONLITERAL +#define DISABLE_WARNING_MISSING_PROTOTYPES +#define DISABLE_WARNING_NONNULL +#define DISABLE_WARNING_SHADOW +#define REENABLE_WARNING +#endif /* automake test harness */ #define EXIT_TEST_SKIP 77 diff --git a/src/dhcp-manager/tests/Makefile.am b/src/dhcp-manager/tests/Makefile.am index 8aa79a29..4c4c7e81 100644 --- a/src/dhcp-manager/tests/Makefile.am +++ b/src/dhcp-manager/tests/Makefile.am @@ -1,5 +1,6 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I${top_builddir}/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I$(top_srcdir)/src/dhcp-manager \ diff --git a/src/dhcp-manager/tests/Makefile.in b/src/dhcp-manager/tests/Makefile.in index 6125aea8..c98dbd5f 100644 --- a/src/dhcp-manager/tests/Makefile.in +++ b/src/dhcp-manager/tests/Makefile.in @@ -516,6 +516,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -658,6 +659,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I${top_builddir}/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I$(top_srcdir)/src/dhcp-manager \ diff --git a/src/dnsmasq-manager/nm-dnsmasq-manager.c b/src/dnsmasq-manager/nm-dnsmasq-manager.c index a85631bc..0cc698d9 100644 --- a/src/dnsmasq-manager/nm-dnsmasq-manager.c +++ b/src/dnsmasq-manager/nm-dnsmasq-manager.c @@ -203,6 +203,7 @@ dm_watch_cb (GPid pid, gint status, gpointer user_data) } priv->pid = 0; + priv->dm_watch_id = 0; g_signal_emit (manager, signals[STATE_CHANGED], 0, NM_DNSMASQ_STATUS_DEAD); } diff --git a/src/dnsmasq-manager/tests/Makefile.am b/src/dnsmasq-manager/tests/Makefile.am index b51de6aa..e9200007 100644 --- a/src/dnsmasq-manager/tests/Makefile.am +++ b/src/dnsmasq-manager/tests/Makefile.am @@ -1,5 +1,6 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I${top_builddir}/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I$(top_srcdir)/src/dnsmasq-manager \ diff --git a/src/dnsmasq-manager/tests/Makefile.in b/src/dnsmasq-manager/tests/Makefile.in index 8e6bb12e..fb2cd1d1 100644 --- a/src/dnsmasq-manager/tests/Makefile.in +++ b/src/dnsmasq-manager/tests/Makefile.in @@ -510,6 +510,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -652,6 +653,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I${top_builddir}/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -I$(top_srcdir)/src/dnsmasq-manager \ diff --git a/src/main.c b/src/main.c index 495262ef..53d2cf64 100644 --- a/src/main.c +++ b/src/main.c @@ -72,6 +72,7 @@ static gboolean configure_and_quit = FALSE; static struct { gboolean show_version; + gboolean print_config; gboolean become_daemon; gboolean debug; gboolean g_fatal_warnings; @@ -228,6 +229,28 @@ manager_configure_quit (NMManager *manager, gpointer user_data) configure_and_quit = TRUE; } +static int +print_config (NMConfigCmdLineOptions *config_cli) +{ + gs_unref_object NMConfig *config = NULL; + gs_free_error GError *error = NULL; + NMConfigData *config_data; + + nm_logging_setup ("OFF", "ALL", NULL, NULL); + + config = nm_config_new (config_cli, &error); + if (config == NULL) { + fprintf (stderr, _("Failed to read configuration: %s\n"), + (error && error->message) ? error->message : _("unknown")); + return 7; + } + + config_data = nm_config_get_data (config); + fprintf (stdout, "# NetworkManager configuration: %s\n", nm_config_data_get_config_description (config_data)); + nm_config_data_log (config_data, "", "", stdout); + return 0; +} + static void do_early_setup (int *argc, char **argv[], NMConfigCmdLineOptions *config_cli) { @@ -243,10 +266,10 @@ do_early_setup (int *argc, char **argv[], NMConfigCmdLineOptions *config_cli) { "pid-file", 'p', 0, G_OPTION_ARG_FILENAME, &global_opt.pidfile, N_("Specify the location of a PID file"), N_(NM_DEFAULT_PID_FILE) }, { "state-file", 0, 0, G_OPTION_ARG_FILENAME, &global_opt.state_file, N_("State file location"), N_(NM_DEFAULT_SYSTEM_STATE_FILE) }, { "run-from-build-dir", 0, 0, G_OPTION_ARG_NONE, &global_opt.run_from_build_dir, "Run from build directory", NULL }, + { "print-config", 0, 0, G_OPTION_ARG_NONE, &global_opt.print_config, N_("Print NetworkManager configuration and exit"), NULL }, {NULL} }; - config_cli = nm_config_cmd_line_options_new (); if (!nm_main_utils_early_setup ("NetworkManager", argc, argv, @@ -302,6 +325,14 @@ main (int argc, char *argv[]) exit (0); } + if (global_opt.print_config) { + int result; + + result = print_config (config_cli); + nm_config_cmd_line_options_free (config_cli); + exit (result); + } + nm_main_utils_ensure_root (); nm_main_utils_ensure_not_running_pidfile (global_opt.pidfile); @@ -423,7 +454,7 @@ main (int argc, char *argv[]) dbus_glib_global_set_disable_legacy_property_access (); nm_log_info (LOGD_CORE, "Read config: %s", nm_config_data_get_config_description (nm_config_get_data (config))); - nm_config_data_log (nm_config_get_data (config), "CONFIG: "); + nm_config_data_log (nm_config_get_data (config), "CONFIG: ", " ", NULL); nm_log_dbg (LOGD_CORE, "WEXT support is %s", #if HAVE_WEXT "enabled" diff --git a/src/nm-agent-manager-glue.h b/src/nm-agent-manager-glue.h index 6e884c8a..e6431f53 100644 --- a/src/nm-agent-manager-glue.h +++ b/src/nm-agent-manager-glue.h @@ -79,9 +79,9 @@ dbus_glib_marshal_nm_agent_manager_VOID__STRING_UINT_POINTER (GClosure *clos guint arg_2, gpointer arg_3, gpointer data2); - register GMarshalFunc_VOID__STRING_UINT_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__STRING_UINT_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 4); @@ -124,9 +124,9 @@ dbus_glib_marshal_nm_agent_manager_VOID__STRING_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__STRING_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__STRING_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); diff --git a/src/nm-config-data.c b/src/nm-config-data.c index dc20064b..ffe00ec2 100644 --- a/src/nm-config-data.c +++ b/src/nm-config-data.c @@ -292,22 +292,34 @@ _nm_config_data_log_sort (const char **pa, const char **pb, gpointer dummy) } void -nm_config_data_log (const NMConfigData *self, const char *prefix) +nm_config_data_log (const NMConfigData *self, + const char *prefix, + const char *key_prefix, + /* FILE* */ gpointer print_stream) { NMConfigDataPrivate *priv; gs_strfreev char **groups = NULL; gsize ngroups; guint g, k; + FILE *stream = print_stream; g_return_if_fail (NM_IS_CONFIG_DATA (self)); - if (!nm_logging_enabled (LOGL_DEBUG, LOGD_CORE)) + if (!stream && !nm_logging_enabled (LOGL_DEBUG, LOGD_CORE)) return; if (!prefix) prefix = ""; + if (!key_prefix) + key_prefix = ""; -#define _LOG(...) _nm_log (LOGL_DEBUG, LOGD_CORE, 0, "%s"_NM_UTILS_MACRO_FIRST(__VA_ARGS__), prefix _NM_UTILS_MACRO_REST (__VA_ARGS__)) +#define _LOG(stream, prefix, ...) \ + G_STMT_START { \ + if (!stream) \ + _nm_log (LOGL_DEBUG, LOGD_CORE, 0, "%s"_NM_UTILS_MACRO_FIRST(__VA_ARGS__)"%s", prefix _NM_UTILS_MACRO_REST (__VA_ARGS__), ""); \ + else \ + fprintf (stream, "%s"_NM_UTILS_MACRO_FIRST(__VA_ARGS__)"%s", prefix _NM_UTILS_MACRO_REST (__VA_ARGS__), "\n"); \ + } G_STMT_END priv = NM_CONFIG_DATA_GET_PRIVATE (self); @@ -322,14 +334,15 @@ nm_config_data_log (const NMConfigData *self, const char *prefix) NULL); } - _LOG ("config-data[%p]: %lu groups", self, (unsigned long) ngroups); + if (!stream) + _LOG (stream, prefix, "config-data[%p]: %lu groups", self, (unsigned long) ngroups); for (g = 0; g < ngroups; g++) { const char *group = groups[g]; gs_strfreev char **keys = NULL; - _LOG (""); - _LOG ("[%s]", group); + _LOG (stream, prefix, ""); + _LOG (stream, prefix, "[%s]", group); keys = g_key_file_get_keys (priv->keyfile, group, NULL, NULL); for (k = 0; keys && keys[k]; k++) { @@ -337,7 +350,7 @@ nm_config_data_log (const NMConfigData *self, const char *prefix) gs_free char *value = NULL; value = g_key_file_get_value (priv->keyfile, group, key, NULL); - _LOG (" %s=%s", key, value); + _LOG (stream, prefix, "%s%s=%s", key_prefix, key, value); } } diff --git a/src/nm-config-data.h b/src/nm-config-data.h index cc7f95e2..73e789bd 100644 --- a/src/nm-config-data.h +++ b/src/nm-config-data.h @@ -97,7 +97,10 @@ NMConfigData *nm_config_data_new_update_no_auto_default (const NMConfigData *bas NMConfigChangeFlags nm_config_data_diff (NMConfigData *old_data, NMConfigData *new_data); -void nm_config_data_log (const NMConfigData *config_data, const char *prefix); +void nm_config_data_log (const NMConfigData *self, + const char *prefix, + const char *key_prefix, + /* FILE* */ gpointer print_stream); const char *nm_config_data_get_config_main_file (const NMConfigData *config_data); const char *nm_config_data_get_config_description (const NMConfigData *config_data); diff --git a/src/nm-config.c b/src/nm-config.c index 86b3d929..561d80c1 100644 --- a/src/nm-config.c +++ b/src/nm-config.c @@ -1028,7 +1028,7 @@ _set_config_data (NMConfig *self, NMConfigData *new_data, int signal) if (new_data) { nm_log_info (LOGD_CORE, "config: update %s (%s)", nm_config_data_get_config_description (new_data), (log_str = nm_config_change_flags_to_string (changes))); - nm_config_data_log (new_data, "CONFIG: "); + nm_config_data_log (new_data, "CONFIG: ", " ", NULL); priv->config_data = new_data; } else if (had_new_data) nm_log_info (LOGD_CORE, "config: signal %s (no changes from disk)", (log_str = nm_config_change_flags_to_string (changes))); @@ -1212,9 +1212,19 @@ nm_config_class_init (NMConfigClass *config_class) g_signal_new (NM_CONFIG_SIGNAL_CONFIG_CHANGED, G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_FIRST, - G_STRUCT_OFFSET (NMConfigClass, config_changed), + 0, NULL, NULL, NULL, - G_TYPE_NONE, 3, NM_TYPE_CONFIG_DATA, NM_TYPE_CONFIG_CHANGE_FLAGS, NM_TYPE_CONFIG_DATA); + G_TYPE_NONE, + 3, + NM_TYPE_CONFIG_DATA, + /* Use plain guint type for changes argument. This avoids + * glib/ffi bug https://bugzilla.redhat.com/show_bug.cgi?id=1260577 */ + /* NM_TYPE_CONFIG_CHANGE_FLAGS, */ + G_TYPE_UINT, + NM_TYPE_CONFIG_DATA); + + G_STATIC_ASSERT_EXPR (sizeof (guint) == sizeof (NMConfigChangeFlags)); + G_STATIC_ASSERT_EXPR (((gint64) ((NMConfigChangeFlags) -1)) > ((gint64) 0)); } static void diff --git a/src/nm-config.h b/src/nm-config.h index 5b096f16..5d65e7a9 100644 --- a/src/nm-config.h +++ b/src/nm-config.h @@ -71,9 +71,6 @@ struct _NMConfig { typedef struct { GObjectClass parent; - - /* Signals */ - void (*config_changed) (NMConfig *config, GHashTable *changes, NMConfigData *old_data); } NMConfigClass; GType nm_config_get_type (void); diff --git a/src/nm-default-route-manager.c b/src/nm-default-route-manager.c index 96a8c855..c5b2e408 100644 --- a/src/nm-default-route-manager.c +++ b/src/nm-default-route-manager.c @@ -78,27 +78,51 @@ NM_DEFINE_SINGLETON_GETTER (NMDefaultRouteManager, nm_default_route_manager_get, const NMLogDomain __domain = __addr_family == AF_INET ? LOGD_IP4 : (__addr_family == AF_INET6 ? LOGD_IP6 : LOGD_IP); \ \ if (nm_logging_enabled (__level, __domain)) { \ - char __ch = __addr_family == AF_INET ? '4' : (__addr_family == AF_INET6 ? '6' : '-'); \ - char __prefix[30] = _NMLOG_PREFIX_NAME; \ + char __prefix_buf[100]; \ \ - if ((self) != singleton_instance) \ - g_snprintf (__prefix, sizeof (__prefix), ""_NMLOG_PREFIX_NAME"%c[%p]", __ch, (self)); \ - else \ - __prefix[STRLEN (_NMLOG_PREFIX_NAME)] = __ch; \ _nm_log (__level, __domain, 0, \ "%s: " _NM_UTILS_MACRO_FIRST(__VA_ARGS__), \ - __prefix _NM_UTILS_MACRO_REST(__VA_ARGS__)); \ + self != singleton_instance \ + ? nm_sprintf_buf (__prefix_buf, "%s%c[%p]", \ + _NMLOG2_PREFIX_NAME, \ + __addr_family == AF_INET ? '4' : (__addr_family == AF_INET6 ? '6' : '-'), \ + self) \ + : _NMLOG2_PREFIX_NAME \ + _NM_UTILS_MACRO_REST(__VA_ARGS__)); \ } \ } G_STMT_END -#define LOG_ENTRY_FMT "entry[%u/%s:%p:%s:%c:%csync]" -#define LOG_ENTRY_ARGS(entry_idx, entry) \ - (entry_idx), \ - NM_IS_DEVICE ((entry)->source.pointer) ? "dev" : "vpn", \ - (entry)->source.pointer, \ - NM_IS_DEVICE ((entry)->source.pointer) ? nm_device_get_iface ((entry)->source.device) : nm_vpn_connection_get_connection_id ((entry)->source.vpn), \ - ((entry)->never_default ? '0' : '1'), \ - ((entry)->synced ? '+' : '-') +#define _NMLOG2_PREFIX_NAME _NMLOG_PREFIX_NAME +#undef _NMLOG2_ENABLED +#define _NMLOG2_ENABLED _NMLOG_ENABLED +#define _NMLOG2(level, vtable, entry_idx, entry, ...) \ + G_STMT_START { \ + const int __addr_family = (vtable)->vt->addr_family; \ + const NMLogLevel __level = (level); \ + const NMLogDomain __domain = __addr_family == AF_INET ? LOGD_IP4 : (__addr_family == AF_INET6 ? LOGD_IP6 : LOGD_IP); \ + \ + if (nm_logging_enabled (__level, __domain)) { \ + char __prefix_buf[100]; \ + guint __entry_idx = (entry_idx); \ + const Entry *const __entry = (entry); \ + \ + _nm_log (__level, __domain, 0, \ + "%s: entry[%u/%s:%p:%s:%c:%csync]: "_NM_UTILS_MACRO_FIRST(__VA_ARGS__), \ + self != singleton_instance \ + ? nm_sprintf_buf (__prefix_buf, "%s%c[%p]", \ + _NMLOG2_PREFIX_NAME, \ + __addr_family == AF_INET ? '4' : (__addr_family == AF_INET6 ? '6' : '-'), \ + self) \ + : _NMLOG2_PREFIX_NAME, \ + __entry_idx, \ + NM_IS_DEVICE (__entry->source.pointer) ? "dev" : "vpn", \ + __entry->source.pointer, \ + NM_IS_DEVICE (__entry->source.pointer) ? nm_device_get_iface (__entry->source.device) : nm_vpn_connection_get_connection_id (__entry->source.vpn), \ + (__entry->never_default ? '0' : '1'), \ + (__entry->synced ? '+' : '-') \ + _NM_UTILS_MACRO_REST(__VA_ARGS__)); \ + } \ + } G_STMT_END /***********************************************************************************/ @@ -552,25 +576,25 @@ _resync_all (const VTableIP *vtable, NMDefaultRouteManager *self, const Entry *c * or none. Hence, we only have to remember what is going to change. */ g_array_append_val (changed_metrics, expected_metric); if (old_entry) { - _LOGD (vtable->vt->addr_family, LOG_ENTRY_FMT": sync:update %s (%u -> %u)", LOG_ENTRY_ARGS (i, entry), - vtable->vt->route_to_string (&entry->route), (guint) old_entry->effective_metric, - (guint) expected_metric); + _LOG2D (vtable, i, entry, "sync:update %s (%u -> %u)", + vtable->vt->route_to_string (&entry->route), (guint) old_entry->effective_metric, + (guint) expected_metric); } else { - _LOGD (vtable->vt->addr_family, LOG_ENTRY_FMT": sync:add %s (%u)", LOG_ENTRY_ARGS (i, entry), - vtable->vt->route_to_string (&entry->route), (guint) expected_metric); + _LOG2D (vtable, i, entry, "sync:add %s (%u)", + vtable->vt->route_to_string (&entry->route), (guint) expected_metric); } } else if (entry->effective_metric != expected_metric) { g_array_append_val (changed_metrics, entry->effective_metric); g_array_append_val (changed_metrics, expected_metric); - _LOGD (vtable->vt->addr_family, LOG_ENTRY_FMT": sync:metric %s (%u -> %u)", LOG_ENTRY_ARGS (i, entry), - vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric, - (guint) expected_metric); + _LOG2D (vtable, i, entry, "sync:metric %s (%u -> %u)", + vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric, + (guint) expected_metric); } else { if (!_vt_routes_has_entry (vtable, routes, entry)) { g_array_append_val (changed_metrics, entry->effective_metric); - _LOGD (vtable->vt->addr_family, LOG_ENTRY_FMT": sync:re-add %s (%u -> %u)", LOG_ENTRY_ARGS (i, entry), - vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric, - (guint) entry->effective_metric); + _LOG2D (vtable, i, entry, "sync:re-add %s (%u -> %u)", + vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric, + (guint) entry->effective_metric); } } @@ -633,11 +657,10 @@ _entry_at_idx_update (const VTableIP *vtable, NMDefaultRouteManager *self, guint if (!entry->synced && !entry->never_default) entry->effective_metric = entry->route.rx.metric; - _LOGD (vtable->vt->addr_family, LOG_ENTRY_FMT": %s %s (%"G_GUINT32_FORMAT")", - LOG_ENTRY_ARGS (entry_idx, entry), - old_entry ? "record:update" : "record:add ", - vtable->vt->route_to_string (&entry->route), - entry->effective_metric); + _LOG2D (vtable, entry_idx, entry, "%s %s (%"G_GUINT32_FORMAT")", + old_entry ? "record:update" : "record:add ", + vtable->vt->route_to_string (&entry->route), + entry->effective_metric); g_ptr_array_sort_with_data (entries, _sort_entries_cmp, NULL); @@ -657,8 +680,8 @@ _entry_at_idx_remove (const VTableIP *vtable, NMDefaultRouteManager *self, guint entry = g_ptr_array_index (entries, entry_idx); - _LOGD (vtable->vt->addr_family, LOG_ENTRY_FMT": record:remove %s (%u)", LOG_ENTRY_ARGS (entry_idx, entry), - vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric); + _LOG2D (vtable, entry_idx, entry, "record:remove %s (%u)", + vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric); /* Remove the entry from the list (but don't free it yet) */ g_ptr_array_index (entries, entry_idx) = NULL; @@ -718,9 +741,8 @@ _ipx_update_default_route (const VTableIP *vtable, NMDefaultRouteManager *self, if ( entry && entry->route.rx.ifindex != ip_ifindex) { /* Strange... the ifindex changed... Remove the device and start again. */ - _LOGD (vtable->vt->addr_family, "ifindex of "LOG_ENTRY_FMT" changed: %d -> %d", - LOG_ENTRY_ARGS (entry_idx, entry), - entry->route.rx.ifindex, ip_ifindex); + _LOG2D (vtable, entry_idx, entry, "ifindex changed: %d -> %d", + entry->route.rx.ifindex, ip_ifindex); g_object_freeze_notify (G_OBJECT (self)); _entry_at_idx_remove (vtable, self, entry_idx); diff --git a/src/nm-dispatcher.c b/src/nm-dispatcher.c index 13352ded..78aa204e 100644 --- a/src/nm-dispatcher.c +++ b/src/nm-dispatcher.c @@ -444,10 +444,6 @@ _dispatcher_call (DispatcherAction action, : (callback ? " (with callback)" : "")); } - /* VPN actions require at least an IPv4 config (for now) */ - if (action == DISPATCHER_ACTION_VPN_UP) - g_return_val_if_fail (vpn_ip4_config != NULL, FALSE); - if (!_get_monitor_by_action(action)->has_scripts) { if (blocking == FALSE && (out_call_id || callback)) { info = g_malloc0 (sizeof (*info)); diff --git a/src/nm-ip6-config.c b/src/nm-ip6-config.c index 9647268d..ef256231 100644 --- a/src/nm-ip6-config.c +++ b/src/nm-ip6-config.c @@ -635,8 +635,10 @@ nm_ip6_config_merge (NMIP6Config *dst, const NMIP6Config *src, NMIPConfigMergeFl nm_ip6_config_add_address (dst, nm_ip6_config_get_address (src, i)); /* nameservers */ - for (i = 0; i < nm_ip6_config_get_num_nameservers (src); i++) - nm_ip6_config_add_nameserver (dst, nm_ip6_config_get_nameserver (src, i)); + if (!NM_FLAGS_HAS (merge_flags, NM_IP_CONFIG_MERGE_NO_DNS)) { + for (i = 0; i < nm_ip6_config_get_num_nameservers (src); i++) + nm_ip6_config_add_nameserver (dst, nm_ip6_config_get_nameserver (src, i)); + } /* default gateway */ if (nm_ip6_config_get_gateway (src)) diff --git a/src/nm-logging.c b/src/nm-logging.c index fa770344..b8433a25 100644 --- a/src/nm-logging.c +++ b/src/nm-logging.c @@ -381,8 +381,11 @@ _nm_log_impl (const char *file, return; /* Make sure that %m maps to the specified error */ - if (error != 0) + if (error != 0) { + if (error < 0) + error = -error; errno = error; + } va_start (args, fmt); msg = g_strdup_vprintf (fmt, args); diff --git a/src/nm-logging.h b/src/nm-logging.h index 40218062..077209f9 100644 --- a/src/nm-logging.h +++ b/src/nm-logging.h @@ -173,27 +173,59 @@ void nm_logging_syslog_closelog (void); * might want to undef this and redefine it. */ #define _NMLOG_ENABLED(level) ( nm_logging_enabled ((level), (_NMLOG_DOMAIN)) ) -#define _LOGt(...) _NMLOG (LOGL_TRACE, __VA_ARGS__) +#define _LOGT(...) _NMLOG (LOGL_TRACE, __VA_ARGS__) #define _LOGD(...) _NMLOG (LOGL_DEBUG, __VA_ARGS__) #define _LOGI(...) _NMLOG (LOGL_INFO , __VA_ARGS__) #define _LOGW(...) _NMLOG (LOGL_WARN , __VA_ARGS__) #define _LOGE(...) _NMLOG (LOGL_ERR , __VA_ARGS__) -#define _LOGt_ENABLED(...) _NMLOG_ENABLED (LOGL_TRACE, ##__VA_ARGS__) +#define _LOGT_ENABLED(...) _NMLOG_ENABLED (LOGL_TRACE, ##__VA_ARGS__) #define _LOGD_ENABLED(...) _NMLOG_ENABLED (LOGL_DEBUG, ##__VA_ARGS__) #define _LOGI_ENABLED(...) _NMLOG_ENABLED (LOGL_INFO , ##__VA_ARGS__) #define _LOGW_ENABLED(...) _NMLOG_ENABLED (LOGL_WARN , ##__VA_ARGS__) #define _LOGE_ENABLED(...) _NMLOG_ENABLED (LOGL_ERR , ##__VA_ARGS__) -/* _LOGt() and _LOGT() both log with level TRACE, but the latter is disabled by default, +/* _LOGT() and _LOGt() both log with level TRACE, but the latter is disabled by default, * unless building with --with-more-logging. */ #ifdef NM_MORE_LOGGING -#define _LOGT_ENABLED(...) _NMLOG_ENABLED (LOGL_TRACE, ##__VA_ARGS__) -#define _LOGT(...) _NMLOG (LOGL_TRACE, __VA_ARGS__) +#define _LOGt_ENABLED(...) _NMLOG_ENABLED (LOGL_TRACE, ##__VA_ARGS__) +#define _LOGt(...) _NMLOG (LOGL_TRACE, __VA_ARGS__) +#else +/* still call the logging macros to get compile time checks, but they will be optimized out. */ +#define _LOGt_ENABLED(...) ( FALSE && (_NMLOG_ENABLED (LOGL_TRACE, ##__VA_ARGS__)) ) +#define _LOGt(...) G_STMT_START { if (FALSE) { _NMLOG (LOGL_TRACE, __VA_ARGS__); } } G_STMT_END +#endif + +/*****************************************************************************/ + +/* Some implementation define a second set of logging macros, for a separate + * use. As with the _LOGD() macro familiy above, the exact implementation + * depends on the file that uses them. + * Still, it encourages a common pattern to have the common set of macros + * like _LOG2D(), _LOG2I(), etc. and have _LOG2t() which by default + * is disabled at compile time. */ + +#define _NMLOG2_ENABLED(level) ( nm_logging_enabled ((level), (_NMLOG2_DOMAIN)) ) + +#define _LOG2T(...) _NMLOG2 (LOGL_TRACE, __VA_ARGS__) +#define _LOG2D(...) _NMLOG2 (LOGL_DEBUG, __VA_ARGS__) +#define _LOG2I(...) _NMLOG2 (LOGL_INFO , __VA_ARGS__) +#define _LOG2W(...) _NMLOG2 (LOGL_WARN , __VA_ARGS__) +#define _LOG2E(...) _NMLOG2 (LOGL_ERR , __VA_ARGS__) + +#define _LOG2T_ENABLED(...) _NMLOG2_ENABLED (LOGL_TRACE, ##__VA_ARGS__) +#define _LOG2D_ENABLED(...) _NMLOG2_ENABLED (LOGL_DEBUG, ##__VA_ARGS__) +#define _LOG2I_ENABLED(...) _NMLOG2_ENABLED (LOGL_INFO , ##__VA_ARGS__) +#define _LOG2W_ENABLED(...) _NMLOG2_ENABLED (LOGL_WARN , ##__VA_ARGS__) +#define _LOG2E_ENABLED(...) _NMLOG2_ENABLED (LOGL_ERR , ##__VA_ARGS__) + +#ifdef NM_MORE_LOGGING +#define _LOG2t_ENABLED(...) _NMLOG2_ENABLED (LOGL_TRACE, ##__VA_ARGS__) +#define _LOG2t(...) _NMLOG2 (LOGL_TRACE, __VA_ARGS__) #else -/* still call the logging macros to get compile time checks, but they will be optimize out. */ -#define _LOGT_ENABLED(...) ( FALSE && (_NMLOG_ENABLED (LOGL_TRACE, ##__VA_ARGS__)) ) -#define _LOGT(...) G_STMT_START { if (FALSE) { _NMLOG (LOGL_TRACE, __VA_ARGS__); } } G_STMT_END +/* still call the logging macros to get compile time checks, but they will be optimized out. */ +#define _LOG2t_ENABLED(...) ( FALSE && (_NMLOG2_ENABLED (LOGL_TRACE, ##__VA_ARGS__)) ) +#define _LOG2t(...) G_STMT_START { if (FALSE) { _NMLOG2 (LOGL_TRACE, __VA_ARGS__); } } G_STMT_END #endif /*****************************************************************************/ diff --git a/src/nm-manager-glue.h b/src/nm-manager-glue.h index f7840c9f..37a6cf1f 100644 --- a/src/nm-manager-glue.h +++ b/src/nm-manager-glue.h @@ -74,9 +74,9 @@ dbus_glib_marshal_nm_manager_VOID__BOXED_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__BOXED_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__BOXED_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); @@ -118,9 +118,9 @@ dbus_glib_marshal_nm_manager_VOID__BOOLEAN_POINTER (GClosure *closure, gboolean arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__BOOLEAN_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__BOOLEAN_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); @@ -168,9 +168,9 @@ dbus_glib_marshal_nm_manager_VOID__BOXED_BOXED_BOXED_POINTER (GClosure *clos gpointer arg_3, gpointer arg_4, gpointer data2); - register GMarshalFunc_VOID__BOXED_BOXED_BOXED_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__BOXED_BOXED_BOXED_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 5); @@ -215,9 +215,9 @@ dbus_glib_marshal_nm_manager_VOID__STRING_STRING_POINTER (GClosure *closure, gpointer arg_2, gpointer arg_3, gpointer data2); - register GMarshalFunc_VOID__STRING_STRING_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__STRING_STRING_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 4); @@ -261,9 +261,9 @@ dbus_glib_marshal_nm_manager_BOOLEAN__STRING_POINTER_POINTER (GClosure *clos gpointer arg_2, gpointer arg_3, gpointer data2); - register GMarshalFunc_BOOLEAN__STRING_POINTER_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_BOOLEAN__STRING_POINTER_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; gboolean v_return; g_return_if_fail (return_value != NULL); @@ -309,9 +309,9 @@ dbus_glib_marshal_nm_manager_BOOLEAN__POINTER_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_BOOLEAN__POINTER_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_BOOLEAN__POINTER_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; gboolean v_return; g_return_if_fail (return_value != NULL); @@ -357,9 +357,9 @@ dbus_glib_marshal_nm_manager_BOOLEAN__POINTER_POINTER_POINTER (GClosure *clo gpointer arg_2, gpointer arg_3, gpointer data2); - register GMarshalFunc_BOOLEAN__POINTER_POINTER_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_BOOLEAN__POINTER_POINTER_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; gboolean v_return; g_return_if_fail (return_value != NULL); diff --git a/src/nm-manager.c b/src/nm-manager.c index 34ec0819..cc52ea78 100644 --- a/src/nm-manager.c +++ b/src/nm-manager.c @@ -853,6 +853,14 @@ device_removed_cb (NMDevice *device, gpointer user_data) } static void +device_link_initialized_cb (NMDevice *device, gpointer user_data) +{ + NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (user_data); + + nm_settings_device_added (priv->settings, device); +} + +static void aipd_handle_event (DBusGProxy *proxy, const char *event, const char *iface, @@ -1813,6 +1821,10 @@ add_device (NMManager *self, NMDevice *device, gboolean try_assume) G_CALLBACK (device_removed_cb), self); + g_signal_connect (device, NM_DEVICE_LINK_INITIALIZED, + G_CALLBACK (device_link_initialized_cb), + self); + g_signal_connect (device, "notify::" NM_DEVICE_IP_IFACE, G_CALLBACK (device_ip_iface_changed), self); @@ -1871,6 +1883,9 @@ add_device (NMManager *self, NMDevice *device, gboolean try_assume) NM_DEVICE_STATE_REASON_NOW_MANAGED); } + /* Try to generate a default connection. If this fails because the link is + * not initialized, we will retry again in device_link_initialized_cb(). + */ nm_settings_device_added (priv->settings, device); g_signal_emit (self, signals[DEVICE_ADDED], 0, device); g_object_notify (G_OBJECT (self), NM_MANAGER_DEVICES); @@ -2073,20 +2088,24 @@ nm_manager_get_connection_device (NMManager *self, static NMDevice * nm_manager_get_best_device_for_connection (NMManager *self, - NMConnection *connection) + NMConnection *connection, + gboolean for_user_request) { const GSList *devices, *iter; NMDevice *act_device = nm_manager_get_connection_device (self, connection); + NMDeviceCheckConAvailableFlags flags; if (act_device) return act_device; + flags = for_user_request ? NM_DEVICE_CHECK_CON_AVAILABLE_FOR_USER_REQUEST : NM_DEVICE_CHECK_CON_AVAILABLE_NONE; + /* Pick the first device that's compatible with the connection. */ devices = nm_manager_get_devices (self); for (iter = devices; iter; iter = g_slist_next (iter)) { NMDevice *device = NM_DEVICE (iter->data); - if (nm_device_check_connection_available (device, connection, NM_DEVICE_CHECK_CON_AVAILABLE_NONE, NULL)) + if (nm_device_check_connection_available (device, connection, flags, NULL)) return device; } @@ -2566,7 +2585,7 @@ autoconnect_slaves (NMManager *manager, nm_manager_activate_connection (manager, slave_connection, NULL, - nm_manager_get_best_device_for_connection (manager, slave_connection), + nm_manager_get_best_device_for_connection (manager, slave_connection, FALSE), subject, &local_err); if (local_err) { @@ -3077,7 +3096,7 @@ validate_activation_request (NMManager *self, goto error; } } else - device = nm_manager_get_best_device_for_connection (self, connection); + device = nm_manager_get_best_device_for_connection (self, connection, TRUE); if (!device) { gboolean is_software = nm_connection_is_virtual (connection); @@ -5100,7 +5119,16 @@ dispose (GObject *object) g_clear_object (&priv->policy); } - g_clear_object (&priv->settings); + if (priv->settings) { + g_signal_handlers_disconnect_by_func (priv->settings, settings_startup_complete_changed, manager); + g_signal_handlers_disconnect_by_func (priv->settings, system_unmanaged_devices_changed_cb, manager); + g_signal_handlers_disconnect_by_func (priv->settings, system_hostname_changed_cb, manager); + g_signal_handlers_disconnect_by_func (priv->settings, connection_added, manager); + g_signal_handlers_disconnect_by_func (priv->settings, connection_changed, manager); + g_signal_handlers_disconnect_by_func (priv->settings, connection_removed, manager); + g_clear_object (&priv->settings); + } + g_free (priv->state_file); g_clear_object (&priv->vpn_manager); @@ -5128,6 +5156,11 @@ dispose (GObject *object) g_clear_object (&priv->fw_monitor); } + if (priv->rfkill_mgr) { + g_signal_handlers_disconnect_by_func (priv->rfkill_mgr, rfkill_manager_rfkill_changed_cb, manager); + g_clear_object (&priv->rfkill_mgr); + } + nm_device_factory_manager_for_each_factory (_deinit_device_factory, manager); if (priv->timestamp_update_id) { diff --git a/src/nm-policy.c b/src/nm-policy.c index 8a573c8b..1be5c4a3 100644 --- a/src/nm-policy.c +++ b/src/nm-policy.c @@ -754,17 +754,21 @@ process_secondaries (NMPolicy *policy, gboolean connected) { NMPolicyPrivate *priv = NM_POLICY_GET_PRIVATE (policy); - GSList *iter, *iter2; + GSList *iter, *iter2, *next, *next2; /* Loop through devices waiting for secondary connections to activate */ - for (iter = priv->pending_secondaries; iter; iter = g_slist_next (iter)) { + for (iter = priv->pending_secondaries; iter; iter = next) { PendingSecondaryData *secondary_data = (PendingSecondaryData *) iter->data; NMDevice *item_device = secondary_data->device; + next = g_slist_next (iter); + /* Look for 'active' in each device's secondary connections list */ - for (iter2 = secondary_data->secondaries; iter2; iter2 = g_slist_next (iter2)) { + for (iter2 = secondary_data->secondaries; iter2; iter2 = next2) { NMActiveConnection *secondary_active = NM_ACTIVE_CONNECTION (iter2->data); + next2 = g_slist_next (iter2); + if (active != secondary_active) continue; diff --git a/src/nm-ppp-manager-glue.h b/src/nm-ppp-manager-glue.h index c3ba2ee4..5aea527e 100644 --- a/src/nm-ppp-manager-glue.h +++ b/src/nm-ppp-manager-glue.h @@ -78,9 +78,9 @@ dbus_glib_marshal_nm_ppp_manager_BOOLEAN__UINT_POINTER (GClosure *closure, guint arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_BOOLEAN__UINT_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_BOOLEAN__UINT_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; gboolean v_return; g_return_if_fail (return_value != NULL); @@ -125,9 +125,9 @@ dbus_glib_marshal_nm_ppp_manager_BOOLEAN__BOXED_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_BOOLEAN__BOXED_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_BOOLEAN__BOXED_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; gboolean v_return; g_return_if_fail (return_value != NULL); diff --git a/src/nm-route-manager.c b/src/nm-route-manager.c index b392fc17..bb21384e 100644 --- a/src/nm-route-manager.c +++ b/src/nm-route-manager.c @@ -465,13 +465,13 @@ _vx_route_sync (const VTableIP *vtable, NMRouteManager *self, int ifindex, const ASSERT_route_index_valid (vtable, known_routes, known_routes_idx, FALSE); _LOGD (vtable->vt->addr_family, "%3d: sync %u IPv%c routes", ifindex, known_routes_idx->len, vtable->vt->is_ip4 ? '4' : '6'); - if (_LOGT_ENABLED (vtable->vt->addr_family)) { + if (_LOGt_ENABLED (vtable->vt->addr_family)) { for (i = 0; i < known_routes_idx->len; i++) { - _LOGT (vtable->vt->addr_family, "%3d: sync new route #%u: %s", + _LOGt (vtable->vt->addr_family, "%3d: sync new route #%u: %s", ifindex, i, vtable->vt->route_to_string (VTABLE_ROUTE_INDEX (vtable, known_routes, i))); } for (i = 0; i < ipx_routes->index->len; i++) - _LOGT (vtable->vt->addr_family, "%3d: STATE: has #%u - %s (%lld)", + _LOGt (vtable->vt->addr_family, "%3d: STATE: has #%u - %s (%lld)", ifindex, i, vtable->vt->route_to_string (ipx_routes->index->entries[i]), (long long) g_array_index (ipx_routes->effective_metrics, gint64, i)); @@ -513,7 +513,7 @@ _vx_route_sync (const VTableIP *vtable, NMRouteManager *self, int ifindex, const cur_ipx_route->rx.ifindex = ifindex; cur_ipx_route->rx.metric = vtable->vt->metric_normalize (cur_ipx_route->rx.metric); ipx_routes_changed = TRUE; - _LOGT (vtable->vt->addr_family, "%3d: STATE: update #%u - %s", ifindex, i_ipx_routes, vtable->vt->route_to_string (cur_ipx_route)); + _LOGt (vtable->vt->addr_family, "%3d: STATE: update #%u - %s", ifindex, i_ipx_routes, vtable->vt->route_to_string (cur_ipx_route)); } } else if (cur_known_route) { g_assert (!cur_ipx_route || route_id_cmp_result > 0); @@ -571,7 +571,7 @@ _vx_route_sync (const VTableIP *vtable, NMRouteManager *self, int ifindex, const && cur_plat_route->rx.metric == *p_effective_metric) { /* we are about to delete cur_ipx_route and we have a matching route * in platform. Delete it. */ - _LOGT (vtable->vt->addr_family, "%3d: platform rt-rm #%u - %s", ifindex, i_plat_routes, vtable->vt->route_to_string (cur_plat_route)); + _LOGt (vtable->vt->addr_family, "%3d: platform rt-rm #%u - %s", ifindex, i_plat_routes, vtable->vt->route_to_string (cur_plat_route)); vtable->vt->route_delete (priv->platform, ifindex, cur_plat_route); } } @@ -583,7 +583,7 @@ _vx_route_sync (const VTableIP *vtable, NMRouteManager *self, int ifindex, const for (i = 0; i < to_delete_indexes->len; i++) { guint idx = g_array_index (to_delete_indexes, guint, i); - _LOGT (vtable->vt->addr_family, "%3d: STATE: delete #%u - %s", ifindex, idx, vtable->vt->route_to_string (ipx_routes->index->entries[idx])); + _LOGt (vtable->vt->addr_family, "%3d: STATE: delete #%u - %s", ifindex, idx, vtable->vt->route_to_string (ipx_routes->index->entries[idx])); g_array_index (to_delete_indexes, guint, i) = _route_index_reverse_idx (vtable, ipx_routes->index, idx, ipx_routes->entries); } g_array_sort (to_delete_indexes, (GCompareFunc) _sort_indexes_cmp); @@ -607,7 +607,7 @@ _vx_route_sync (const VTableIP *vtable, NMRouteManager *self, int ifindex, const g_array_index (ipx_routes->effective_metrics_reverse, gint64, j++) = -1; - _LOGT (vtable->vt->addr_family, "%3d: STATE: added #%u - %s", ifindex, ipx_routes->entries->len - 1, vtable->vt->route_to_string (ipx_route)); + _LOGt (vtable->vt->addr_family, "%3d: STATE: added #%u - %s", ifindex, ipx_routes->entries->len - 1, vtable->vt->route_to_string (ipx_route)); } g_ptr_array_unref (to_add_routes); } @@ -692,7 +692,7 @@ _vx_route_sync (const VTableIP *vtable, NMRouteManager *self, int ifindex, const break; } next: - _LOGT (vtable->vt->addr_family, "%3d: new metric #%u - %s (%lld)", + _LOGt (vtable->vt->addr_family, "%3d: new metric #%u - %s (%lld)", ifindex, i_ipx_routes, vtable->vt->route_to_string (cur_ipx_route), (long long) *p_effective_metric); @@ -717,7 +717,7 @@ next: g_assert (cur_plat_route->rx.ifindex == ifindex); - _LOGT (vtable->vt->addr_family, "%3d: platform rt #%u - %s", ifindex, i_plat_routes, vtable->vt->route_to_string (cur_plat_route)); + _LOGt (vtable->vt->addr_family, "%3d: platform rt #%u - %s", ifindex, i_plat_routes, vtable->vt->route_to_string (cur_plat_route)); /* skip over @cur_ipx_route that are ordered before @cur_plat_route */ while ( cur_ipx_route @@ -987,7 +987,7 @@ _ip4_device_routes_idle_cb (IP4DeviceRoutePurgeEntry *entry) return G_SOURCE_REMOVE; } - _LOGT (vtable_v4.vt->addr_family, "device-route: delete %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); + _LOGt (vtable_v4.vt->addr_family, "device-route: delete %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); nm_platform_ip4_route_delete (priv->platform, entry->obj->ip4_route.ifindex, @@ -1030,14 +1030,14 @@ _ip4_device_routes_ip4_route_changed (NMPlatform *platform, return; if (_ip4_device_routes_entry_expired (entry, nm_utils_get_monotonic_timestamp_ns ())) { - _LOGT (vtable_v4.vt->addr_family, "device-route: cleanup-ch %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); + _LOGt (vtable_v4.vt->addr_family, "device-route: cleanup-ch %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); g_hash_table_remove (priv->ip4_device_routes.entries, entry->obj); _ip4_device_routes_cancel (self); return; } if (entry->idle_id == 0) { - _LOGT (vtable_v4.vt->addr_family, "device-route: schedule %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); + _LOGt (vtable_v4.vt->addr_family, "device-route: schedule %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); entry->idle_id = g_idle_add ((GSourceFunc) _ip4_device_routes_idle_cb, entry); } } @@ -1050,7 +1050,7 @@ _ip4_device_routes_cancel (NMRouteManager *self) if (priv->ip4_device_routes.gc_id) { if (g_hash_table_size (priv->ip4_device_routes.entries) > 0) return G_SOURCE_CONTINUE; - _LOGT (vtable_v4.vt->addr_family, "device-route: cancel"); + _LOGt (vtable_v4.vt->addr_family, "device-route: cancel"); if (priv->platform) g_signal_handlers_disconnect_by_func (priv->platform, G_CALLBACK (_ip4_device_routes_ip4_route_changed), self); nm_clear_g_source (&priv->ip4_device_routes.gc_id); @@ -1071,7 +1071,7 @@ _ip4_device_routes_gc (NMRouteManager *self) g_hash_table_iter_init (&iter, priv->ip4_device_routes.entries); while (g_hash_table_iter_next (&iter, NULL, (gpointer *) &entry)) { if (_ip4_device_routes_entry_expired (entry, now)) { - _LOGT (vtable_v4.vt->addr_family, "device-route: cleanup-gc %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); + _LOGt (vtable_v4.vt->addr_family, "device-route: cleanup-gc %s", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); g_hash_table_iter_remove (&iter); } } @@ -1104,7 +1104,7 @@ nm_route_manager_ip4_route_register_device_route_purge_list (NMRouteManager *sel IP4DeviceRoutePurgeEntry *entry; entry = _ip4_device_routes_purge_entry_create (self, &g_array_index (device_route_purge_list, NMPlatformIP4Route, i), now_ns); - _LOGT (vtable_v4.vt->addr_family, "device-route: watch (%s) %s", + _LOGt (vtable_v4.vt->addr_family, "device-route: watch (%s) %s", g_hash_table_contains (priv->ip4_device_routes.entries, entry->obj) ? "update" : "new", nmp_object_to_string (entry->obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); diff --git a/src/nm-settings-connection-glue.h b/src/nm-settings-connection-glue.h index 23797562..22f096c6 100644 --- a/src/nm-settings-connection-glue.h +++ b/src/nm-settings-connection-glue.h @@ -78,9 +78,9 @@ dbus_glib_marshal_nm_settings_connection_VOID__STRING_POINTER (GClosure *clo gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__STRING_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__STRING_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); @@ -122,9 +122,9 @@ dbus_glib_marshal_nm_settings_connection_VOID__BOXED_POINTER (GClosure *clos gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__BOXED_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__BOXED_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); diff --git a/src/nm-settings-glue.h b/src/nm-settings-glue.h index 631f4530..d03c4545 100644 --- a/src/nm-settings-glue.h +++ b/src/nm-settings-glue.h @@ -78,9 +78,9 @@ dbus_glib_marshal_nm_settings_BOOLEAN__POINTER_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_BOOLEAN__POINTER_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_BOOLEAN__POINTER_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; gboolean v_return; g_return_if_fail (return_value != NULL); @@ -125,9 +125,9 @@ dbus_glib_marshal_nm_settings_VOID__STRING_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__STRING_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__STRING_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); @@ -169,9 +169,9 @@ dbus_glib_marshal_nm_settings_VOID__BOXED_POINTER (GClosure *closure, gpointer arg_1, gpointer arg_2, gpointer data2); - register GMarshalFunc_VOID__BOXED_POINTER callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; + GMarshalFunc_VOID__BOXED_POINTER callback; + GCClosure *cc = (GCClosure*) closure; + gpointer data1, data2; g_return_if_fail (n_param_values == 3); diff --git a/src/org.freedesktop.NetworkManager.conf b/src/org.freedesktop.NetworkManager.conf index afbcc720..10c6184e 100644 --- a/src/org.freedesktop.NetworkManager.conf +++ b/src/org.freedesktop.NetworkManager.conf @@ -27,6 +27,8 @@ <allow send_destination="org.freedesktop.NetworkManager.iodine"/> <allow send_destination="org.freedesktop.NetworkManager.l2tp"/> <allow send_destination="org.freedesktop.NetworkManager.libreswan"/> + <allow send_destination="org.freedesktop.NetworkManager.fortisslvpn"/> + <allow send_destination="org.freedesktop.NetworkManager.strongswan"/> </policy> <policy context="default"> <deny own="org.freedesktop.NetworkManager"/> diff --git a/src/platform/Makefile.in b/src/platform/Makefile.in index 0616c88b..e8b73294 100644 --- a/src/platform/Makefile.in +++ b/src/platform/Makefile.in @@ -313,6 +313,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c index cd0a4e07..2dd0b512 100644 --- a/src/platform/nm-linux-platform.c +++ b/src/platform/nm-linux-platform.c @@ -169,6 +169,9 @@ _nl_get_vtable (void) vtable.f_nl_has_capability = &_nl_f_nl_has_capability; trace ("libnl: rtnl_link_get_link_netnsid() %s", vtable.f_rtnl_link_get_link_netnsid ? "supported" : "not supported"); + + g_return_val_if_fail (vtable.handle, &vtable); + g_return_val_if_fail (vtable.handle_route, &vtable); } return &vtable; @@ -463,7 +466,7 @@ _nl_sock_request_link (NMPlatform *platform, struct nl_sock *sk, int ifindex, co g_return_val_if_fail (ifindex > 0 || name, -NLE_INVAL); - _LOGT ("sock: request-link %d%s%s%s", ifindex, name ? ", \"" : "", name ? name : "", name ? "\"" : ""); + _LOGt ("sock: request-link %d%s%s%s", ifindex, name ? ", \"" : "", name ? name : "", name ? "\"" : ""); if ((err = rtnl_link_build_get_request (ifindex, name, &msg)) < 0) return err; @@ -488,7 +491,7 @@ _nl_sock_request_all (NMPlatform *platform, struct nl_sock *sk, NMPObjectType ob klass = nmp_class_from_type (obj_type); - _LOGT ("sock: request-all-%s", klass->obj_type_name); + _LOGt ("sock: request-all-%s", klass->obj_type_name); /* reimplement * nl_rtgen_request (sk, klass->rtm_gettype, klass->addr_family, NLM_F_DUMP); @@ -898,7 +901,7 @@ link_extract_type (NMPlatform *platform, struct rtnl_link *rtnllink, gboolean *c obj = _lookup_link_cached (platform, rtnl_link_get_ifindex (rtnllink), completed_from_cache, link_cached); if (obj && obj->link.kind) { rtnl_type = obj->link.kind; - _LOGT ("link_extract_type(): complete kind from cache: ifindex=%d, kind=%s", rtnl_link_get_ifindex (rtnllink), rtnl_type); + _LOGt ("link_extract_type(): complete kind from cache: ifindex=%d, kind=%s", rtnl_link_get_ifindex (rtnllink), rtnl_type); } } if (out_kind) @@ -944,18 +947,18 @@ link_extract_type (NMPlatform *platform, struct rtnl_link *rtnllink, gboolean *c gs_free char *anycast_mask = NULL; gs_free char *devtype = NULL; - if (arptype == 256) { - /* Some s390 CTC-type devices report 256 for the encapsulation type - * for some reason, but we need to call them Ethernet. - */ - if (!g_strcmp0 (driver, "ctcm")) - return NM_LINK_TYPE_ETHERNET; - } - /* Fallback OVS detection for kernel <= 3.16 */ if (nmp_utils_ethtool_get_driver_info (ifname, &driver, NULL, NULL)) { if (!g_strcmp0 (driver, "openvswitch")) return NM_LINK_TYPE_OPENVSWITCH; + + if (arptype == 256) { + /* Some s390 CTC-type devices report 256 for the encapsulation type + * for some reason, but we need to call them Ethernet. + */ + if (!g_strcmp0 (driver, "ctcm")) + return NM_LINK_TYPE_ETHERNET; + } } sysfs_path = g_strdup_printf ("/sys/class/net/%s", ifname); @@ -1009,8 +1012,8 @@ _nmp_vt_cmd_plobj_init_from_nl_link (NMPlatform *platform, NMPlatformObject *_ob nm_assert (memcmp (obj, ((char [sizeof (NMPObjectLink)]) { 0 }), sizeof (NMPObjectLink)) == 0); - if (_LOGT_ENABLED () && !NM_IN_SET (rtnl_link_get_family (nlo), AF_UNSPEC, AF_BRIDGE)) - _LOGT ("netlink object for ifindex %d has unusual family %d", rtnl_link_get_ifindex (nlo), rtnl_link_get_family (nlo)); + if (_LOGt_ENABLED () && !NM_IN_SET (rtnl_link_get_family (nlo), AF_UNSPEC, AF_BRIDGE)) + _LOGt ("netlink object for ifindex %d has unusual family %d", rtnl_link_get_ifindex (nlo), rtnl_link_get_family (nlo)); obj->ifindex = rtnl_link_get_ifindex (nlo); @@ -1132,6 +1135,7 @@ _rtnl_addr_last_update_time_to_nm (const struct rtnl_addr *rtnladdr, gint32 *out guint32 last_update_time = rtnl_addr_get_last_update_time ((struct rtnl_addr *) rtnladdr); struct timespec tp; gint64 now_nl, now_nm, result; + int err; /* timestamp is unset. Default to 1. */ if (!last_update_time) { @@ -1142,7 +1146,8 @@ _rtnl_addr_last_update_time_to_nm (const struct rtnl_addr *rtnladdr, gint32 *out /* do all the calculations in milliseconds scale */ - clock_gettime (CLOCK_MONOTONIC, &tp); + err = clock_gettime (CLOCK_MONOTONIC, &tp); + g_assert (err == 0); now_nm = nm_utils_get_monotonic_timestamp_ms (); now_nl = (((gint64) tp.tv_sec) * ((gint64) 1000)) + (tp.tv_nsec / (NM_UTILS_NS_PER_SECOND/1000)); @@ -1466,7 +1471,7 @@ do_emit_signal (NMPlatform *platform, const NMPObject *obj, NMPCacheOpsType cach klass = NMP_OBJECT_GET_CLASS (obj); - _LOGT ("emit signal %s %s: %s (%ld)", + _LOGt ("emit signal %s %s: %s (%ld)", klass->signal_type, nm_platform_signal_change_type_to_string ((NMPlatformSignalChangeType) cache_op), nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0), @@ -1523,8 +1528,8 @@ delayed_action_to_string (DelayedActionType action_type) } } -#define _LOGT_delayed_action(action_type, arg, operation) \ - _LOGT ("delayed-action: %s %s (%d) [%p / %d]", ""operation, delayed_action_to_string (action_type), (int) action_type, arg, GPOINTER_TO_INT (arg)) +#define _LOGt_delayed_action(action_type, arg, operation) \ + _LOGt ("delayed-action: %s %s (%d) [%p / %d]", ""operation, delayed_action_to_string (action_type), (int) action_type, arg, GPOINTER_TO_INT (arg)) static void delayed_action_handle_MASTER_CONNECTED (NMPlatform *platform, int master_ifindex) @@ -1579,7 +1584,7 @@ delayed_action_handle_one (NMPlatform *platform) priv->delayed_action.flags &= ~DELAYED_ACTION_TYPE_MASTER_CONNECTED; nm_assert (_nm_utils_ptrarray_find_first (priv->delayed_action.list_master_connected->pdata, priv->delayed_action.list_master_connected->len, user_data) < 0); - _LOGT_delayed_action (DELAYED_ACTION_TYPE_MASTER_CONNECTED, user_data, "handle"); + _LOGt_delayed_action (DELAYED_ACTION_TYPE_MASTER_CONNECTED, user_data, "handle"); delayed_action_handle_MASTER_CONNECTED (platform, GPOINTER_TO_INT (user_data)); return TRUE; } @@ -1588,7 +1593,7 @@ delayed_action_handle_one (NMPlatform *platform) /* Next we prefer read-netlink, because the buffer size is limited and we want to process events * from netlink early. */ if (NM_FLAGS_HAS (priv->delayed_action.flags, DELAYED_ACTION_TYPE_READ_NETLINK)) { - _LOGT_delayed_action (DELAYED_ACTION_TYPE_READ_NETLINK, NULL, "handle"); + _LOGt_delayed_action (DELAYED_ACTION_TYPE_READ_NETLINK, NULL, "handle"); priv->delayed_action.flags &= ~DELAYED_ACTION_TYPE_READ_NETLINK; delayed_action_handle_READ_NETLINK (platform); return TRUE; @@ -1601,10 +1606,10 @@ delayed_action_handle_one (NMPlatform *platform) priv->delayed_action.flags &= ~DELAYED_ACTION_TYPE_REFRESH_ALL; - if (_LOGT_ENABLED ()) { + if (_LOGt_ENABLED ()) { for (iflags = (DelayedActionType) 0x1LL; iflags <= DELAYED_ACTION_TYPE_MAX; iflags <<= 1) { if (NM_FLAGS_HAS (flags, iflags)) - _LOGT_delayed_action (iflags, NULL, "handle"); + _LOGt_delayed_action (iflags, NULL, "handle"); } } @@ -1617,11 +1622,11 @@ delayed_action_handle_one (NMPlatform *platform) user_data = priv->delayed_action.list_refresh_link->pdata[0]; g_ptr_array_remove_index_fast (priv->delayed_action.list_refresh_link, 0); - if (priv->delayed_action.list_master_connected->len == 0) + if (priv->delayed_action.list_refresh_link->len == 0) priv->delayed_action.flags &= ~DELAYED_ACTION_TYPE_REFRESH_LINK; nm_assert (_nm_utils_ptrarray_find_first (priv->delayed_action.list_refresh_link->pdata, priv->delayed_action.list_refresh_link->len, user_data) < 0); - _LOGT_delayed_action (DELAYED_ACTION_TYPE_REFRESH_LINK, user_data, "handle"); + _LOGt_delayed_action (DELAYED_ACTION_TYPE_REFRESH_LINK, user_data, "handle"); delayed_action_handle_REFRESH_LINK (platform, GPOINTER_TO_INT (user_data)); @@ -1653,6 +1658,33 @@ delayed_action_handle_idle (gpointer user_data) } static void +delayed_action_clear_REFRESH_LINK (NMPlatform *platform, int ifindex) +{ + NMLinuxPlatformPrivate *priv; + gssize idx; + gpointer user_data; + + if (ifindex <= 0) + return; + + priv = NM_LINUX_PLATFORM_GET_PRIVATE (platform); + if (!NM_FLAGS_HAS (priv->delayed_action.flags, DELAYED_ACTION_TYPE_REFRESH_LINK)) + return; + + user_data = GINT_TO_POINTER (ifindex); + + idx = _nm_utils_ptrarray_find_first (priv->delayed_action.list_refresh_link->pdata, priv->delayed_action.list_refresh_link->len, user_data); + if (idx < 0) + return; + + _LOGt_delayed_action (DELAYED_ACTION_TYPE_REFRESH_LINK, user_data, "clear"); + + g_ptr_array_remove_index_fast (priv->delayed_action.list_refresh_link, idx); + if (priv->delayed_action.list_refresh_link->len == 0) + priv->delayed_action.flags &= ~DELAYED_ACTION_TYPE_REFRESH_LINK; +} + +static void delayed_action_schedule (NMPlatform *platform, DelayedActionType action_type, gpointer user_data) { NMLinuxPlatformPrivate *priv = NM_LINUX_PLATFORM_GET_PRIVATE (platform); @@ -1673,10 +1705,10 @@ delayed_action_schedule (NMPlatform *platform, DelayedActionType action_type, gp priv->delayed_action.flags |= action_type; - if (_LOGT_ENABLED ()) { + if (_LOGt_ENABLED ()) { for (iflags = (DelayedActionType) 0x1LL; iflags <= DELAYED_ACTION_TYPE_MAX; iflags <<= 1) { if (NM_FLAGS_HAS (action_type, iflags)) - _LOGT_delayed_action (iflags, user_data, "schedule"); + _LOGt_delayed_action (iflags, user_data, "schedule"); } } @@ -1694,7 +1726,7 @@ cache_prune_candidates_record_all (NMPlatform *platform, NMPObjectType obj_type) priv->prune_candidates = nmp_cache_lookup_all_to_hash (priv->cache, nmp_cache_id_init_object_type (NMP_CACHE_ID_STATIC, obj_type, FALSE), priv->prune_candidates); - _LOGT ("cache-prune: record %s (now %u candidates)", nmp_class_from_type (obj_type)->obj_type_name, + _LOGt ("cache-prune: record %s (now %u candidates)", nmp_class_from_type (obj_type)->obj_type_name, priv->prune_candidates ? g_hash_table_size (priv->prune_candidates) : 0); } @@ -1711,8 +1743,8 @@ cache_prune_candidates_record_one (NMPlatform *platform, NMPObject *obj) if (!priv->prune_candidates) priv->prune_candidates = g_hash_table_new_full (NULL, NULL, (GDestroyNotify) nmp_object_unref, NULL); - if (_LOGT_ENABLED () && !g_hash_table_contains (priv->prune_candidates, obj)) - _LOGT ("cache-prune: record-one: %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ALL, NULL, 0)); + if (_LOGt_ENABLED () && !g_hash_table_contains (priv->prune_candidates, obj)) + _LOGt ("cache-prune: record-one: %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ALL, NULL, 0)); g_hash_table_add (priv->prune_candidates, nmp_object_ref (obj)); } @@ -1726,8 +1758,8 @@ cache_prune_candidates_drop (NMPlatform *platform, const NMPObject *obj) priv = NM_LINUX_PLATFORM_GET_PRIVATE (platform); if (priv->prune_candidates) { - if (_LOGT_ENABLED () && g_hash_table_contains (priv->prune_candidates, obj)) - _LOGT ("cache-prune: drop-one: %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ALL, NULL, 0)); + if (_LOGt_ENABLED () && g_hash_table_contains (priv->prune_candidates, obj)) + _LOGt ("cache-prune: drop-one: %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ALL, NULL, 0)); g_hash_table_remove (priv->prune_candidates, obj); } } @@ -1752,7 +1784,7 @@ cache_prune_candidates_prune (NMPlatform *platform) while (g_hash_table_iter_next (&iter, (gpointer *)&obj, NULL)) { auto_nmp_obj NMPObject *obj_cache = NULL; - _LOGT ("cache-prune: prune %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ALL, NULL, 0)); + _LOGt ("cache-prune: prune %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ALL, NULL, 0)); cache_op = nmp_cache_remove (priv->cache, obj, TRUE, &obj_cache, &was_visible, cache_pre_hook, platform); do_emit_signal (platform, obj_cache, cache_op, was_visible, NM_PLATFORM_REASON_INTERNAL); } @@ -1786,7 +1818,7 @@ cache_delayed_deletion_prune (NMPlatform *platform) if (prune_list) { for (i = 0; i < prune_list->len; i++) { obj = prune_list->pdata[i]; - _LOGT ("delayed-deletion: delete %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); + _LOGt ("delayed-deletion: delete %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); cache_remove_netlink (platform, obj, NULL, NULL, NM_PLATFORM_REASON_EXTERNAL); } g_ptr_array_unref (prune_list); @@ -1813,7 +1845,7 @@ cache_pre_hook (NMPCache *cache, const NMPObject *old, const NMPObject *new, NMP nm_assert (klass == (new ? NMP_OBJECT_GET_CLASS (new) : NMP_OBJECT_GET_CLASS (old))); - _LOGT ("update-cache-%s: %s: %s%s%s", + _LOGt ("update-cache-%s: %s: %s%s%s", klass->obj_type_name, (ops_type == NMP_CACHE_OPS_UPDATED ? "UPDATE" @@ -1869,6 +1901,37 @@ cache_pre_hook (NMPCache *cache, const NMPObject *old, const NMPObject *new, NMP } } { + int ifindex = -1; + + /* removal of a link could be caused by moving the link to another netns. + * In this case, we potentially have to update other links that have this link as parent. + * Currently, kernel misses to sent us a notification in this case (rh #1262908). */ + + if ( ops_type == NMP_CACHE_OPS_REMOVED + && old /* <-- nonsensical, make coverity happy */ + && old->_link.netlink.is_in_netlink) + ifindex = old->link.ifindex; + else if ( ops_type == NMP_CACHE_OPS_UPDATED + && old && new /* <-- nonsensical, make coverity happy */ + && old->_link.netlink.is_in_netlink + && !new->_link.netlink.is_in_netlink) + ifindex = new->link.ifindex; + + if (ifindex > 0) { + const NMPlatformLink *const *links; + + links = cache_lookup_all_objects (NMPlatformLink, platform, NMP_OBJECT_TYPE_LINK, FALSE); + if (links) { + for (; *links; links++) { + const NMPlatformLink *l = (*links); + + if (l->parent == ifindex) + delayed_action_schedule (platform, DELAYED_ACTION_TYPE_REFRESH_LINK, GINT_TO_POINTER (l->ifindex)); + } + } + } + } + { /* if a link goes down, we must refresh routes */ if ( ops_type == NMP_CACHE_OPS_UPDATED && old && new /* <-- nonsensical, make coverity happy */ @@ -1974,7 +2037,7 @@ _new_sequence_number (NMPlatform *platform, guint32 seq) { NMLinuxPlatformPrivate *priv = NM_LINUX_PLATFORM_GET_PRIVATE (platform); - _LOGT ("_new_sequence_number(): new sequence number %u", seq); + _LOGt ("_new_sequence_number(): new sequence number %u", seq); priv->nlh_seq_expect = seq; } @@ -1985,7 +2048,7 @@ do_request_link (NMPlatform *platform, int ifindex, const char *name, gboolean h NMLinuxPlatformPrivate *priv = NM_LINUX_PLATFORM_GET_PRIVATE (platform); guint32 seq; - _LOGT ("do_request_link (%d,%s)", ifindex, name ? name : ""); + _LOGt ("do_request_link (%d,%s)", ifindex, name ? name : ""); if (ifindex > 0) { NMPObject *obj; @@ -1993,7 +2056,7 @@ do_request_link (NMPlatform *platform, int ifindex, const char *name, gboolean h cache_prune_candidates_record_one (platform, (NMPObject *) nmp_cache_lookup_link (priv->cache, ifindex)); obj = nmp_object_new_link (ifindex); - _LOGT ("delayed-deletion: protect object %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); + _LOGt ("delayed-deletion: protect object %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); g_hash_table_insert (priv->delayed_deletion, obj, NULL); } @@ -2038,9 +2101,11 @@ do_request_all (NMPlatform *platform, DelayedActionType action_type, gboolean ha /* clear any delayed action that request a refresh of this object type. */ priv->delayed_action.flags &= ~iflags; + _LOGt_delayed_action (iflags, NULL, "handle (do-request-all)"); if (obj_type == NMP_OBJECT_TYPE_LINK) { priv->delayed_action.flags &= ~DELAYED_ACTION_TYPE_REFRESH_LINK; g_ptr_array_set_size (priv->delayed_action.list_refresh_link, 0); + _LOGt_delayed_action (DELAYED_ACTION_TYPE_REFRESH_LINK, NULL, "clear (do-request-all)"); } event_handler_read_netlink_all (platform, FALSE); @@ -2081,7 +2146,7 @@ kernel_add_object (NMPlatform *platform, NMPObjectType obj_type, const struct nl g_return_val_if_reached (-NLE_INVAL); } - _LOGT ("kernel-add-%s: returned %s (%d)", + _LOGt ("kernel-add-%s: returned %s (%d)", nmp_class_from_type (obj_type)->obj_type_name, nl_geterror (nle), -nle); switch (nle) { @@ -2125,20 +2190,20 @@ kernel_delete_object (NMPlatform *platform, NMPObjectType object_type, const str case -NLE_SUCCESS: return NLE_SUCCESS; case -NLE_OBJ_NOTFOUND: - _LOGT ("kernel-delete-%s: failed with \"%s\" (%d), meaning the object was already removed", + _LOGt ("kernel-delete-%s: failed with \"%s\" (%d), meaning the object was already removed", nmp_class_from_type (object_type)->obj_type_name, nl_geterror (nle), -nle); return -NLE_SUCCESS; case -NLE_FAILURE: if (object_type == NMP_OBJECT_TYPE_IP6_ADDRESS) { /* On RHEL7 kernel, deleting a non existing address fails with ENXIO (which libnl maps to NLE_FAILURE) */ - _LOGT ("kernel-delete-%s: deleting address failed with \"%s\" (%d), meaning the address was already removed", + _LOGt ("kernel-delete-%s: deleting address failed with \"%s\" (%d), meaning the address was already removed", nmp_class_from_type (object_type)->obj_type_name, nl_geterror (nle), -nle); return NLE_SUCCESS; } break; case -NLE_NOADDR: if (object_type == NMP_OBJECT_TYPE_IP4_ADDRESS || object_type == NMP_OBJECT_TYPE_IP6_ADDRESS) { - _LOGT ("kernel-delete-%s: deleting address failed with \"%s\" (%d), meaning the address was already removed", + _LOGt ("kernel-delete-%s: deleting address failed with \"%s\" (%d), meaning the address was already removed", nmp_class_from_type (object_type)->obj_type_name, nl_geterror (nle), -nle); return -NLE_SUCCESS; } @@ -2146,7 +2211,7 @@ kernel_delete_object (NMPlatform *platform, NMPObjectType object_type, const str default: break; } - _LOGT ("kernel-delete-%s: failed with %s (%d)", + _LOGt ("kernel-delete-%s: failed with %s (%d)", nmp_class_from_type (object_type)->obj_type_name, nl_geterror (nle), -nle); return nle; } @@ -2183,7 +2248,7 @@ kernel_change_link (NMPlatform *platform, struct rtnl_link *nlo, gboolean *compl obj_cache = nmp_cache_lookup_link (priv->cache, ifindex); if (!obj_cache || !obj_cache->_link.netlink.is_in_netlink) { - _LOGT ("kernel-change-link: failure changing link %d: cannot complete link", ifindex); + _LOGt ("kernel-change-link: failure changing link %d: cannot complete link", ifindex); *complete_from_cache = FALSE; return -NLE_INVAL; } @@ -2204,7 +2269,7 @@ kernel_change_link (NMPlatform *platform, struct rtnl_link *nlo, gboolean *compl nle = rtnl_link_build_add_request (nlo, nlflags, &msg); if (nle < 0) { - _LOGT ("kernel-change-link: failure changing link %d: cannot construct message (%s, %d)", + _LOGt ("kernel-change-link: failure changing link %d: cannot construct message (%s, %d)", ifindex, nl_geterror (nle), -nle); return nle; } @@ -2234,18 +2299,18 @@ errout: */ switch (nle) { case -NLE_SUCCESS: - _LOGT ("kernel-change-link: success changing link %d", ifindex); + _LOGt ("kernel-change-link: success changing link %d", ifindex); break; case -NLE_EXIST: - _LOGT ("kernel-change-link: success changing link %d: %s (%d)", + _LOGt ("kernel-change-link: success changing link %d: %s (%d)", ifindex, nl_geterror (nle), -nle); break; case -NLE_OBJ_NOTFOUND: - _LOGT ("kernel-change-link: failure changing link %d: firmware not found (%s, %d)", + _LOGt ("kernel-change-link: failure changing link %d: firmware not found (%s, %d)", ifindex, nl_geterror (nle), -nle); break; default: - _LOGT ("kernel-change-link: failure changing link %d: netlink error (%s, %d)", + _LOGt ("kernel-change-link: failure changing link %d: netlink error (%s, %d)", ifindex, nl_geterror (nle), -nle); break; } @@ -2277,13 +2342,13 @@ event_seq_check (struct nl_msg *msg, gpointer user_data) priv->nlh_seq_last = hdr->nlmsg_seq; if (priv->nlh_seq_expect == 0) - _LOGT ("event_seq_check(): seq %u received (not waited)", hdr->nlmsg_seq); + _LOGt ("event_seq_check(): seq %u received (not waited)", hdr->nlmsg_seq); else if (hdr->nlmsg_seq == priv->nlh_seq_expect) { - _LOGT ("event_seq_check(): seq %u received", hdr->nlmsg_seq); + _LOGt ("event_seq_check(): seq %u received", hdr->nlmsg_seq); priv->nlh_seq_expect = 0; } else - _LOGT ("event_seq_check(): seq %u received (wait for %u)", hdr->nlmsg_seq, priv->nlh_seq_last); + _LOGt ("event_seq_check(): seq %u received (wait for %u)", hdr->nlmsg_seq, priv->nlh_seq_last); return NL_OK; } @@ -2291,7 +2356,7 @@ event_seq_check (struct nl_msg *msg, gpointer user_data) static int event_err (struct sockaddr_nl *nla, struct nlmsgerr *nlerr, gpointer platform) { - _LOGT ("event_err(): error from kernel: %s (%d) for request %d", + _LOGt ("event_err(): error from kernel: %s (%d) for request %d", strerror (nlerr ? -nlerr->error : 0), nlerr ? -nlerr->error : 0, NM_LINUX_PLATFORM_GET_PRIVATE (platform)->nlh_seq_last); @@ -2333,13 +2398,13 @@ event_notification (struct nl_msg *msg, gpointer user_data) /* The event notifies about a deleted object. We don't need to initialize all the * fields of the nmp-object. Shortcut nmp_object_from_nl(). */ obj = nmp_object_from_nl (platform, nlo, TRUE, TRUE); - _LOGD ("event-notification: %s, seq %u: %s", + _LOGT ("event-notification: %s, seq %u: %s", _nl_nlmsg_type_to_str (msghdr->nlmsg_type, buf_nlmsg_type, sizeof (buf_nlmsg_type)), msghdr->nlmsg_seq, nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); break; default: obj = nmp_object_from_nl (platform, nlo, FALSE, TRUE); - _LOGD ("event-notification: %s, seq %u: %s", + _LOGT ("event-notification: %s, seq %u: %s", _nl_nlmsg_type_to_str (msghdr->nlmsg_type, buf_nlmsg_type, sizeof (buf_nlmsg_type)), msghdr->nlmsg_seq, nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_PUBLIC, NULL, 0)); break; @@ -2351,12 +2416,14 @@ event_notification (struct nl_msg *msg, gpointer user_data) switch (msghdr->nlmsg_type) { case RTM_NEWLINK: - if ( NMP_OBJECT_GET_TYPE (obj) == NMP_OBJECT_TYPE_LINK - && g_hash_table_lookup (priv->delayed_deletion, obj) != NULL) { - /* the object is scheduled for delayed deletion. Replace that object - * by clearing the value from priv->delayed_deletion. */ - _LOGT ("delayed-deletion: clear delayed deletion of protected object %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); - g_hash_table_insert (priv->delayed_deletion, nmp_object_ref (obj), NULL); + if (NMP_OBJECT_GET_TYPE (obj) == NMP_OBJECT_TYPE_LINK) { + if (g_hash_table_lookup (priv->delayed_deletion, obj) != NULL) { + /* the object is scheduled for delayed deletion. Replace that object + * by clearing the value from priv->delayed_deletion. */ + _LOGt ("delayed-deletion: clear delayed deletion of protected object %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); + g_hash_table_insert (priv->delayed_deletion, nmp_object_ref (obj), NULL); + } + delayed_action_clear_REFRESH_LINK (platform, obj->link.ifindex); } /* fall-through */ case RTM_NEWADDR: @@ -2369,7 +2436,7 @@ event_notification (struct nl_msg *msg, gpointer user_data) && g_hash_table_contains (priv->delayed_deletion, obj)) { /* We sometimes receive spurious RTM_DELLINK events. In this case, we want to delay * the deletion of the object until later. */ - _LOGT ("delayed-deletion: delay deletion of protected object %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); + _LOGt ("delayed-deletion: delay deletion of protected object %s", nmp_object_to_string (obj, NMP_OBJECT_TO_STRING_ID, NULL, 0)); g_hash_table_insert (priv->delayed_deletion, nmp_object_ref (obj), nmp_object_ref (obj)); break; } @@ -2681,7 +2748,7 @@ do_add_link (NMPlatform *platform, const char *name, const struct rtnl_link *nlo * link so that it is in the cache. A better solution would be to do everything * via one netlink socket. */ if (!nmp_cache_lookup_link_full (NM_LINUX_PLATFORM_GET_PRIVATE (platform)->cache, 0, obj_needle.link.name, FALSE, NM_LINK_TYPE_NONE, NULL, NULL)) { - _LOGT ("do-add-link: reload: the added link is not yet ready. Request %s", obj_needle.link.name); + _LOGt ("do-add-link: reload: the added link is not yet ready. Request %s", obj_needle.link.name); do_request_link (platform, 0, obj_needle.link.name, TRUE); } @@ -2733,7 +2800,7 @@ do_add_addrroute (NMPlatform *platform, const NMPObject *obj_id, const struct nl /* FIXME: instead of re-requesting the added object, add it via nlh_event * so that the events are in sync. */ if (!nmp_cache_lookup_obj (NM_LINUX_PLATFORM_GET_PRIVATE (platform)->cache, obj_id)) { - _LOGT ("do-add-%s: reload: the added object is not yet ready. Request %s", NMP_OBJECT_GET_CLASS (obj_id)->obj_type_name, nmp_object_to_string (obj_id, NMP_OBJECT_TO_STRING_ID, NULL, 0)); + _LOGt ("do-add-%s: reload: the added object is not yet ready. Request %s", NMP_OBJECT_GET_CLASS (obj_id)->obj_type_name, nmp_object_to_string (obj_id, NMP_OBJECT_TO_STRING_ID, NULL, 0)); do_request_one_type (platform, NMP_OBJECT_GET_TYPE (obj_id), TRUE); } @@ -2771,12 +2838,12 @@ do_delete_object (NMPlatform *platform, const NMPObject *obj_id, const struct nl obj = nmp_cache_lookup_link_full (priv->cache, obj_id->link.ifindex, obj_id->link.ifindex <= 0 && obj_id->link.name[0] ? obj_id->link.name : NULL, FALSE, NM_LINK_TYPE_NONE, NULL, NULL); if (obj && obj->_link.netlink.is_in_netlink) { - _LOGT ("do-delete-%s: reload: the deleted object is not yet removed. Request %s", NMP_OBJECT_GET_CLASS (obj_id)->obj_type_name, nmp_object_to_string (obj_id, NMP_OBJECT_TO_STRING_ID, NULL, 0)); + _LOGt ("do-delete-%s: reload: the deleted object is not yet removed. Request %s", NMP_OBJECT_GET_CLASS (obj_id)->obj_type_name, nmp_object_to_string (obj_id, NMP_OBJECT_TO_STRING_ID, NULL, 0)); do_request_link (platform, obj_id->link.ifindex, obj_id->link.name, TRUE); } } else { if (nmp_cache_lookup_obj (priv->cache, obj_id)) { - _LOGT ("do-delete-%s: reload: the deleted object is not yet removed. Request %s", NMP_OBJECT_GET_CLASS (obj_id)->obj_type_name, nmp_object_to_string (obj_id, NMP_OBJECT_TO_STRING_ID, NULL, 0)); + _LOGt ("do-delete-%s: reload: the deleted object is not yet removed. Request %s", NMP_OBJECT_GET_CLASS (obj_id)->obj_type_name, nmp_object_to_string (obj_id, NMP_OBJECT_TO_STRING_ID, NULL, 0)); do_request_one_type (platform, NMP_OBJECT_GET_TYPE (obj_id), TRUE); } } @@ -4621,7 +4688,7 @@ event_handler_read_netlink_all (NMPlatform *platform, gboolean wait_for_acks) if (!wait_for_acks || priv->nlh_seq_expect == 0) { if (wait_for_seq) - _LOGT ("read-netlink-all: ACK for sequence number %u received", priv->nlh_seq_expect); + _LOGt ("read-netlink-all: ACK for sequence number %u received", priv->nlh_seq_expect); return any; } @@ -4629,7 +4696,7 @@ event_handler_read_netlink_all (NMPlatform *platform, gboolean wait_for_acks) if (wait_for_seq != priv->nlh_seq_expect) { /* We are waiting for a new sequence number (or we will wait for the first time). * Reset/start counting the overall wait time. */ - _LOGT ("read-netlink-all: wait for ACK for sequence number %u...", priv->nlh_seq_expect); + _LOGt ("read-netlink-all: wait for ACK for sequence number %u...", priv->nlh_seq_expect); wait_for_seq = priv->nlh_seq_expect; timestamp = now; timeout = TIMEOUT; diff --git a/src/platform/nm-platform-utils.c b/src/platform/nm-platform-utils.c index b7f0947e..e9b8d4be 100644 --- a/src/platform/nm-platform-utils.c +++ b/src/platform/nm-platform-utils.c @@ -139,21 +139,31 @@ nmp_utils_ethtool_get_permanent_address (const char *ifname, guint8 *buf, size_t *length) { - gs_free struct ethtool_perm_addr *epaddr = NULL; + struct { + struct ethtool_perm_addr e; + guint8 _extra_data[NM_UTILS_HWADDR_LEN_MAX + 1]; + } edata; + guint zeros[NM_UTILS_HWADDR_LEN_MAX] = { 0 }; if (!ifname) return FALSE; - epaddr = g_malloc0 (sizeof (*epaddr) + NM_UTILS_HWADDR_LEN_MAX); - epaddr->cmd = ETHTOOL_GPERMADDR; - epaddr->size = NM_UTILS_HWADDR_LEN_MAX; + memset (&edata, 0, sizeof (edata)); + edata.e.cmd = ETHTOOL_GPERMADDR; + edata.e.size = NM_UTILS_HWADDR_LEN_MAX; - if (!ethtool_get (ifname, epaddr)) + if (!ethtool_get (ifname, &edata.e)) return FALSE; - g_assert (epaddr->size <= NM_UTILS_HWADDR_LEN_MAX); - memcpy (buf, epaddr->data, epaddr->size); - *length = epaddr->size; + g_assert (edata.e.size <= NM_UTILS_HWADDR_LEN_MAX); + + /* Some drivers might return a permanent address of all zeros. + * Reject that (rh#1264024) */ + if (memcmp (edata.e.data, zeros, edata.e.size) == 0) + return FALSE; + + memcpy (buf, edata.e.data, edata.e.size); + *length = edata.e.size; return TRUE; } @@ -269,6 +279,9 @@ nmp_utils_ethtool_set_wake_on_lan (const char *ifname, { struct ethtool_wolinfo wol_info = { }; + if (wol == NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE) + return TRUE; + nm_log_dbg (LOGD_PLATFORM, "setting Wake-on-LAN options 0x%x, password '%s'", (unsigned int) wol, wol_password); diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c index fcb5b061..9948ac8b 100644 --- a/src/platform/nm-platform.c +++ b/src/platform/nm-platform.c @@ -427,7 +427,7 @@ nm_platform_link_get_all (NMPlatform *self) for (i = 0; i < links->len; i++) { item = &g_array_index (links, NMPlatformLink, i); - _LOGT ("link-get: %3d: %s", i, nm_platform_link_to_string (item)); + _LOGt ("link-get: %3d: %s", i, nm_platform_link_to_string (item)); nm_assert (item->ifindex > 0 && !g_hash_table_contains (unseen, GINT_TO_POINTER (item->ifindex))); @@ -483,7 +483,7 @@ nm_platform_link_get_all (NMPlatform *self) if (item->parent > 0 && g_hash_table_contains (unseen, GINT_TO_POINTER (item->parent))) continue; - _LOGT ("link-get: add %3d -> %3d: %s", i, j, nm_platform_link_to_string (item)); + _LOGt ("link-get: add %3d -> %3d: %s", i, j, nm_platform_link_to_string (item)); g_hash_table_remove (unseen, GINT_TO_POINTER (item->ifindex)); g_array_index (result, NMPlatformLink, j++) = *item; @@ -496,7 +496,7 @@ nm_platform_link_get_all (NMPlatform *self) * This can happen for veth pairs where each peer is parent of the other end. */ item = &g_array_index (links, NMPlatformLink, first_idx); - _LOGT ("link-get: add (loop) %3d -> %3d: %s", first_idx, j, nm_platform_link_to_string (item)); + _LOGt ("link-get: add (loop) %3d -> %3d: %s", first_idx, j, nm_platform_link_to_string (item)); g_hash_table_remove (unseen, GINT_TO_POINTER (item->ifindex)); g_array_index (result, NMPlatformLink, j++) = *item; diff --git a/src/platform/nmp-object.c b/src/platform/nmp-object.c index 7fe2d7d3..eb6bfc3a 100644 --- a/src/platform/nmp-object.c +++ b/src/platform/nmp-object.c @@ -178,7 +178,7 @@ nmp_object_ref (NMPObject *obj) g_return_val_if_fail (obj->_ref_count != NMP_REF_COUNT_STACKINIT, NULL); obj->_ref_count++; - _LOGT (obj, "ref: %d", obj->_ref_count); + _LOGt (obj, "ref: %d", obj->_ref_count); return obj; } @@ -189,7 +189,7 @@ nmp_object_unref (NMPObject *obj) if (obj) { g_return_if_fail (obj->_ref_count > 0); g_return_if_fail (obj->_ref_count != NMP_REF_COUNT_STACKINIT); - _LOGT (obj, "%s: %d", + _LOGt (obj, "%s: %d", obj->_ref_count <= 1 ? "destroy" : "unref", obj->_ref_count - 1); if (--obj->_ref_count <= 0) { @@ -221,7 +221,7 @@ _nmp_object_new_from_class (const NMPClass *klass) obj = g_slice_alloc0 (klass->sizeof_data + G_STRUCT_OFFSET (NMPObject, object)); obj->_class = klass; obj->_ref_count = 1; - _LOGT (obj, "new"); + _LOGt (obj, "new"); return obj; } diff --git a/src/platform/tests/Makefile.am b/src/platform/tests/Makefile.am index 54844ec1..35aa098a 100644 --- a/src/platform/tests/Makefile.am +++ b/src/platform/tests/Makefile.am @@ -1,6 +1,7 @@ AM_CPPFLAGS = \ -I${top_srcdir} \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -I${top_srcdir}/src \ -I${top_builddir}/src \ -I${top_srcdir}/libnm-core \ diff --git a/src/platform/tests/Makefile.in b/src/platform/tests/Makefile.in index a9333539..f45f3a9c 100644 --- a/src/platform/tests/Makefile.in +++ b/src/platform/tests/Makefile.in @@ -616,6 +616,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -757,9 +758,10 @@ with_netconfig = @with_netconfig@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = -I${top_srcdir} -I${top_srcdir}/include \ - -I${top_srcdir}/src -I${top_builddir}/src \ - -I${top_srcdir}/libnm-core -I${top_builddir}/libnm-core \ - -I${srcdir}/.. -DG_LOG_DOMAIN=\""NetworkManager"\" \ + -I${top_builddir}/include -I${top_srcdir}/src \ + -I${top_builddir}/src -I${top_srcdir}/libnm-core \ + -I${top_builddir}/libnm-core -I${srcdir}/.. \ + -DG_LOG_DOMAIN=\""NetworkManager"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE $(GLIB_CFLAGS) \ $(GUDEV_CFLAGS) $(LIBNL_CFLAGS) $(am__append_1) diff --git a/src/platform/tests/test-link.c b/src/platform/tests/test-link.c index ce371b75..f9645d85 100644 --- a/src/platform/tests/test-link.c +++ b/src/platform/tests/test-link.c @@ -118,6 +118,41 @@ software_add (NMLinkType link_type, const char *name) } static void +test_link_changed_signal_cb (NMPlatform *platform, + NMPObjectType obj_type, + int ifindex, + const NMPlatformIP4Route *route, + NMPlatformSignalChangeType change_type, + NMPlatformReason reason, + gboolean *p_test_link_changed_signal_arg) +{ + /* test invocation of platform signals with multiple listeners + * connected to the signal. Platform signals have enum-typed + * arguments and there seem to be an issue with invoking such + * signals on s390x and ppc64 archs. + * https://bugzilla.redhat.com/show_bug.cgi?id=1260577 + * + * As the test shows, the failure is not reproducible for + * platform signals. + */ + g_assert (NM_IS_PLATFORM (platform)); + g_assert (platform == NM_PLATFORM_GET); + + g_assert (ifindex > 0); + g_assert (route); + + g_assert_cmpint (obj_type, ==, NMP_OBJECT_TYPE_LINK); + + g_assert_cmpint ((gint64) change_type, !=, (gint64) 0); + g_assert_cmpint (change_type, !=, NM_PLATFORM_SIGNAL_NONE); + + g_assert_cmpint ((gint64) reason, !=, (gint64) 0); + g_assert_cmpint (reason, !=, NM_PLATFORM_REASON_NONE); + + *p_test_link_changed_signal_arg = TRUE; +} + +static void test_slave (int master, int type, SignalData *master_changed) { int ifindex; @@ -125,6 +160,8 @@ test_slave (int master, int type, SignalData *master_changed) SignalData *link_changed, *link_removed; char *value; NMLinkType link_type = nm_platform_link_get_type (NM_PLATFORM_GET, master); + gboolean test_link_changed_signal_arg1; + gboolean test_link_changed_signal_arg2; g_assert (NM_IN_SET (link_type, NM_LINK_TYPE_TEAM, NM_LINK_TYPE_BOND, NM_LINK_TYPE_BRIDGE)); @@ -158,11 +195,21 @@ test_slave (int master, int type, SignalData *master_changed) else g_assert (!nm_platform_link_is_up (NM_PLATFORM_GET, ifindex)); + test_link_changed_signal_arg1 = FALSE; + test_link_changed_signal_arg2 = FALSE; + g_signal_connect (NM_PLATFORM_GET, NM_PLATFORM_SIGNAL_LINK_CHANGED, G_CALLBACK (test_link_changed_signal_cb), &test_link_changed_signal_arg1); + g_signal_connect (NM_PLATFORM_GET, NM_PLATFORM_SIGNAL_LINK_CHANGED, G_CALLBACK (test_link_changed_signal_cb), &test_link_changed_signal_arg2); + /* Set master up */ g_assert (nm_platform_link_set_up (NM_PLATFORM_GET, master, NULL)); g_assert (nm_platform_link_is_up (NM_PLATFORM_GET, master)); accept_signals (master_changed, 1, 2); + g_signal_handlers_disconnect_by_func (NM_PLATFORM_GET, G_CALLBACK (test_link_changed_signal_cb), &test_link_changed_signal_arg1); + g_signal_handlers_disconnect_by_func (NM_PLATFORM_GET, G_CALLBACK (test_link_changed_signal_cb), &test_link_changed_signal_arg2); + g_assert (test_link_changed_signal_arg1); + g_assert (test_link_changed_signal_arg2); + /* Master with a disconnected slave is disconnected * * For some reason, bonding and teaming slaves are automatically set up. We diff --git a/src/ppp-manager/Makefile.am b/src/ppp-manager/Makefile.am index fd2fe76b..5b1edc29 100644 --- a/src/ppp-manager/Makefile.am +++ b/src/ppp-manager/Makefile.am @@ -2,6 +2,7 @@ if WITH_PPP AM_CPPFLAGS = \ -I${top_srcdir}/include \ + -I${top_builddir}/include \ -I${top_srcdir}/libnm-core \ -I${top_builddir}/libnm-core \ -DG_LOG_DOMAIN=\""nm-pppd-plugin"\" \ diff --git a/src/ppp-manager/Makefile.in b/src/ppp-manager/Makefile.in index 26698e16..338dcff7 100644 --- a/src/ppp-manager/Makefile.in +++ b/src/ppp-manager/Makefile.in @@ -339,6 +339,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -481,6 +482,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ @WITH_PPP_TRUE@AM_CPPFLAGS = \ @WITH_PPP_TRUE@ -I${top_srcdir}/include \ +@WITH_PPP_TRUE@ -I${top_builddir}/include \ @WITH_PPP_TRUE@ -I${top_srcdir}/libnm-core \ @WITH_PPP_TRUE@ -I${top_builddir}/libnm-core \ @WITH_PPP_TRUE@ -DG_LOG_DOMAIN=\""nm-pppd-plugin"\" \ diff --git a/src/rdisc/Makefile.in b/src/rdisc/Makefile.in index 4713fa9b..0df08e30 100644 --- a/src/rdisc/Makefile.in +++ b/src/rdisc/Makefile.in @@ -313,6 +313,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/src/rdisc/tests/Makefile.am b/src/rdisc/tests/Makefile.am index 5d6f8b5b..995f68bd 100644 --- a/src/rdisc/tests/Makefile.am +++ b/src/rdisc/tests/Makefile.am @@ -1,6 +1,7 @@ AM_CPPFLAGS = \ -I${top_srcdir} \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I${top_srcdir}/src \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/libnm-core \ diff --git a/src/rdisc/tests/Makefile.in b/src/rdisc/tests/Makefile.in index 8fedb770..1a5c70e2 100644 --- a/src/rdisc/tests/Makefile.in +++ b/src/rdisc/tests/Makefile.in @@ -514,6 +514,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -657,6 +658,7 @@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = \ -I${top_srcdir} \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I${top_srcdir}/src \ -I${top_srcdir}/src/platform \ -I${top_srcdir}/libnm-core \ diff --git a/src/settings/nm-agent-manager.c b/src/settings/nm-agent-manager.c index 8dcda06d..c694ad6f 100644 --- a/src/settings/nm-agent-manager.c +++ b/src/settings/nm-agent-manager.c @@ -421,6 +421,8 @@ struct _Request { */ GSList *asked; + NMAuthChain *chain; + guint32 idle_id; RequestAddAgentFunc add_agent_callback; @@ -475,6 +477,9 @@ request_free (Request *req) if (!req->completed && req->cancel_callback) req->cancel_callback (req); + if (req->chain) + nm_auth_chain_unref (req->chain); + g_object_unref (req->subject); g_free (req->detail); @@ -640,6 +645,13 @@ request_remove_agent (Request *req, NMSecretAgent *agent, GSList **pending_reqs) if (agent == req->current) { nm_log_dbg (LOGD_AGENTS, "(%s) current agent removed from secrets request %p/%s", nm_secret_agent_get_description (agent), req, req->detail); + + if (req->chain) { + /* This cancels the pending authorization requests. */ + nm_auth_chain_unref (req->chain); + req->chain = NULL; + } + *pending_reqs = g_slist_prepend (*pending_reqs, req); } else { nm_log_dbg (LOGD_AGENTS, "(%s) agent removed from secrets request %p/%s", @@ -675,8 +687,6 @@ typedef struct { gpointer other_data2; gpointer other_data3; - NMAuthChain *chain; - /* Whether the agent currently being asked for secrets * has the system.modify privilege. */ @@ -693,8 +703,6 @@ connection_request_free (gpointer data) g_strfreev (req->hints); if (req->existing_secrets) g_hash_table_unref (req->existing_secrets); - if (req->chain) - nm_auth_chain_unref (req->chain); } static gboolean @@ -816,6 +824,11 @@ get_done_cb (NMSecretAgent *agent, req_complete_error (parent, error); g_error_free (error); } else { + if (parent->current_call_id) { + /* Tell the failed agent we're no longer interested. */ + nm_secret_agent_cancel_secrets (parent->current, parent->current_call_id); + } + /* Try the next agent */ request_next_agent (parent); } @@ -941,7 +954,7 @@ get_agent_modify_auth_cb (NMAuthChain *chain, ConnectionRequest *req = user_data; const char *perm; - req->chain = NULL; + parent->chain = NULL; if (error) { nm_log_dbg (LOGD_AGENTS, "(%s) agent %p/%s/%s MODIFY check error: (%d) %s", @@ -1036,11 +1049,11 @@ get_next_cb (Request *parent) nm_log_dbg (LOGD_AGENTS, "(%p/%s/%s) request has system secrets; checking agent %s for MODIFY", req, parent->detail, req->setting_name, agent_dbus_owner); - req->chain = nm_auth_chain_new_subject (nm_secret_agent_get_subject (parent->current), - NULL, - get_agent_modify_auth_cb, - req); - g_assert (req->chain); + parent->chain = nm_auth_chain_new_subject (nm_secret_agent_get_subject (parent->current), + NULL, + get_agent_modify_auth_cb, + req); + g_assert (parent->chain); /* If the caller is the only user in the connection's permissions, then * we use the 'modify.own' permission instead of 'modify.system'. If the @@ -1052,9 +1065,9 @@ get_next_cb (Request *parent) perm = NM_AUTH_PERMISSION_SETTINGS_MODIFY_OWN; else perm = NM_AUTH_PERMISSION_SETTINGS_MODIFY_SYSTEM; - nm_auth_chain_set_data (req->chain, "perm", (gpointer) perm, NULL); + nm_auth_chain_set_data (parent->chain, "perm", (gpointer) perm, NULL); - nm_auth_chain_add_call (req->chain, perm, TRUE); + nm_auth_chain_add_call (parent->chain, perm, TRUE); } else { nm_log_dbg (LOGD_AGENTS, "(%p/%s/%s) requesting user-owned secrets from agent %s", req, parent->detail, req->setting_name, agent_dbus_owner); diff --git a/src/settings/plugins/Makefile.in b/src/settings/plugins/Makefile.in index d7b7ab14..c706214b 100644 --- a/src/settings/plugins/Makefile.in +++ b/src/settings/plugins/Makefile.in @@ -318,6 +318,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/src/settings/plugins/example/Makefile.am b/src/settings/plugins/example/Makefile.am index b98f66ef..7ce8eaea 100644 --- a/src/settings/plugins/example/Makefile.am +++ b/src/settings/plugins/example/Makefile.am @@ -2,6 +2,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-example"\" \ diff --git a/src/settings/plugins/example/Makefile.in b/src/settings/plugins/example/Makefile.in index 3b7a1551..5f16d186 100644 --- a/src/settings/plugins/example/Makefile.in +++ b/src/settings/plugins/example/Makefile.in @@ -309,6 +309,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -453,6 +454,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-example"\" \ diff --git a/src/settings/plugins/ibft/Makefile.am b/src/settings/plugins/ibft/Makefile.am index 00a5d175..6bc9d05d 100644 --- a/src/settings/plugins/ibft/Makefile.am +++ b/src/settings/plugins/ibft/Makefile.am @@ -15,6 +15,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/platform \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DNETWORKMANAGER_COMPILATION \ diff --git a/src/settings/plugins/ibft/Makefile.in b/src/settings/plugins/ibft/Makefile.in index de9be286..1f5b8eb4 100644 --- a/src/settings/plugins/ibft/Makefile.in +++ b/src/settings/plugins/ibft/Makefile.in @@ -384,6 +384,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -536,6 +537,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/platform \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DNETWORKMANAGER_COMPILATION \ diff --git a/src/settings/plugins/ibft/tests/Makefile.am b/src/settings/plugins/ibft/tests/Makefile.am index 3c7c94ac..9901119e 100644 --- a/src/settings/plugins/ibft/tests/Makefile.am +++ b/src/settings/plugins/ibft/tests/Makefile.am @@ -6,6 +6,7 @@ AM_CPPFLAGS = \ $(GLIB_CFLAGS) \ $(CODE_COVERAGE_CFLAGS) \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src/ \ diff --git a/src/settings/plugins/ibft/tests/Makefile.in b/src/settings/plugins/ibft/tests/Makefile.in index 266497b6..30bd78df 100644 --- a/src/settings/plugins/ibft/tests/Makefile.in +++ b/src/settings/plugins/ibft/tests/Makefile.in @@ -512,6 +512,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -656,6 +657,7 @@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@ $(GLIB_CFLAGS) \ @ENABLE_TESTS_TRUE@ $(CODE_COVERAGE_CFLAGS) \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/src/ \ diff --git a/src/settings/plugins/ifcfg-rh/Makefile.am b/src/settings/plugins/ifcfg-rh/Makefile.am index 4989f4ba..08ffa0ec 100644 --- a/src/settings/plugins/ifcfg-rh/Makefile.am +++ b/src/settings/plugins/ifcfg-rh/Makefile.am @@ -28,6 +28,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/platform \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DNETWORKMANAGER_COMPILATION \ diff --git a/src/settings/plugins/ifcfg-rh/Makefile.in b/src/settings/plugins/ifcfg-rh/Makefile.in index 0cd26960..eaa456bb 100644 --- a/src/settings/plugins/ifcfg-rh/Makefile.in +++ b/src/settings/plugins/ifcfg-rh/Makefile.in @@ -387,6 +387,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -549,6 +550,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/platform \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DNETWORKMANAGER_COMPILATION \ diff --git a/src/settings/plugins/ifcfg-rh/reader.c b/src/settings/plugins/ifcfg-rh/reader.c index 72123e66..271b7bb1 100644 --- a/src/settings/plugins/ifcfg-rh/reader.c +++ b/src/settings/plugins/ifcfg-rh/reader.c @@ -346,7 +346,6 @@ is_any_ip4_address_defined (shvarFile *ifcfg, int *idx) /* Returns TRUE on missing address or valid address */ static gboolean read_full_ip4_address (shvarFile *ifcfg, - const char *network_file, gint32 which, NMIPAddress *base_addr, NMIPAddress **out_address, @@ -362,7 +361,6 @@ read_full_ip4_address (shvarFile *ifcfg, g_return_val_if_fail (which >= -1, FALSE); g_return_val_if_fail (ifcfg != NULL, FALSE); - g_return_val_if_fail (network_file != NULL, FALSE); g_return_val_if_fail (out_address != NULL, FALSE); g_return_val_if_fail (*out_address == NULL, FALSE); if (error) @@ -452,7 +450,6 @@ done: /* Returns TRUE on missing route or valid route */ static gboolean read_one_ip4_route (shvarFile *ifcfg, - const char *network_file, guint32 which, NMIPRoute **out_route, GError **error) @@ -463,7 +460,6 @@ read_one_ip4_route (shvarFile *ifcfg, gboolean success = FALSE; g_return_val_if_fail (ifcfg != NULL, FALSE); - g_return_val_if_fail (network_file != NULL, FALSE); g_return_val_if_fail (out_route != NULL, FALSE); g_return_val_if_fail (*out_route == NULL, FALSE); if (error) @@ -684,7 +680,6 @@ error: static gboolean parse_full_ip6_address (shvarFile *ifcfg, - const char *network_file, const char *addr_str, int i, NMIPAddress **out_address, @@ -942,7 +937,10 @@ make_ip4_setting (shvarFile *ifcfg, } else if (!g_ascii_strcasecmp (value, "bootp") || !g_ascii_strcasecmp (value, "dhcp")) { method = NM_SETTING_IP4_CONFIG_METHOD_AUTO; } else if (!g_ascii_strcasecmp (value, "static")) { - method = NM_SETTING_IP4_CONFIG_METHOD_MANUAL; + if (is_any_ip4_address_defined (ifcfg, NULL)) + method = NM_SETTING_IP4_CONFIG_METHOD_MANUAL; + else + method = NM_SETTING_IP4_CONFIG_METHOD_DISABLED; } else if (!g_ascii_strcasecmp (value, "autoip")) { g_free (value); g_object_set (s_ip4, @@ -962,7 +960,7 @@ make_ip4_setting (shvarFile *ifcfg, if (is_any_ip4_address_defined (ifcfg, &idx)) { NMIPAddress *addr = NULL; - if (!read_full_ip4_address (ifcfg, network_file, idx, NULL, &addr, NULL, error)) + if (!read_full_ip4_address (ifcfg, idx, NULL, &addr, NULL, error)) goto done; if (!read_ip4_address (ifcfg, "GATEWAY", &gateway, error)) goto done; @@ -1020,7 +1018,7 @@ make_ip4_setting (shvarFile *ifcfg, /* gateway will only be set if still unset. Hence, we don't leak gateway * here by calling read_full_ip4_address() repeatedly */ - if (!read_full_ip4_address (ifcfg, network_file, i, NULL, &addr, &gateway, error)) + if (!read_full_ip4_address (ifcfg, i, NULL, &addr, &gateway, error)) goto done; if (!addr) { @@ -1046,6 +1044,13 @@ make_ip4_setting (shvarFile *ifcfg, svCloseFile (network_ifcfg); if (!read_success) goto done; + + if (gateway && nm_setting_ip_config_get_num_addresses (s_ip4) == 0) { + gs_free char *f = g_path_get_basename (ifcfg->fileName); + PARSE_WARNING ("ignoring GATEWAY (/etc/sysconfig/network) for %s " + "because the connection has no static addresses", f); + g_clear_pointer (&gateway, g_free); + } } } g_object_set (s_ip4, NM_SETTING_IP_CONFIG_GATEWAY, gateway, NULL); @@ -1108,7 +1113,7 @@ make_ip4_setting (shvarFile *ifcfg, for (i = 0; i < 256; i++) { NMIPRoute *route = NULL; - if (!read_one_ip4_route (route_ifcfg, network_file, i, &route, error)) { + if (!read_one_ip4_route (route_ifcfg, i, &route, error)) { svCloseFile (route_ifcfg); goto done; } @@ -1158,7 +1163,7 @@ done: } static void -read_aliases (NMSettingIPConfig *s_ip4, const char *filename, const char *network_file) +read_aliases (NMSettingIPConfig *s_ip4, const char *filename) { GDir *dir; char *dirname, *base; @@ -1230,7 +1235,7 @@ read_aliases (NMSettingIPConfig *s_ip4, const char *filename, const char *networ } addr = NULL; - ok = read_full_ip4_address (parsed, network_file, -1, base_addr, &addr, NULL, &err); + ok = read_full_ip4_address (parsed, -1, base_addr, &addr, NULL, &err); svCloseFile (parsed); if (ok) { nm_ip_address_set_attribute (addr, "label", g_variant_new_string (device)); @@ -1417,7 +1422,7 @@ make_ip6_setting (shvarFile *ifcfg, for (iter = list, i = 0; iter && *iter; iter++, i++) { NMIPAddress *addr = NULL; - if (!parse_full_ip6_address (ifcfg, network_file, *iter, i, &addr, error)) { + if (!parse_full_ip6_address (ifcfg, *iter, i, &addr, error)) { g_strfreev (list); goto error; } @@ -3502,21 +3507,46 @@ wireless_connection_from_ifcfg (const char *file, } static void -parse_ethtool_options (shvarFile *ifcfg, NMSettingWired *s_wired, char *value) +parse_ethtool_option (const char *value, NMSettingWiredWakeOnLan *out_flags, char **out_password) { - NMSettingWiredWakeOnLan wol_flags = NM_SETTING_WIRED_WAKE_ON_LAN_NONE; - gboolean use_password = FALSE; - char **words, **iter, *flag; + gs_strfreev char **words = NULL; + const char **iter = NULL, *flag; if (!value || !value[0]) return; - words = g_strsplit_set (value, " ", 0); - iter = words; + words = g_strsplit_set (value, "\t ", 0); + iter = (const char **) words; while (iter[0]) { - if (g_str_equal (iter[0], "wol") && iter[1] && *iter[1]) { - for (flag = iter[1]; *flag; flag++) { + gboolean is_wol; + + if (g_str_equal (iter[0], "wol")) + is_wol = TRUE; + else if (g_str_equal (iter[0], "sopass")) + is_wol = FALSE; + else { + /* Silently skip unknown options */ + iter++; + continue; + } + + iter++; + + /* g_strsplit_set() returns empty tokens, meaning that we must skip over repeated + * space characters like to parse "wol d". */ + while (iter[0] && !*iter[0]) + iter++; + + if (is_wol) { + NMSettingWiredWakeOnLan wol_flags = NM_SETTING_WIRED_WAKE_ON_LAN_NONE; + + if (!iter[0]) { + PARSE_WARNING ("Wake-on-LAN options missing"); + break; + } + + for (flag = iter[0]; *flag; flag++) { switch (*flag) { case 'p': wol_flags |= NM_SETTING_WIRED_WAKE_ON_LAN_PHY; @@ -3537,42 +3567,62 @@ parse_ethtool_options (shvarFile *ifcfg, NMSettingWired *s_wired, char *value) wol_flags |= NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC; break; case 's': - use_password = TRUE; break; case 'd': wol_flags = NM_SETTING_WIRED_WAKE_ON_LAN_NONE; - use_password = FALSE; break; default: PARSE_WARNING ("unrecognized Wake-on-LAN option '%c'", *flag); } } - if (!NM_FLAGS_HAS (wol_flags, NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC)) - use_password = FALSE; + *out_flags = wol_flags; + } else { + if (!iter[0]) { + PARSE_WARNING ("Wake-on-LAN password missing"); + break; + } - g_object_set (s_wired, NM_SETTING_WIRED_WAKE_ON_LAN, wol_flags, NULL); - iter += 2; - continue; + g_clear_pointer (out_password, g_free); + if (nm_utils_hwaddr_valid (iter[0], ETH_ALEN)) + *out_password = g_strdup (iter[0]); + else + PARSE_WARNING ("Wake-on-LAN password '%s' is invalid", iter[0]); } + iter++; + } +} - if (g_str_equal (iter[0], "sopass") && iter[1] && *iter[1]) { - if (use_password) { - if (nm_utils_hwaddr_valid (iter[1], ETH_ALEN)) - g_object_set (s_wired, NM_SETTING_WIRED_WAKE_ON_LAN_PASSWORD, iter[1], NULL); - else - PARSE_WARNING ("Wake-on-LAN password '%s' is invalid", iter[1]); - } else - PARSE_WARNING ("Wake-on-LAN password not expected"); - iter += 2; - continue; - } +static void +parse_ethtool_options (shvarFile *ifcfg, NMSettingWired *s_wired, const char *value) +{ + NMSettingWiredWakeOnLan wol_flags = NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT; + gs_free char *wol_password = NULL; + gboolean ignore_wol_password = FALSE; - /* Silently skip unknown options */ - iter++; + if (value) { + gs_strfreev char **opts = NULL; + const char **iter; + + wol_flags = NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE; + + opts = g_strsplit_set (value, ";", 0); + for (iter = (const char **) opts; iter[0]; iter++) { + /* in case of repeated wol_passwords, parse_ethtool_option() + * will do the right thing and clear wol_password before resetting. */ + parse_ethtool_option (iter[0], &wol_flags, &wol_password); + } } - g_strfreev (words); + if ( wol_password + && !NM_FLAGS_HAS (wol_flags, NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC)) { + PARSE_WARNING ("Wake-on-LAN password not expected"); + ignore_wol_password = TRUE; + } + g_object_set (s_wired, + NM_SETTING_WIRED_WAKE_ON_LAN, wol_flags, + NM_SETTING_WIRED_WAKE_ON_LAN_PASSWORD, ignore_wol_password ? NULL : wol_password, + NULL); } static NMSetting * @@ -3710,7 +3760,7 @@ make_wired_setting (shvarFile *ifcfg, g_free (value); } - value = svGetValue (ifcfg, "ETHTOOL_OPTS", FALSE); + value = svGetValueFull (ifcfg, "ETHTOOL_OPTS", FALSE); parse_ethtool_options (ifcfg, s_wired, value); g_free (value); @@ -4884,7 +4934,7 @@ connection_from_file_full (const char *filename, connection = NULL; goto done; } else { - read_aliases (NM_SETTING_IP_CONFIG (s_ip4), filename, network_file); + read_aliases (NM_SETTING_IP_CONFIG (s_ip4), filename); nm_connection_add_setting (connection, s_ip4); } diff --git a/src/settings/plugins/ifcfg-rh/shvar.c b/src/settings/plugins/ifcfg-rh/shvar.c index 283aa826..5fd7755f 100644 --- a/src/settings/plugins/ifcfg-rh/shvar.c +++ b/src/settings/plugins/ifcfg-rh/shvar.c @@ -299,8 +299,8 @@ svGetValueFull (shvarFile *s, const char *key, gboolean verbatim) return value; } -/* return TRUE if <key> resolves to any truth value (e.g. "yes", "y", "true") - * return FALSE if <key> resolves to any non-truth value (e.g. "no", "n", "false") +/* return TRUE if <key> resolves to any truth value (e.g. "yes", "true", "y", "t", "1") + * return FALSE if <key> resolves to any non-truth value (e.g. "no", "false", "n", "f", "0") * return <default> otherwise */ gint @@ -316,12 +316,14 @@ svTrueValue (shvarFile *s, const char *key, gint def) if ( !g_ascii_strcasecmp ("yes", tmp) || !g_ascii_strcasecmp ("true", tmp) || !g_ascii_strcasecmp ("t", tmp) - || !g_ascii_strcasecmp ("y", tmp)) + || !g_ascii_strcasecmp ("y", tmp) + || !g_ascii_strcasecmp ("1", tmp)) returnValue = TRUE; else if ( !g_ascii_strcasecmp ("no", tmp) || !g_ascii_strcasecmp ("false", tmp) || !g_ascii_strcasecmp ("f", tmp) - || !g_ascii_strcasecmp ("n", tmp)) + || !g_ascii_strcasecmp ("n", tmp) + || !g_ascii_strcasecmp ("0", tmp)) returnValue = FALSE; g_free (tmp); diff --git a/src/settings/plugins/ifcfg-rh/tests/Makefile.am b/src/settings/plugins/ifcfg-rh/tests/Makefile.am index a3f6a052..73f3b5d8 100644 --- a/src/settings/plugins/ifcfg-rh/tests/Makefile.am +++ b/src/settings/plugins/ifcfg-rh/tests/Makefile.am @@ -8,6 +8,7 @@ AM_CPPFLAGS = \ $(GLIB_CFLAGS) \ $(CODE_COVERAGE_CFLAGS) \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src/ \ diff --git a/src/settings/plugins/ifcfg-rh/tests/Makefile.in b/src/settings/plugins/ifcfg-rh/tests/Makefile.in index d0832e47..da25c8b9 100644 --- a/src/settings/plugins/ifcfg-rh/tests/Makefile.in +++ b/src/settings/plugins/ifcfg-rh/tests/Makefile.in @@ -566,6 +566,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -711,6 +712,7 @@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@ $(GLIB_CFLAGS) \ @ENABLE_TESTS_TRUE@ $(CODE_COVERAGE_CFLAGS) \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/src/ \ diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am b/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am index 7b5aaf17..c3fde548 100644 --- a/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.am @@ -14,6 +14,8 @@ EXTRA_DIST = \ ifcfg-test-wired-dhcp6-only \ ifcfg-test-wired-global-gateway \ network-test-wired-global-gateway \ + ifcfg-test-wired-global-gateway-ignore \ + network-test-wired-global-gateway-ignore \ ifcfg-test-wired-obsolete-gateway-n \ ifcfg-test-wired-never-default \ network-test-wired-never-default \ @@ -99,6 +101,7 @@ EXTRA_DIST = \ ifcfg-test-vlan-only-vlanid \ ifcfg-test-vlan-only-device \ ifcfg-test-vlan-physdev \ + ifcfg-test-vlan-reorder-hdr-1 \ ifcfg-test-wifi-wep-no-keys \ ifcfg-test-permissions \ ifcfg-test-wifi-wep-agent-keys \ @@ -124,7 +127,8 @@ EXTRA_DIST = \ ifcfg-test-team-port \ ifcfg-test-team-port-empty-config \ ifcfg-test-vlan-trailing-spaces \ - ifcfg-test-wired-wake-on-lan + ifcfg-test-wired-wake-on-lan \ + ifcfg-test-wired-ipv6-only-1 # make target dependencies can't have colons in their names, which ends up # meaning that we can't add the alias files to EXTRA_DIST diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.in b/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.in index 2435434d..4add27b7 100644 --- a/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.in +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -409,6 +410,8 @@ EXTRA_DIST = \ ifcfg-test-wired-dhcp6-only \ ifcfg-test-wired-global-gateway \ network-test-wired-global-gateway \ + ifcfg-test-wired-global-gateway-ignore \ + network-test-wired-global-gateway-ignore \ ifcfg-test-wired-obsolete-gateway-n \ ifcfg-test-wired-never-default \ network-test-wired-never-default \ @@ -494,6 +497,7 @@ EXTRA_DIST = \ ifcfg-test-vlan-only-vlanid \ ifcfg-test-vlan-only-device \ ifcfg-test-vlan-physdev \ + ifcfg-test-vlan-reorder-hdr-1 \ ifcfg-test-wifi-wep-no-keys \ ifcfg-test-permissions \ ifcfg-test-wifi-wep-agent-keys \ @@ -519,7 +523,8 @@ EXTRA_DIST = \ ifcfg-test-team-port \ ifcfg-test-team-port-empty-config \ ifcfg-test-vlan-trailing-spaces \ - ifcfg-test-wired-wake-on-lan + ifcfg-test-wired-wake-on-lan \ + ifcfg-test-wired-ipv6-only-1 # make target dependencies can't have colons in their names, which ends up diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-reorder-hdr-1 b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-reorder-hdr-1 new file mode 100644 index 00000000..ca38f839 --- /dev/null +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-reorder-hdr-1 @@ -0,0 +1,7 @@ +VLAN=yes +TYPE=Vlan +DEVICE=vlan0.3 +PHYSDEV=eth0 +VLAN_ID=3 +REORDER_HDR=1 + diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-global-gateway-ignore b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-global-gateway-ignore new file mode 100644 index 00000000..bb81399e --- /dev/null +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-global-gateway-ignore @@ -0,0 +1,8 @@ +TYPE=Ethernet +DEVICE=eth0 +HWADDR=00:11:22:33:44:ee +BOOTPROTO=dhcp +ONBOOT=yes +USERCTL=yes +IPV6INIT=no + diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-only-1 b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-only-1 new file mode 100644 index 00000000..95f8a8ed --- /dev/null +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-only-1 @@ -0,0 +1,16 @@ +IPADDR= +GATEWAY= +NETMASK= +BOOTPROTO=static +TYPE=Ethernet +DEVICE=eth2 +HWADDR=00:11:22:33:44:ee +ONBOOT=yes +USERCTL=yes +NM_CONTROLLED=yes +PEERDNS=yes +DNS1=1:2:3:4::a +DOMAIN="lorem.com ipsum.org dolor.edu" +IPV6INIT=yes +IPV6_AUTOCONF=no +IPV6ADDR="1001:abba::1234/56" diff --git a/src/settings/plugins/ifcfg-rh/tests/network-scripts/network-test-wired-global-gateway-ignore b/src/settings/plugins/ifcfg-rh/tests/network-scripts/network-test-wired-global-gateway-ignore new file mode 100644 index 00000000..7987d105 --- /dev/null +++ b/src/settings/plugins/ifcfg-rh/tests/network-scripts/network-test-wired-global-gateway-ignore @@ -0,0 +1 @@ +GATEWAY=192.168.1.2 diff --git a/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c b/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c index f2f85d3c..cd2d0417 100644 --- a/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c +++ b/src/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c @@ -868,6 +868,48 @@ test_read_wired_global_gateway (void) g_object_unref (connection); } +/* Ignore GATEWAY from /etc/sysconfig/network for automatic connections */ +static void +test_read_wired_global_gateway_ignore (void) +{ + NMConnection *connection; + NMSettingConnection *s_con; + NMSettingWired *s_wired; + NMSettingIPConfig *s_ip4; + GError *error = NULL; + char *unmanaged = NULL; + + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_WARNING, + "*ignoring GATEWAY (/etc/sysconfig/network) for * because the connection has no static addresses"); + connection = connection_from_file_test (TEST_IFCFG_DIR"/network-scripts/ifcfg-test-wired-global-gateway-ignore", + TEST_IFCFG_DIR"/network-scripts/network-test-wired-global-gateway-ignore", + TYPE_ETHERNET, &unmanaged, &error); + nmtst_assert_connection_verifies_without_normalization (connection); + g_assert (unmanaged == NULL); + + /* ===== CONNECTION SETTING ===== */ + s_con = nm_connection_get_setting_connection (connection); + g_assert (s_con); + g_assert_cmpstr (nm_setting_connection_get_id (s_con), ==, "System test-wired-global-gateway-ignore"); + + /* ===== WIRED SETTING ===== */ + s_wired = nm_connection_get_setting_wired (connection); + g_assert (s_wired); + + /* ===== IPv4 SETTING ===== */ + s_ip4 = nm_connection_get_setting_ip4_config (connection); + g_assert (s_ip4); + g_assert_cmpstr (nm_setting_ip_config_get_method (s_ip4), ==, NM_SETTING_IP4_CONFIG_METHOD_AUTO); + + /* Addresses */ + g_assert_cmpint (nm_setting_ip_config_get_num_addresses (s_ip4), ==, 0); + + /* Gateway */ + g_assert_cmpstr (nm_setting_ip_config_get_gateway (s_ip4), ==, NULL); + + g_object_unref (connection); +} + static void test_read_wired_obsolete_gateway_n (void) { @@ -1633,9 +1675,10 @@ test_read_wired_ipv6_manual (void) } #define TEST_IFCFG_WIRED_IPV6_ONLY TEST_IFCFG_DIR"/network-scripts/ifcfg-test-wired-ipv6-only" +#define TEST_IFCFG_WIRED_IPV6_ONLY_1 TEST_IFCFG_DIR"/network-scripts/ifcfg-test-wired-ipv6-only-1" static void -test_read_wired_ipv6_only (void) +test_read_wired_ipv6_only (const char *file, const char *expected_id) { NMConnection *connection; NMSettingConnection *s_con; @@ -1645,17 +1688,16 @@ test_read_wired_ipv6_only (void) char *unmanaged = NULL; GError *error = NULL; const char *tmp; - const char *expected_id = "System test-wired-ipv6-only"; NMIPAddress *ip6_addr; const char *method; - connection = connection_from_file_test (TEST_IFCFG_WIRED_IPV6_ONLY, + connection = connection_from_file_test (file, NULL, TYPE_ETHERNET, &unmanaged, &error); ASSERT (connection != NULL, - "wired-ipv6-only-read", "failed to read %s: %s", TEST_IFCFG_WIRED_IPV6_ONLY, error->message); + "wired-ipv6-only-read", "failed to read %s: %s", file, error->message); ASSERT (nm_connection_verify (connection, &error), "wired-ipv6-only-verify", "failed to verify %s: %s", TEST_IFCFG_WIRED_IPV6_ONLY, error->message); @@ -6080,8 +6122,7 @@ test_write_wired_static (void) g_assert_cmpint (nm_setting_ip_config_get_route_metric (reread_s_ip4), ==, 204); g_assert_cmpint (nm_setting_ip_config_get_route_metric (reread_s_ip6), ==, 206); - ASSERT (nm_connection_compare (connection, reread, NM_SETTING_COMPARE_FLAG_EXACT) == TRUE, - "wired-static-write", "written and re-read connection weren't the same."); + nmtst_assert_connection_equals (connection, FALSE, reread, FALSE); route6file = utils_get_route6_path (testfile); unlink (route6file); @@ -10847,6 +10888,8 @@ test_read_vlan_only_vlan_id (void) g_assert_cmpstr (nm_setting_vlan_get_parent (s_vlan), ==, "eth9"); g_assert_cmpint (nm_setting_vlan_get_id (s_vlan), ==, 43); + /* Ensure that flags are 0 if both REORDER_HDR and VLAN_FLAGS are missing */ + g_assert_cmpint (nm_setting_vlan_get_flags (s_vlan), ==, 0); g_object_unref (connection); } @@ -10906,6 +10949,33 @@ test_read_vlan_physdev (void) } static void +test_read_vlan_reorder_hdr_1 (void) +{ + NMConnection *connection; + GError *error = NULL; + NMSettingVlan *s_vlan; + + connection = connection_from_file_test (TEST_IFCFG_DIR"/network-scripts/ifcfg-test-vlan-reorder-hdr-1", + NULL, TYPE_ETHERNET, NULL, + &error); + g_assert_no_error (error); + g_assert (connection); + g_assert (nm_connection_verify (connection, &error)); + + g_assert_cmpstr (nm_connection_get_interface_name (connection), ==, "vlan0.3"); + + s_vlan = nm_connection_get_setting_vlan (connection); + g_assert (s_vlan); + + g_assert_cmpstr (nm_setting_vlan_get_parent (s_vlan), ==, "eth0"); + g_assert_cmpint (nm_setting_vlan_get_id (s_vlan), ==, 3); + /* Check correct read of REORDER_HDR=1 */ + g_assert_cmpint (nm_setting_vlan_get_flags (s_vlan), ==, 1); + + g_object_unref (connection); +} + +static void test_write_vlan (void) { NMConnection *connection; @@ -10981,6 +11051,77 @@ test_write_vlan_only_vlanid (void) } static void +test_write_vlan_reorder_hdr (void) +{ + NMConnection *connection, *reread; + NMSettingConnection *s_con; + NMSettingVlan *s_vlan; + NMSettingWired *s_wired; + char *uuid; + GError *error = NULL; + gboolean success; + char *testfile = NULL; + + connection = nm_simple_connection_new (); + + /* Connection setting */ + s_con = (NMSettingConnection *) nm_setting_connection_new (); + nm_connection_add_setting (connection, NM_SETTING (s_con)); + + uuid = nm_utils_uuid_generate (); + g_object_set (s_con, + NM_SETTING_CONNECTION_ID, "Test Write VLAN reorder_hdr", + NM_SETTING_CONNECTION_UUID, uuid, + NM_SETTING_CONNECTION_AUTOCONNECT, FALSE, + NM_SETTING_CONNECTION_TYPE, NM_SETTING_VLAN_SETTING_NAME, + NULL); + g_free (uuid); + + /* Wired setting */ + s_wired = (NMSettingWired *) nm_setting_wired_new (); + nm_connection_add_setting (connection, NM_SETTING (s_wired)); + + /* VLAN setting */ + s_vlan = (NMSettingVlan *) nm_setting_vlan_new (); + nm_connection_add_setting (connection, NM_SETTING (s_vlan)); + + g_object_set (s_vlan, + NM_SETTING_VLAN_PARENT, "eth0", + NM_SETTING_VLAN_ID, 444, + NM_SETTING_VLAN_FLAGS, 1, + NULL); + + /* Save the ifcfg */ + success = writer_new_connection (connection, + TEST_SCRATCH_DIR "/network-scripts/", + &testfile, + &error); + g_assert_no_error (error); + g_assert (success); + g_assert (testfile); + + /* reread will be normalized, so we must normalize connection too. */ + nm_connection_normalize (connection, NULL, NULL, NULL); + + /* re-read the connection for comparison */ + reread = connection_from_file_test (testfile, + NULL, + TYPE_ETHERNET, + NULL, + &error); + unlink (testfile); + + g_assert_no_error (error); + g_assert (reread); + g_assert (nm_connection_verify (reread, &error)); + g_assert (nm_connection_compare (connection, reread, NM_SETTING_COMPARE_FLAG_EXACT)); + + g_object_unref (connection); + g_object_unref (reread); + g_free (testfile); +} + +static void test_write_ethernet_missing_ipv6 (void) { NMConnection *connection; @@ -12604,12 +12745,13 @@ int main (int argc, char **argv) test_read_wired_static (TEST_IFCFG_WIRED_STATIC, "System test-wired-static", TRUE); test_read_wired_static (TEST_IFCFG_WIRED_STATIC_BOOTPROTO, "System test-wired-static-bootproto", FALSE); test_read_wired_dhcp (); - g_test_add_func (TPATH "dhcp-plus-ip", test_read_wired_dhcp_plus_ip); - g_test_add_func (TPATH "shared-plus-ip", test_read_wired_shared_plus_ip); - g_test_add_func (TPATH "dhcp-send-hostname", test_read_write_wired_dhcp_send_hostname); - g_test_add_func (TPATH "global-gateway", test_read_wired_global_gateway); - g_test_add_func (TPATH "obsolete-gateway-n", test_read_wired_obsolete_gateway_n); - g_test_add_func (TPATH "never-default", test_read_wired_never_default); + g_test_add_func (TPATH "read-dhcp-plus-ip", test_read_wired_dhcp_plus_ip); + g_test_add_func (TPATH "read-shared-plus-ip", test_read_wired_shared_plus_ip); + g_test_add_func (TPATH "read-dhcp-send-hostname", test_read_write_wired_dhcp_send_hostname); + g_test_add_func (TPATH "read-global-gateway", test_read_wired_global_gateway); + g_test_add_func (TPATH "read-global-gateway-ignore", test_read_wired_global_gateway_ignore); + g_test_add_func (TPATH "read-obsolete-gateway-n", test_read_wired_obsolete_gateway_n); + g_test_add_func (TPATH "read-never-default", test_read_wired_never_default); test_read_wired_defroute_no (); test_read_wired_defroute_no_gatewaydev_yes (); g_test_add_func (TPATH "routes/read-static", test_read_wired_static_routes); @@ -12619,7 +12761,8 @@ int main (int argc, char **argv) test_read_wired_ipv4_manual (TEST_IFCFG_WIRED_IPV4_MANUAL_3, "System test-wired-ipv4-manual-3"); test_read_wired_ipv4_manual (TEST_IFCFG_WIRED_IPV4_MANUAL_4, "System test-wired-ipv4-manual-4"); test_read_wired_ipv6_manual (); - test_read_wired_ipv6_only (); + test_read_wired_ipv6_only (TEST_IFCFG_WIRED_IPV6_ONLY, "System test-wired-ipv6-only"); + test_read_wired_ipv6_only (TEST_IFCFG_WIRED_IPV6_ONLY_1, "System test-wired-ipv6-only-1"); test_read_wired_dhcp6_only (); test_read_onboot_no (); test_read_noip (); @@ -12672,6 +12815,7 @@ int main (int argc, char **argv) test_read_vlan_only_vlan_id (); test_read_vlan_only_device (); g_test_add_func (TPATH "vlan/physdev", test_read_vlan_physdev); + g_test_add_func (TPATH "vlan/reorder-hdr-1", test_read_vlan_reorder_hdr_1); g_test_add_func (TPATH "wired/read-wake-on-lan", test_read_wired_wake_on_lan); test_write_wired_static (); @@ -12679,7 +12823,7 @@ int main (int argc, char **argv) test_write_wired_static_routes (); test_read_write_static_routes_legacy (); test_write_wired_dhcp (); - g_test_add_func (TPATH "dhcp-plus-ip", test_write_wired_dhcp_plus_ip); + g_test_add_func (TPATH "wired/write-dhcp-plus-ip", test_write_wired_dhcp_plus_ip); test_write_wired_dhcp_8021x_peap_mschapv2 (); test_write_wired_8021x_tls (NM_SETTING_802_1X_CK_SCHEME_PATH, NM_SETTING_SECRET_FLAG_AGENT_OWNED); test_write_wired_8021x_tls (NM_SETTING_802_1X_CK_SCHEME_PATH, NM_SETTING_SECRET_FLAG_NOT_SAVED); @@ -12751,6 +12895,7 @@ int main (int argc, char **argv) test_write_infiniband (); test_write_vlan (); test_write_vlan_only_vlanid (); + g_test_add_func (TPATH "vlan/write-vlan-reorder-hdr", test_write_vlan_reorder_hdr); test_write_ethernet_missing_ipv6 (); /* iSCSI / ibft */ diff --git a/src/settings/plugins/ifcfg-rh/writer.c b/src/settings/plugins/ifcfg-rh/writer.c index 69b7d64a..3640a104 100644 --- a/src/settings/plugins/ifcfg-rh/writer.c +++ b/src/settings/plugins/ifcfg-rh/writer.c @@ -714,15 +714,19 @@ write_wireless_security_setting (NMConnection *connection, ascii_key = g_strdup_printf ("s:%s", key); key = ascii_key; } - } else - key = NULL; - - set_secret (ifcfg, - tmp, - key, - "WEP_KEY_FLAGS", - nm_setting_wireless_security_get_wep_key_flags (s_wsec), - FALSE); + } else { + nm_log_warn (LOGD_SETTINGS, " invalid WEP key '%s'", key); + tmp = NULL; + } + + if (tmp) { + set_secret (ifcfg, + tmp, + key, + "WEP_KEY_FLAGS", + nm_setting_wireless_security_get_wep_key_flags (s_wsec), + FALSE); + } g_free (tmp); g_free (ascii_key); } @@ -1137,7 +1141,9 @@ write_wired_setting (NMConnection *connection, shvarFile *ifcfg, GError **error) wol = nm_setting_wired_get_wake_on_lan (s_wired); wol_password = nm_setting_wired_get_wake_on_lan_password (s_wired); - if (wol == NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT) + if (wol == NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE) + svSetValueFull (ifcfg, "ETHTOOL_OPTS", "", FALSE); + else if (wol == NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT) svSetValue (ifcfg, "ETHTOOL_OPTS", NULL, FALSE); else { str = g_string_sized_new (30); @@ -1258,9 +1264,9 @@ write_vlan_setting (NMConnection *connection, shvarFile *ifcfg, gboolean *wired, vlan_flags = nm_setting_vlan_get_flags (s_vlan); if (vlan_flags & NM_VLAN_FLAG_REORDER_HEADERS) - svSetValue (ifcfg, "REORDER_HDR", "1", FALSE); + svSetValue (ifcfg, "REORDER_HDR", "yes", FALSE); else - svSetValue (ifcfg, "REORDER_HDR", "0", FALSE); + svSetValue (ifcfg, "REORDER_HDR", "no", FALSE); svSetValue (ifcfg, "VLAN_FLAGS", NULL, FALSE); if (vlan_flags & NM_VLAN_FLAG_GVRP) { diff --git a/src/settings/plugins/ifcfg-suse/Makefile.am b/src/settings/plugins/ifcfg-suse/Makefile.am index 46204d7d..55494536 100644 --- a/src/settings/plugins/ifcfg-suse/Makefile.am +++ b/src/settings/plugins/ifcfg-suse/Makefile.am @@ -3,6 +3,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src \ -I${top_srcdir}/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-ifcfg-suse"\" \ diff --git a/src/settings/plugins/ifcfg-suse/Makefile.in b/src/settings/plugins/ifcfg-suse/Makefile.in index 3d7df19e..fa51b0aa 100644 --- a/src/settings/plugins/ifcfg-suse/Makefile.in +++ b/src/settings/plugins/ifcfg-suse/Makefile.in @@ -337,6 +337,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -482,6 +483,7 @@ AM_CPPFLAGS = \ -I${top_srcdir}/src \ -I${top_srcdir}/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-ifcfg-suse"\" \ diff --git a/src/settings/plugins/ifnet/Makefile.am b/src/settings/plugins/ifnet/Makefile.am index b0cfd9a1..84e2e697 100644 --- a/src/settings/plugins/ifnet/Makefile.am +++ b/src/settings/plugins/ifnet/Makefile.am @@ -7,6 +7,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/platform \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-ifnet"\" \ diff --git a/src/settings/plugins/ifnet/Makefile.in b/src/settings/plugins/ifnet/Makefile.in index 4832249a..589f1f22 100644 --- a/src/settings/plugins/ifnet/Makefile.in +++ b/src/settings/plugins/ifnet/Makefile.in @@ -385,6 +385,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -531,6 +532,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/platform \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-ifnet"\" \ diff --git a/src/settings/plugins/ifnet/tests/Makefile.am b/src/settings/plugins/ifnet/tests/Makefile.am index 66409a54..754bb182 100644 --- a/src/settings/plugins/ifnet/tests/Makefile.am +++ b/src/settings/plugins/ifnet/tests/Makefile.am @@ -5,6 +5,7 @@ if ENABLE_TESTS AM_CPPFLAGS= \ -I$(srcdir)/../ \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src \ diff --git a/src/settings/plugins/ifnet/tests/Makefile.in b/src/settings/plugins/ifnet/tests/Makefile.in index b94a46fc..d331ecee 100644 --- a/src/settings/plugins/ifnet/tests/Makefile.in +++ b/src/settings/plugins/ifnet/tests/Makefile.in @@ -313,6 +313,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -456,6 +457,7 @@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I$(srcdir)/../ \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/src \ diff --git a/src/settings/plugins/ifupdown/Makefile.am b/src/settings/plugins/ifupdown/Makefile.am index 0ca543e3..e1f2b339 100644 --- a/src/settings/plugins/ifupdown/Makefile.am +++ b/src/settings/plugins/ifupdown/Makefile.am @@ -6,6 +6,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-ifupdown"\" \ diff --git a/src/settings/plugins/ifupdown/Makefile.in b/src/settings/plugins/ifupdown/Makefile.in index 7cd1ef4e..3bd19afc 100644 --- a/src/settings/plugins/ifupdown/Makefile.in +++ b/src/settings/plugins/ifupdown/Makefile.in @@ -384,6 +384,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -529,6 +530,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-ifupdown"\" \ diff --git a/src/settings/plugins/ifupdown/tests/Makefile.am b/src/settings/plugins/ifupdown/tests/Makefile.am index 2e927db9..4ae44a0b 100644 --- a/src/settings/plugins/ifupdown/tests/Makefile.am +++ b/src/settings/plugins/ifupdown/tests/Makefile.am @@ -2,6 +2,7 @@ if ENABLE_TESTS AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src \ diff --git a/src/settings/plugins/ifupdown/tests/Makefile.in b/src/settings/plugins/ifupdown/tests/Makefile.in index a1c029c3..2387a257 100644 --- a/src/settings/plugins/ifupdown/tests/Makefile.in +++ b/src/settings/plugins/ifupdown/tests/Makefile.in @@ -513,6 +513,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -655,6 +656,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/src \ diff --git a/src/settings/plugins/keyfile/Makefile.am b/src/settings/plugins/keyfile/Makefile.am index 079c45c3..919b0805 100644 --- a/src/settings/plugins/keyfile/Makefile.am +++ b/src/settings/plugins/keyfile/Makefile.am @@ -6,6 +6,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-keyfile"\" \ diff --git a/src/settings/plugins/keyfile/Makefile.in b/src/settings/plugins/keyfile/Makefile.in index c409d481..1514768b 100644 --- a/src/settings/plugins/keyfile/Makefile.in +++ b/src/settings/plugins/keyfile/Makefile.in @@ -353,6 +353,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -498,6 +499,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/settings \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -DG_LOG_DOMAIN=\""NetworkManager-keyfile"\" \ diff --git a/src/settings/plugins/keyfile/tests/Makefile.am b/src/settings/plugins/keyfile/tests/Makefile.am index a79e20b5..cbe3f73b 100644 --- a/src/settings/plugins/keyfile/tests/Makefile.am +++ b/src/settings/plugins/keyfile/tests/Makefile.am @@ -6,6 +6,7 @@ SUBDIRS=keyfiles AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src \ diff --git a/src/settings/plugins/keyfile/tests/Makefile.in b/src/settings/plugins/keyfile/tests/Makefile.in index a65110f6..6dfaf110 100644 --- a/src/settings/plugins/keyfile/tests/Makefile.in +++ b/src/settings/plugins/keyfile/tests/Makefile.in @@ -557,6 +557,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -700,6 +701,7 @@ with_valgrind = @with_valgrind@ @ENABLE_TESTS_TRUE@SUBDIRS = keyfiles @ENABLE_TESTS_TRUE@AM_CPPFLAGS = \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/include \ +@ENABLE_TESTS_TRUE@ -I$(top_builddir)/include \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_builddir)/libnm-core \ @ENABLE_TESTS_TRUE@ -I$(top_srcdir)/src \ diff --git a/src/settings/plugins/keyfile/tests/keyfiles/Makefile.am b/src/settings/plugins/keyfile/tests/keyfiles/Makefile.am index 4ca4c3fa..be431067 100644 --- a/src/settings/plugins/keyfile/tests/keyfiles/Makefile.am +++ b/src/settings/plugins/keyfile/tests/keyfiles/Makefile.am @@ -28,6 +28,7 @@ KEYFILES = \ Test_minimal_slave_3 \ Test_minimal_slave_4 \ Test_Missing_Vlan_Setting \ + Test_Missing_Vlan_Flags \ Test_Missing_ID_UUID \ Test_Enum_Property \ Test_Flags_Property diff --git a/src/settings/plugins/keyfile/tests/keyfiles/Makefile.in b/src/settings/plugins/keyfile/tests/keyfiles/Makefile.in index de7af82b..33d0e0c5 100644 --- a/src/settings/plugins/keyfile/tests/keyfiles/Makefile.in +++ b/src/settings/plugins/keyfile/tests/keyfiles/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -423,6 +424,7 @@ KEYFILES = \ Test_minimal_slave_3 \ Test_minimal_slave_4 \ Test_Missing_Vlan_Setting \ + Test_Missing_Vlan_Flags \ Test_Missing_ID_UUID \ Test_Enum_Property \ Test_Flags_Property diff --git a/src/settings/plugins/keyfile/tests/keyfiles/Test_Missing_Vlan_Flags b/src/settings/plugins/keyfile/tests/keyfiles/Test_Missing_Vlan_Flags new file mode 100644 index 00000000..330adda0 --- /dev/null +++ b/src/settings/plugins/keyfile/tests/keyfiles/Test_Missing_Vlan_Flags @@ -0,0 +1,15 @@ +# VLAN setting with missing 'flags' key +# vlan.flags will be set to 0 (even if the default 'flags' property value is 1) + +[connection] +id=Test Missing Vlan Flags +uuid=803ebe47-8c31-401d-b47b-03fc0d34eb11 +type=vlan +autoconnect=true + +[802-3-ethernet] +mac-address=00:11:22:33:44:55 + +[vlan] +id=444 +parent=em1 diff --git a/src/settings/plugins/keyfile/tests/test-keyfile.c b/src/settings/plugins/keyfile/tests/test-keyfile.c index 4fc44c7b..785ad4cb 100644 --- a/src/settings/plugins/keyfile/tests/test-keyfile.c +++ b/src/settings/plugins/keyfile/tests/test-keyfile.c @@ -3292,6 +3292,35 @@ test_read_missing_vlan_setting (void) s_vlan = nm_connection_get_setting_vlan (connection); g_assert (s_vlan); g_assert_cmpint (nm_setting_vlan_get_id (s_vlan), ==, 0); + /* Ensure the VLAN flags are not set (0) */ + g_assert_cmpint (nm_setting_vlan_get_flags (s_vlan), ==, 0); + + g_object_unref (connection); +} + +static void +test_read_missing_vlan_flags (void) +{ + NMConnection *connection; + NMSettingVlan *s_vlan; + GError *error = NULL; + gboolean success; + + connection = nm_keyfile_plugin_connection_from_file (TEST_KEYFILES_DIR"/Test_Missing_Vlan_Flags", &error); + g_assert_no_error (error); + g_assert (connection); + success = nm_connection_verify (connection, &error); + g_assert_no_error (error); + g_assert (success); + + /* Ensure the VLAN setting exists */ + s_vlan = nm_connection_get_setting_vlan (connection); + g_assert (s_vlan); + + g_assert_cmpint (nm_setting_vlan_get_id (s_vlan), ==, 444); + g_assert_cmpstr (nm_setting_vlan_get_parent (s_vlan), ==, "em1"); + /* Ensure the VLAN flags are not set (0) */ + g_assert_cmpint (nm_setting_vlan_get_flags (s_vlan), ==, 0); g_object_unref (connection); } @@ -3688,6 +3717,7 @@ int main (int argc, char **argv) g_test_add_func ("/keyfile/test_write_new_wireless_group_names ", test_write_new_wireless_group_names); g_test_add_func ("/keyfile/test_read_missing_vlan_setting ", test_read_missing_vlan_setting); + g_test_add_func ("/keyfile/test_read_missing_vlan_flags ", test_read_missing_vlan_flags); g_test_add_func ("/keyfile/test_read_missing_id_uuid ", test_read_missing_id_uuid); g_test_add_func ("/keyfile/test_read_minimal", test_read_minimal); diff --git a/src/supplicant-manager/nm-supplicant-config.c b/src/supplicant-manager/nm-supplicant-config.c index c4c725c1..692efef3 100644 --- a/src/supplicant-manager/nm-supplicant-config.c +++ b/src/supplicant-manager/nm-supplicant-config.c @@ -612,7 +612,8 @@ gboolean nm_supplicant_config_add_setting_wireless_security (NMSupplicantConfig *self, NMSettingWirelessSecurity *setting, NMSetting8021x *setting_8021x, - const char *con_uuid) + const char *con_uuid, + guint32 mtu) { gboolean success = FALSE; const char *key_mgmt, *auth_alg; @@ -729,7 +730,7 @@ nm_supplicant_config_add_setting_wireless_security (NMSupplicantConfig *self, if (!strcmp (key_mgmt, "ieee8021x") || !strcmp (key_mgmt, "wpa-eap")) { if (!setting_8021x) return FALSE; - if (!nm_supplicant_config_add_setting_8021x (self, setting_8021x, con_uuid, FALSE)) + if (!nm_supplicant_config_add_setting_8021x (self, setting_8021x, con_uuid, mtu, FALSE)) return FALSE; } @@ -756,6 +757,7 @@ gboolean nm_supplicant_config_add_setting_8021x (NMSupplicantConfig *self, NMSetting8021x *setting, const char *con_uuid, + guint32 mtu, gboolean wired) { NMSupplicantConfigPrivate *priv; @@ -768,6 +770,8 @@ nm_supplicant_config_add_setting_8021x (NMSupplicantConfig *self, guint32 i, num_eap; gboolean fast_provisoning_allowed = FALSE; const char *ca_path_override = NULL, *ca_cert_override = NULL; + guint32 frag, hdrs; + char *frag_str = NULL; g_return_val_if_fail (NM_IS_SUPPLICANT_CONFIG (self), FALSE); g_return_val_if_fail (setting != NULL, FALSE); @@ -819,9 +823,19 @@ nm_supplicant_config_add_setting_8021x (NMSupplicantConfig *self, } } - /* Drop the fragment size a bit for better compatibility */ - if (!nm_supplicant_config_add_option (self, "fragment_size", "1300", -1, FALSE)) + /* Adjust the fragment size according to MTU, but do not set it higher than 1280-14 + * for better compatibility */ + hdrs = 14; /* EAPOL + EAP-TLS */ + frag = 1280 - hdrs; + if (mtu > hdrs) + frag = CLAMP (mtu - hdrs, 100, frag); + frag_str = g_strdup_printf ("%u", frag); + + if (!nm_supplicant_config_add_option (self, "fragment_size", frag_str, -1, FALSE)) { + g_free (frag_str); return FALSE; + } + g_free (frag_str); phase1 = g_string_new (NULL); peapver = nm_setting_802_1x_get_phase1_peapver (setting); diff --git a/src/supplicant-manager/nm-supplicant-config.h b/src/supplicant-manager/nm-supplicant-config.h index 3324f637..9708a6d3 100644 --- a/src/supplicant-manager/nm-supplicant-config.h +++ b/src/supplicant-manager/nm-supplicant-config.h @@ -70,13 +70,15 @@ gboolean nm_supplicant_config_add_setting_wireless (NMSupplicantConfig *self, gboolean nm_supplicant_config_add_setting_wireless_security (NMSupplicantConfig *self, NMSettingWirelessSecurity *setting, NMSetting8021x *setting_8021x, - const char *con_uuid); + const char *con_uuid, + guint32 mtu); gboolean nm_supplicant_config_add_no_security (NMSupplicantConfig *self); gboolean nm_supplicant_config_add_setting_8021x (NMSupplicantConfig *self, NMSetting8021x *setting, const char *con_uuid, + guint32 mtu, gboolean wired); G_END_DECLS diff --git a/src/supplicant-manager/nm-supplicant-interface.c b/src/supplicant-manager/nm-supplicant-interface.c index 66bab2e3..30be23ae 100644 --- a/src/supplicant-manager/nm-supplicant-interface.c +++ b/src/supplicant-manager/nm-supplicant-interface.c @@ -128,16 +128,36 @@ bss_props_changed_cb (GDBusProxy *proxy, changed_properties); } +static GVariant * +_get_bss_proxy_properties (NMSupplicantInterface *self, GDBusProxy *proxy) +{ + gs_strfreev char **properties = NULL; + GVariantBuilder builder; + char **iter; + + iter = properties = g_dbus_proxy_get_cached_property_names (proxy); + if (!iter) + return NULL; + + g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); + while (*iter) { + GVariant *copy = g_dbus_proxy_get_cached_property (proxy, *iter); + + g_variant_builder_add (&builder, "{sv}", *iter++, copy); + g_variant_unref (copy); + } + + return g_variant_builder_end (&builder); +} + +#define BSS_PROXY_INITED "bss-proxy-inited" + static void on_bss_proxy_acquired (GDBusProxy *proxy, GAsyncResult *result, gpointer user_data) { NMSupplicantInterface *self; - NMSupplicantInterfacePrivate *priv; gs_free_error GError *error = NULL; - gs_strfreev char **properties = NULL; gs_unref_variant GVariant *props = NULL; - GVariantBuilder builder; - char **iter; if (!g_async_initable_init_finish (G_ASYNC_INITABLE (proxy), result, &error)) { if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) { @@ -149,19 +169,12 @@ on_bss_proxy_acquired (GDBusProxy *proxy, GAsyncResult *result, gpointer user_da } self = NM_SUPPLICANT_INTERFACE (user_data); - priv = NM_SUPPLICANT_INTERFACE_GET_PRIVATE (self); - - g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); - - iter = properties = g_dbus_proxy_get_cached_property_names (proxy); - while (*iter) { - GVariant *copy = g_dbus_proxy_get_cached_property (proxy, *iter); + props = _get_bss_proxy_properties (self, proxy); + if (!props) + return; - g_variant_builder_add (&builder, "{sv}", *iter++, copy); - g_variant_unref (copy); - } + g_object_set_data (G_OBJECT (proxy), BSS_PROXY_INITED, GUINT_TO_POINTER (TRUE)); - props = g_variant_builder_end (&builder); g_signal_emit (self, signals[NEW_BSS], 0, g_dbus_proxy_get_object_path (proxy), g_variant_ref_sink (props)); @@ -508,11 +521,30 @@ signal_cb (GDBusProxy *proxy, gboolean success; if (MATCH_SIGNAL (signal, "ScanDone", args, G_VARIANT_TYPE ("(b)"))) { + GVariant *props; + GHashTableIter iter; + char *bss_path; + GDBusProxy *bss_proxy; + /* Cache last scan completed time */ priv->last_scan = nm_utils_get_monotonic_timestamp_s (); g_variant_get (args, "(b)", &success); g_signal_emit (self, signals[SCAN_DONE], 0, success); + + /* Emit NEW_BSS so that wifi device has the APs (in case it removed them) */ + g_hash_table_iter_init (&iter, priv->bss_proxies); + while (g_hash_table_iter_next (&iter, (gpointer) &bss_path, (gpointer) &bss_proxy)) { + if (g_object_get_data (G_OBJECT (bss_proxy), BSS_PROXY_INITED)) { + props = _get_bss_proxy_properties (self, bss_proxy); + if (props) { + g_signal_emit (self, signals[NEW_BSS], 0, + bss_path, + g_variant_ref_sink (props)); + g_variant_unref (props); + } + } + } } else if (MATCH_SIGNAL (signal, "BSSAdded", args, G_VARIANT_TYPE ("(oa{sv})"))) { if (priv->scanning) priv->last_scan = nm_utils_get_monotonic_timestamp_s (); @@ -556,7 +588,7 @@ props_changed_cb (GDBusProxy *proxy, set_state_from_string (self, s); } - if (g_variant_lookup (changed_properties, "BSSs", "^a&s", &array)) { + if (g_variant_lookup (changed_properties, "BSSs", "^a&o", &array)) { iter = array; while (*iter) handle_new_bss (self, *iter++); diff --git a/src/supplicant-manager/tests/Makefile.am b/src/supplicant-manager/tests/Makefile.am index 85268dcf..517f57b7 100644 --- a/src/supplicant-manager/tests/Makefile.am +++ b/src/supplicant-manager/tests/Makefile.am @@ -1,5 +1,8 @@ +SUBDIRS=certs + AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src \ @@ -7,6 +10,7 @@ AM_CPPFLAGS = \ -DG_LOG_DOMAIN=\""NetworkManager"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ + -DTEST_CERT_DIR=\"$(srcdir)/certs/\" \ $(GLIB_CFLAGS) \ $(DBUS_CFLAGS) diff --git a/src/supplicant-manager/tests/Makefile.in b/src/supplicant-manager/tests/Makefile.in index ef5233b2..e36c4c00 100644 --- a/src/supplicant-manager/tests/Makefile.in +++ b/src/supplicant-manager/tests/Makefile.in @@ -157,11 +157,27 @@ am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = SOURCES = $(test_supplicant_config_SOURCES) DIST_SOURCES = $(test_supplicant_config_SOURCES) +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + check recheck distdir 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 @@ -364,7 +380,6 @@ am__set_TESTS_bases = \ bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ bases=`echo $$bases` RECHECK_LOGS = $(TEST_LOGS) -AM_RECURSIVE_TARGETS = check recheck TEST_SUITE_LOG = test-suite.log TEST_EXTENSIONS = @EXEEXT@ .test LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) @@ -384,10 +399,36 @@ TEST_LOGS = $(am__test_logs2:.test.log=.log) TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ $(TEST_LOG_FLAGS) +DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in \ $(top_srcdir)/build-aux/depcomp \ $(top_srcdir)/build-aux/test-driver DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ @@ -510,6 +551,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -650,8 +692,10 @@ with_dhcpcd = @with_dhcpcd@ with_netconfig = @with_netconfig@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ +SUBDIRS = certs AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src \ @@ -659,6 +703,7 @@ AM_CPPFLAGS = \ -DG_LOG_DOMAIN=\""NetworkManager"\" \ -DNETWORKMANAGER_COMPILATION \ -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \ + -DTEST_CERT_DIR=\"$(srcdir)/certs/\" \ $(GLIB_CFLAGS) \ $(DBUS_CFLAGS) @@ -668,7 +713,7 @@ test_supplicant_config_SOURCES = \ test_supplicant_config_LDADD = \ $(top_builddir)/src/libNetworkManager.la -all: all-am +all: all-recursive .SUFFIXES: .SUFFIXES: .c .lo .log .o .obj .test .test$(EXEEXT) .trs @@ -750,14 +795,61 @@ mostlyclean-libtool: clean-libtool: -rm -rf .libs _libs +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-am +tags: tags-recursive TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ @@ -770,7 +862,7 @@ tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $$unique; \ fi; \ fi -ctags: ctags-am +ctags: ctags-recursive CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) @@ -783,7 +875,7 @@ GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" -cscopelist: cscopelist-am +cscopelist: cscopelist-recursive cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ @@ -995,20 +1087,46 @@ distdir: $(DISTFILES) || exit 1; \ fi; \ done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done check-am: all-am $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: check-am +check: check-recursive all-am: Makefile $(PROGRAMS) -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -installcheck: installcheck-am +installcheck: installcheck-recursive install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ @@ -1033,92 +1151,93 @@ distclean-generic: maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -clean: clean-am +clean: clean-recursive clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \ mostlyclean-am -distclean: distclean-am +distclean: distclean-recursive -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags -dvi: dvi-am +dvi: dvi-recursive dvi-am: -html: html-am +html: html-recursive html-am: -info: info-am +info: info-recursive info-am: install-data-am: -install-dvi: install-dvi-am +install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: -install-html: install-html-am +install-html: install-html-recursive install-html-am: -install-info: install-info-am +install-info: install-info-recursive install-info-am: install-man: -install-pdf: install-pdf-am +install-pdf: install-pdf-recursive install-pdf-am: -install-ps: install-ps-am +install-ps: install-ps-recursive install-ps-am: installcheck-am: -maintainer-clean: maintainer-clean-am +maintainer-clean: maintainer-clean-recursive -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic -mostlyclean: mostlyclean-am +mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool -pdf: pdf-am +pdf: pdf-recursive pdf-am: -ps: ps-am +ps: ps-recursive ps-am: uninstall-am: -.MAKE: check-am install-am install-strip - -.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \ - clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \ - ctags ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - recheck tags tags-am uninstall uninstall-am +.MAKE: $(am__recursive_targets) check-am install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ + check-TESTS check-am clean clean-generic clean-libtool \ + clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am recheck tags tags-am \ + uninstall uninstall-am .PRECIOUS: Makefile diff --git a/src/supplicant-manager/tests/certs/Makefile.am b/src/supplicant-manager/tests/certs/Makefile.am new file mode 100644 index 00000000..f2e889f7 --- /dev/null +++ b/src/supplicant-manager/tests/certs/Makefile.am @@ -0,0 +1,6 @@ +CERTS = \ + test-ca-cert.pem \ + test-cert.p12 + +EXTRA_DIST = $(CERTS) + diff --git a/src/supplicant-manager/tests/certs/Makefile.in b/src/supplicant-manager/tests/certs/Makefile.in new file mode 100644 index 00000000..fcfdd689 --- /dev/null +++ b/src/supplicant-manager/tests/certs/Makefile.in @@ -0,0 +1,596 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in 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. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = src/supplicant-manager/tests/certs +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/ax_lib_readline.m4 \ + $(top_srcdir)/m4/compiler_warnings.m4 \ + $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gnome-code-coverage.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intltool.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/vapigen.m4 $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +ALL_LINGUAS = @ALL_LINGUAS@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AM_TESTS_FD_REDIRECT = @AM_TESTS_FD_REDIRECT@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BLUEZ5_CFLAGS = @BLUEZ5_CFLAGS@ +BLUEZ5_LIBS = @BLUEZ5_LIBS@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CKDB_PATH = @CKDB_PATH@ +CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@ +CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@ +CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DBUS_CFLAGS = @DBUS_CFLAGS@ +DBUS_GLIB_100_CFLAGS = @DBUS_GLIB_100_CFLAGS@ +DBUS_GLIB_100_LIBS = @DBUS_GLIB_100_LIBS@ +DBUS_LIBS = @DBUS_LIBS@ +DBUS_SYS_DIR = @DBUS_SYS_DIR@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DHCLIENT_PATH = @DHCLIENT_PATH@ +DHCPCD_PATH = @DHCPCD_PATH@ +DISTRO_NETWORK_SERVICE = @DISTRO_NETWORK_SERVICE@ +DLLTOOL = @DLLTOOL@ +DNSMASQ_PATH = @DNSMASQ_PATH@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GENHTML = @GENHTML@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ +GLIB_LIBS = @GLIB_LIBS@ +GLIB_MAKEFILE = @GLIB_MAKEFILE@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GNUTLS_CFLAGS = @GNUTLS_CFLAGS@ +GNUTLS_LIBS = @GNUTLS_LIBS@ +GREP = @GREP@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +GUDEV_CFLAGS = @GUDEV_CFLAGS@ +GUDEV_LIBS = @GUDEV_LIBS@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ +INTLTOOL_MERGE = @INTLTOOL_MERGE@ +INTLTOOL_PERL = @INTLTOOL_PERL@ +INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ +INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ +INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ +INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +IPTABLES_PATH = @IPTABLES_PATH@ +IWMX_SDK_CFLAGS = @IWMX_SDK_CFLAGS@ +IWMX_SDK_LIBS = @IWMX_SDK_LIBS@ +KERNEL_FIRMWARE_DIR = @KERNEL_FIRMWARE_DIR@ +LCOV = @LCOV@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDL = @LIBDL@ +LIBGCRYPT_CFLAGS = @LIBGCRYPT_CFLAGS@ +LIBGCRYPT_CONFIG = @LIBGCRYPT_CONFIG@ +LIBGCRYPT_LIBS = @LIBGCRYPT_LIBS@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBNDP_CFLAGS = @LIBNDP_CFLAGS@ +LIBNDP_LIBS = @LIBNDP_LIBS@ +LIBNL_CFLAGS = @LIBNL_CFLAGS@ +LIBNL_LIBS = @LIBNL_LIBS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ +LIBSOUP_LIBS = @LIBSOUP_LIBS@ +LIBTEAMDCTL_CFLAGS = @LIBTEAMDCTL_CFLAGS@ +LIBTEAMDCTL_LIBS = @LIBTEAMDCTL_LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LOG_DRIVER = @LOG_DRIVER@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MM_GLIB_CFLAGS = @MM_GLIB_CFLAGS@ +MM_GLIB_LIBS = @MM_GLIB_LIBS@ +MOC = @MOC@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NEWT_CFLAGS = @NEWT_CFLAGS@ +NEWT_LIBS = @NEWT_LIBS@ +NM = @NM@ +NMEDIT = @NMEDIT@ +NM_CONFIG_DEFAULT_AUTH_POLKIT_TEXT = @NM_CONFIG_DEFAULT_AUTH_POLKIT_TEXT@ +NM_MAJOR_VERSION = @NM_MAJOR_VERSION@ +NM_MICRO_VERSION = @NM_MICRO_VERSION@ +NM_MINOR_VERSION = @NM_MINOR_VERSION@ +NM_MODIFY_SYSTEM_POLICY = @NM_MODIFY_SYSTEM_POLICY@ +NM_VERSION = @NM_VERSION@ +NSS_CFLAGS = @NSS_CFLAGS@ +NSS_LIBS = @NSS_LIBS@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POLKIT_CFLAGS = @POLKIT_CFLAGS@ +POLKIT_LIBS = @POLKIT_LIBS@ +POSUB = @POSUB@ +PPPD_PATH = @PPPD_PATH@ +PPPD_PLUGIN_DIR = @PPPD_PLUGIN_DIR@ +PPPOE_PATH = @PPPOE_PATH@ +QT_CFLAGS = @QT_CFLAGS@ +QT_LIBS = @QT_LIBS@ +RANLIB = @RANLIB@ +READLINE_LIBS = @READLINE_LIBS@ +SED = @SED@ +SELINUX_CFLAGS = @SELINUX_CFLAGS@ +SELINUX_LIBS = @SELINUX_LIBS@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +SYSTEMD_200_CFLAGS = @SYSTEMD_200_CFLAGS@ +SYSTEMD_200_LIBS = @SYSTEMD_200_LIBS@ +SYSTEMD_INHIBIT_CFLAGS = @SYSTEMD_INHIBIT_CFLAGS@ +SYSTEMD_INHIBIT_LIBS = @SYSTEMD_INHIBIT_LIBS@ +SYSTEMD_LOGIN_CFLAGS = @SYSTEMD_LOGIN_CFLAGS@ +SYSTEMD_LOGIN_LIBS = @SYSTEMD_LOGIN_LIBS@ +SYSTEM_CA_PATH = @SYSTEM_CA_PATH@ +UDEV_DIR = @UDEV_DIR@ +USE_NLS = @USE_NLS@ +UUID_CFLAGS = @UUID_CFLAGS@ +UUID_LIBS = @UUID_LIBS@ +VALGRIND_RULES = @VALGRIND_RULES@ +VAPIGEN = @VAPIGEN@ +VAPIGEN_MAKEFILE = @VAPIGEN_MAKEFILE@ +VAPIGEN_VAPIDIR = @VAPIGEN_VAPIDIR@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +intltool__v_merge_options_ = @intltool__v_merge_options_@ +intltool__v_merge_options_0 = @intltool__v_merge_options_0@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +nmbinary = @nmbinary@ +nmconfdir = @nmconfdir@ +nmdatadir = @nmdatadir@ +nmrundir = @nmrundir@ +nmstatedir = @nmstatedir@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +subdirs = @subdirs@ +sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +with_dhclient = @with_dhclient@ +with_dhcpcd = @with_dhcpcd@ +with_netconfig = @with_netconfig@ +with_resolvconf = @with_resolvconf@ +with_valgrind = @with_valgrind@ +CERTS = \ + test-ca-cert.pem \ + test-cert.p12 + +EXTRA_DIST = $(CERTS) +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/supplicant-manager/tests/certs/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/supplicant-manager/tests/certs/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *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);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/supplicant-manager/tests/certs/test-ca-cert.pem b/src/supplicant-manager/tests/certs/test-ca-cert.pem new file mode 100644 index 00000000..ef1be20d --- /dev/null +++ b/src/supplicant-manager/tests/certs/test-ca-cert.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEjzCCA3egAwIBAgIJAOvnZPt59yIZMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYD +VQQGEwJVUzESMBAGA1UECBMJQmVya3NoaXJlMRAwDgYDVQQHEwdOZXdidXJ5MRcw +FQYDVQQKEw5NeSBDb21wYW55IEx0ZDEQMA4GA1UECxMHVGVzdGluZzENMAsGA1UE +AxMEdGVzdDEcMBoGCSqGSIb3DQEJARYNdGVzdEB0ZXN0LmNvbTAeFw0wOTAzMTAx +NTEyMTRaFw0xOTAzMDgxNTEyMTRaMIGLMQswCQYDVQQGEwJVUzESMBAGA1UECBMJ +QmVya3NoaXJlMRAwDgYDVQQHEwdOZXdidXJ5MRcwFQYDVQQKEw5NeSBDb21wYW55 +IEx0ZDEQMA4GA1UECxMHVGVzdGluZzENMAsGA1UEAxMEdGVzdDEcMBoGCSqGSIb3 +DQEJARYNdGVzdEB0ZXN0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAKot9j+/+CX1/gZLgJHIXCRgCItKLGnf7qGbgqB9T2ACBqR0jllKWwDKrcWU +xjXNIc+GF9Wnv+lX6G0Okn4Zt3/uRNobL+2b/yOF7M3Td3/9W873zdkQQX930YZc +Rr8uxdRPP5bxiCgtcw632y21sSEbG9mjccAUnV/0jdvfmMNj0i8gN6E0fMBiJ9S3 +FkxX/KFvt9JWE9CtoyL7ki7UIDq+6vj7Gd5N0B3dOa1y+rRHZzKlJPcSXQSEYUS4 +HmKDwiKSVahft8c4tDn7KPi0vex91hlgZVd3usL2E/Vq7o5D9FAZ5kZY0AdFXwdm +J4lO4Mj7ac7GE4vNERNcXVIX59sCAwEAAaOB8zCB8DAdBgNVHQ4EFgQUuDU3Mr7P +T3n1e3Sy8hBauoDFahAwgcAGA1UdIwSBuDCBtYAUuDU3Mr7PT3n1e3Sy8hBauoDF +ahChgZGkgY4wgYsxCzAJBgNVBAYTAlVTMRIwEAYDVQQIEwlCZXJrc2hpcmUxEDAO +BgNVBAcTB05ld2J1cnkxFzAVBgNVBAoTDk15IENvbXBhbnkgTHRkMRAwDgYDVQQL +EwdUZXN0aW5nMQ0wCwYDVQQDEwR0ZXN0MRwwGgYJKoZIhvcNAQkBFg10ZXN0QHRl +c3QuY29tggkA6+dk+3n3IhkwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOC +AQEAVRG4aALIvCXCiKfe7K+iJxjBVRDFPEf7JWA9LGgbFOn6pNvbxonrR+0BETdc +JV1ET4ct2xsE7QNFIkp9GKRC+6J32zCo8qtLCD5+v436r8TUG2/t2JRMkb9I2XVT +p7RJoot6M0Ltf8KNQUPYh756xmKZ4USfQUwc58MOSDGY8VWEXJOYij9Pf0e0c52t +qiCEjXH7uXiS8Pgq9TYm7AkWSOrglYhSa83x0f8mtT8Q15nBESIHZ6o8FAS2bBgn +B0BkrKRjtBUkuJG3vTox+bYINh2Gxi1JZHWSV1tN5z3hd4VFcKqanW5OgQwToBqp +3nniskIjbH0xjgZf/nVMyLnjxg== +-----END CERTIFICATE----- diff --git a/src/supplicant-manager/tests/certs/test-cert.p12 b/src/supplicant-manager/tests/certs/test-cert.p12 new file mode 100644 index 00000000..ae4a6830 --- /dev/null +++ b/src/supplicant-manager/tests/certs/test-cert.p12 Binary files differdiff --git a/src/supplicant-manager/tests/test-supplicant-config.c b/src/supplicant-manager/tests/test-supplicant-config.c index 937757b2..15be2ba8 100644 --- a/src/supplicant-manager/tests/test-supplicant-config.c +++ b/src/supplicant-manager/tests/test-supplicant-config.c @@ -269,7 +269,8 @@ test_wifi_wep_key (const char *detail, g_assert (nm_supplicant_config_add_setting_wireless_security (config, s_wsec, NULL, - "376aced7-b28c-46be-9a62-fcdf072571da")); + "376aced7-b28c-46be-9a62-fcdf072571da", + 1500)); g_test_assert_expected_messages (); config_dict = nm_supplicant_config_to_variant (config); @@ -409,7 +410,8 @@ test_wifi_wpa_psk (const char *detail, g_assert (nm_supplicant_config_add_setting_wireless_security (config, s_wsec, NULL, - "376aced7-b28c-46be-9a62-fcdf072571da")); + "376aced7-b28c-46be-9a62-fcdf072571da", + 1500)); g_test_assert_expected_messages (); config_dict = nm_supplicant_config_to_variant (config); @@ -439,6 +441,142 @@ test_wifi_wpa_psk_types (void) test_wifi_wpa_psk ("wifi-wep-psk-passphrase", TYPE_STRING, key2, (gconstpointer) key2, strlen (key2)); } +static void +test_wifi_eap (void) +{ + gs_unref_object NMConnection *connection = NULL; + gs_unref_object NMSupplicantConfig *config = NULL; + gs_unref_variant GVariant *config_dict = NULL; + NMSettingConnection *s_con; + NMSettingWireless *s_wifi; + NMSettingWirelessSecurity *s_wsec; + NMSetting8021x *s_8021x; + NMSettingIPConfig *s_ip4; + char *uuid; + gboolean success; + GError *error = NULL; + GBytes *ssid; + const unsigned char ssid_data[] = { 0x54, 0x65, 0x73, 0x74, 0x20, 0x53, 0x53, 0x49, 0x44 }; + const char *bssid_str = "11:22:33:44:55:66"; + guint32 mtu = 1100; + + connection = nm_simple_connection_new (); + + /* Connection setting */ + s_con = (NMSettingConnection *) nm_setting_connection_new (); + nm_connection_add_setting (connection, NM_SETTING (s_con)); + + uuid = nm_utils_uuid_generate (); + g_object_set (s_con, + NM_SETTING_CONNECTION_ID, "Test Wifi EAP-TLS", + NM_SETTING_CONNECTION_UUID, uuid, + NM_SETTING_CONNECTION_AUTOCONNECT, TRUE, + NM_SETTING_CONNECTION_TYPE, NM_SETTING_WIRELESS_SETTING_NAME, + NULL); + g_free (uuid); + + /* Wifi setting */ + s_wifi = (NMSettingWireless *) nm_setting_wireless_new (); + nm_connection_add_setting (connection, NM_SETTING (s_wifi)); + + ssid = g_bytes_new (ssid_data, sizeof (ssid_data)); + + g_object_set (s_wifi, + NM_SETTING_WIRELESS_SSID, ssid, + NM_SETTING_WIRELESS_BSSID, bssid_str, + NM_SETTING_WIRELESS_MODE, "infrastructure", + NM_SETTING_WIRELESS_BAND, "bg", + NULL); + + g_bytes_unref (ssid); + + /* Wifi Security setting */ + s_wsec = (NMSettingWirelessSecurity *) nm_setting_wireless_security_new (); + nm_connection_add_setting (connection, NM_SETTING (s_wsec)); + + g_object_set (s_wsec, + NM_SETTING_WIRELESS_SECURITY_KEY_MGMT, "wpa-eap", + NULL); + + nm_setting_wireless_security_add_proto (s_wsec, "wpa"); + nm_setting_wireless_security_add_proto (s_wsec, "rsn"); + nm_setting_wireless_security_add_pairwise (s_wsec, "tkip"); + nm_setting_wireless_security_add_pairwise (s_wsec, "ccmp"); + nm_setting_wireless_security_add_group (s_wsec, "tkip"); + nm_setting_wireless_security_add_group (s_wsec, "ccmp"); + + /* 802-1X setting */ + s_8021x = (NMSetting8021x *) nm_setting_802_1x_new (); + nm_connection_add_setting (connection, NM_SETTING (s_8021x)); + nm_setting_802_1x_add_eap_method (s_8021x, "tls"); + nm_setting_802_1x_set_client_cert (s_8021x, TEST_CERT_DIR "test-cert.p12", NM_SETTING_802_1X_CK_SCHEME_PATH, NULL, NULL); + nm_setting_802_1x_set_ca_cert (s_8021x, TEST_CERT_DIR "test-ca-cert.pem", NM_SETTING_802_1X_CK_SCHEME_PATH, NULL, NULL); + nm_setting_802_1x_set_private_key (s_8021x, TEST_CERT_DIR "test-cert.p12", NULL, NM_SETTING_802_1X_CK_SCHEME_PATH, NULL, NULL); + + /* IP4 setting */ + s_ip4 = (NMSettingIPConfig *) nm_setting_ip4_config_new (); + nm_connection_add_setting (connection, NM_SETTING (s_ip4)); + + g_object_set (s_ip4, NM_SETTING_IP_CONFIG_METHOD, NM_SETTING_IP4_CONFIG_METHOD_AUTO, NULL); + + success = nm_connection_verify (connection, &error); + g_assert_no_error (error); + g_assert (success); + + config = nm_supplicant_config_new (); + + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'ssid' value 'Test SSID'*"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'scan_ssid' value '1'*"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'bssid' value '11:22:33:44:55:66'*"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'freq_list' value *"); + g_assert (nm_supplicant_config_add_setting_wireless (config, s_wifi, 0)); + g_test_assert_expected_messages (); + + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'key_mgmt' value 'WPA-EAP'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'proto' value 'WPA RSN'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'pairwise' value 'TKIP CCMP'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*added 'group' value 'TKIP CCMP'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*Config: added 'eap' value 'TLS'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*Config: added 'fragment_size' value '1086'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "* Config: added 'ca_cert' value '*/test-ca-cert.pem'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "* Config: added 'private_key' value '*/test-cert.p12'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*Config: added 'bgscan' value 'simple:30:-65:300'"); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, + "*Config: added 'proactive_key_caching' value '1'"); + g_assert (nm_supplicant_config_add_setting_wireless_security (config, + s_wsec, + s_8021x, + "d5b488af-9cab-41ed-bad4-97709c58430f", + mtu)); + g_test_assert_expected_messages (); + + config_dict = nm_supplicant_config_to_variant (config); + g_assert (config_dict); + + validate_opt ("wifi-eap", config_dict, "scan_ssid", TYPE_INT, GINT_TO_POINTER (1), -1); + validate_opt ("wifi-eap", config_dict, "ssid", TYPE_BYTES, ssid_data, sizeof (ssid_data)); + validate_opt ("wifi-eap", config_dict, "bssid", TYPE_KEYWORD, bssid_str, -1); + validate_opt ("wifi-eap", config_dict, "key_mgmt", TYPE_KEYWORD, "WPA-EAP", -1); + validate_opt ("wifi-eap", config_dict, "eap", TYPE_KEYWORD, "TLS", -1); + validate_opt ("wifi-eap", config_dict, "proto", TYPE_KEYWORD, "WPA RSN", -1); + validate_opt ("wifi-eap", config_dict, "pairwise", TYPE_KEYWORD, "TKIP CCMP", -1); + validate_opt ("wifi-eap", config_dict, "group", TYPE_KEYWORD, "TKIP CCMP", -1); + validate_opt ("wifi-eap", config_dict, "fragment_size", TYPE_INT, GINT_TO_POINTER(mtu-14), -1); +} + NMTST_DEFINE (); int main (int argc, char **argv) @@ -448,6 +586,7 @@ int main (int argc, char **argv) g_test_add_func ("/supplicant-config/wifi-open", test_wifi_open); g_test_add_func ("/supplicant-config/wifi-wep", test_wifi_wep); g_test_add_func ("/supplicant-config/wifi-wpa-psk-types", test_wifi_wpa_psk_types); + g_test_add_func ("/supplicant-config/wifi-eap", test_wifi_eap); return g_test_run (); } diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am index 83632bd1..eebdb248 100644 --- a/src/tests/Makefile.am +++ b/src/tests/Makefile.am @@ -2,6 +2,7 @@ SUBDIRS = config AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src/platform \ diff --git a/src/tests/Makefile.in b/src/tests/Makefile.in index f84c5536..a4527284 100644 --- a/src/tests/Makefile.in +++ b/src/tests/Makefile.in @@ -609,6 +609,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -752,6 +753,7 @@ with_valgrind = @with_valgrind@ SUBDIRS = config AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src/platform \ diff --git a/src/tests/config/Makefile.am b/src/tests/config/Makefile.am index 42c6b9a1..a5e068e4 100644 --- a/src/tests/config/Makefile.am +++ b/src/tests/config/Makefile.am @@ -1,5 +1,6 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src/ \ diff --git a/src/tests/config/Makefile.in b/src/tests/config/Makefile.in index 6d1dd4bc..20bbe60a 100644 --- a/src/tests/config/Makefile.in +++ b/src/tests/config/Makefile.in @@ -510,6 +510,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -652,6 +653,7 @@ with_resolvconf = @with_resolvconf@ with_valgrind = @with_valgrind@ AM_CPPFLAGS = \ -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ -I$(top_srcdir)/libnm-core \ -I$(top_builddir)/libnm-core \ -I$(top_srcdir)/src/ \ diff --git a/src/tests/config/test-config.c b/src/tests/config/test-config.c index 8b8028e6..6dad8216 100644 --- a/src/tests/config/test-config.c +++ b/src/tests/config/test-config.c @@ -380,7 +380,7 @@ test_config_confdir (void) g_assert_cmpstr (value, ==, "VAL5"); g_free (value); - nm_config_data_log (nm_config_get_data_orig (config), ">>> TEST: "); + nm_config_data_log (nm_config_get_data_orig (config), ">>> TEST: ", " ", NULL); g_object_unref (config); } @@ -396,6 +396,89 @@ test_config_confdir_parse_error (void) g_clear_error (&error); } +/*****************************************************************************/ + +static void +_test_signal_config_changed_cb (NMConfig *config, + NMConfigData *config_data, + NMConfigChangeFlags changes, + NMConfigData *old_data, + gpointer user_data) +{ + const NMConfigChangeFlags *expected = user_data; + + g_assert (changes); + g_assert_cmpint (changes, ==, *expected); + g_assert (NM_IS_CONFIG (config)); + g_assert (NM_IS_CONFIG_DATA (config_data)); + + g_assert (config_data == old_data); + g_assert (config_data == nm_config_get_data (config)); +} + +static void +_test_signal_config_changed_cb2 (NMConfig *config, + NMConfigData *config_data, + NMConfigChangeFlags changes, + NMConfigData *old_data, + gpointer user_data) +{ + const NMConfigChangeFlags *expected = user_data; + + g_assert (changes); + g_assert_cmpint (changes, ==, *expected); +} + +static void +test_config_signal (void) +{ + gs_unref_object NMConfig *config = NULL; + NMConfigChangeFlags expected; + gs_unref_object NMConfigData *config_data_orig = NULL; + + config = setup_config (NULL, SRCDIR "/NetworkManager.conf", "/no/such/dir", NULL); + + config_data_orig = g_object_ref (nm_config_get_data_orig (config)); + + g_signal_connect (G_OBJECT (config), + NM_CONFIG_SIGNAL_CONFIG_CHANGED, + G_CALLBACK (_test_signal_config_changed_cb), + &expected); + + expected = NM_CONFIG_CHANGE_SIGUSR1; + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, "*config: signal SIGUSR1"); + nm_config_reload (config, SIGUSR1); + + expected = NM_CONFIG_CHANGE_SIGUSR2; + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, "*config: signal SIGUSR2"); + nm_config_reload (config, SIGUSR2); + + expected = NM_CONFIG_CHANGE_SIGHUP; + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, "*config: signal SIGHUP (no changes from disk)*"); + nm_config_reload (config, SIGHUP); + + + /* test with subscribing two signals... + * + * This test exposes glib bug https://bugzilla.redhat.com/show_bug.cgi?id=1260577 + * for which we however have a workaround in 'nm-config.c' */ + g_signal_connect (G_OBJECT (config), + NM_CONFIG_SIGNAL_CONFIG_CHANGED, + G_CALLBACK (_test_signal_config_changed_cb2), + &expected); + expected = NM_CONFIG_CHANGE_SIGUSR2; + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_MESSAGE, "*config: signal SIGUSR2"); + nm_config_reload (config, SIGUSR2); + g_signal_handlers_disconnect_by_func (config, _test_signal_config_changed_cb2, &expected); + + + g_signal_handlers_disconnect_by_func (config, _test_signal_config_changed_cb, &expected); + + g_assert (config_data_orig == nm_config_get_data (config)); +} + +/*****************************************************************************/ + NMTST_DEFINE (); int @@ -419,6 +502,8 @@ main (int argc, char **argv) g_test_add_func ("/config/confdir", test_config_confdir); g_test_add_func ("/config/confdir-parse-error", test_config_confdir_parse_error); + g_test_add_func ("/config/signal", test_config_signal); + /* This one has to come last, because it leaves its values in * nm-config.c's global variables, and there's no way to reset * those to NULL. diff --git a/src/tests/test-general-with-expect.c b/src/tests/test-general-with-expect.c index fe76e3fa..21fb0681 100644 --- a/src/tests/test-general-with-expect.c +++ b/src/tests/test-general-with-expect.c @@ -23,6 +23,7 @@ #include <glib.h> #include <string.h> #include <errno.h> +#include <time.h> #include <netinet/ether.h> #include <sys/types.h> #include <sys/wait.h> @@ -33,6 +34,10 @@ #include "nm-test-utils.h" +#ifndef CLOCK_BOOTTIME +#define CLOCK_BOOTTIME 7 +#endif + /*******************************************/ static void @@ -284,9 +289,9 @@ test_nm_utils_kill_child (void) fatal_mask = g_log_set_always_fatal (G_LOG_FATAL_MASK); - g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-1-1' (*): waiting up to 500 milliseconds for process to terminate normally after sending SIGTERM (15)..."); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-1-1' (*): waiting up to 3000 milliseconds for process to terminate normally after sending SIGTERM (15)..."); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-1-1' (*): after sending SIGTERM (15), process * exited by signal 15 (* usec elapsed)"); - test_nm_utils_kill_child_sync_do ("test-s-1-1", pid1s_1, SIGTERM, 1000 / 2, TRUE, &expected_signal_TERM); + test_nm_utils_kill_child_sync_do ("test-s-1-1", pid1s_1, SIGTERM, 3000, TRUE, &expected_signal_TERM); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-1-2' (*): waiting for process to terminate after sending SIGKILL (9)..."); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-1-2' (*): after sending SIGKILL (9), process * exited by signal 9 (* usec elapsed)"); @@ -298,16 +303,16 @@ test_nm_utils_kill_child (void) test_nm_utils_kill_child_sync_do ("test-s-1-3", pid1s_3, 0, 1, TRUE, &expected_signal_KILL); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-2' (*): process * already terminated normally with status 47"); - test_nm_utils_kill_child_sync_do ("test-s-2", pid2s, SIGTERM, 1000 / 2, TRUE, &expected_exit_47); + test_nm_utils_kill_child_sync_do ("test-s-2", pid2s, SIGTERM, 3000, TRUE, &expected_exit_47); /* send invalid signal. */ g_test_expect_message ("NetworkManager", G_LOG_LEVEL_WARNING, "*kill child process 'test-s-3-0' (*): failed to send Unexpected signal: Invalid argument (22)"); test_nm_utils_kill_child_sync_do ("test-s-3-0", pid3s, -1, 0, FALSE, NULL); /* really kill pid3s */ - g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-3-1' (*): waiting up to 500 milliseconds for process to terminate normally after sending SIGTERM (15)..."); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-3-1' (*): waiting up to 3000 milliseconds for process to terminate normally after sending SIGTERM (15)..."); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-s-3-1' (*): after sending SIGTERM (15), process * exited normally with status 47 (* usec elapsed)"); - test_nm_utils_kill_child_sync_do ("test-s-3-1", pid3s, SIGTERM, 1000 / 2, TRUE, &expected_exit_47); + test_nm_utils_kill_child_sync_do ("test-s-3-1", pid3s, SIGTERM, 3000, TRUE, &expected_exit_47); /* pid3s should not be a valid process, hence the call should fail. Note, that there * is a race here. */ @@ -320,9 +325,9 @@ test_nm_utils_kill_child (void) test_nm_utils_kill_child_sync_do ("test-s-4", pid4s, SIGTERM, 1, TRUE, &expected_signal_KILL); - g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-1-1' (*): wait for process to terminate after sending SIGTERM (15) (send SIGKILL in 500 milliseconds)..."); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-1-1' (*): wait for process to terminate after sending SIGTERM (15) (send SIGKILL in 3000 milliseconds)..."); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-1-1' (*): terminated by signal 15 (* usec elapsed)"); - test_nm_utils_kill_child_async_do ("test-a-1-1", pid1a_1, SIGTERM, 1000 / 2, TRUE, &expected_signal_TERM); + test_nm_utils_kill_child_async_do ("test-a-1-1", pid1a_1, SIGTERM, 3000, TRUE, &expected_signal_TERM); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-1-2' (*): wait for process to terminate after sending SIGKILL (9)..."); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-1-2' (*): terminated by signal 9 (* usec elapsed)"); @@ -335,16 +340,16 @@ test_nm_utils_kill_child (void) g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-2' (*): process * already terminated normally with status 47"); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-2' (*): invoke callback: terminated normally with status 47"); - test_nm_utils_kill_child_async_do ("test-a-2", pid2a, SIGTERM, 1000 / 2, TRUE, &expected_exit_47); + test_nm_utils_kill_child_async_do ("test-a-2", pid2a, SIGTERM, 3000, TRUE, &expected_exit_47); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_WARNING, "*kill child process 'test-a-3-0' (*): unexpected error sending Unexpected signal: Invalid argument (22)"); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-3-0' (*): invoke callback: killing child failed"); /* coverity[negative_returns] */ test_nm_utils_kill_child_async_do ("test-a-3-0", pid3a, -1, 1000 / 2, FALSE, NULL); - g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-3-1' (*): wait for process to terminate after sending SIGTERM (15) (send SIGKILL in 500 milliseconds)..."); + g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-3-1' (*): wait for process to terminate after sending SIGTERM (15) (send SIGKILL in 3000 milliseconds)..."); g_test_expect_message ("NetworkManager", G_LOG_LEVEL_DEBUG, "*kill child process 'test-a-3-1' (*): terminated normally with status 47 (* usec elapsed)"); - test_nm_utils_kill_child_async_do ("test-a-3-1", pid3a, SIGTERM, 1000 / 2, TRUE, &expected_exit_47); + test_nm_utils_kill_child_async_do ("test-a-3-1", pid3a, SIGTERM, 3000, TRUE, &expected_exit_47); /* pid3a should not be a valid process, hence the call should fail. Note, that there * is a race here. */ diff --git a/src/tests/test-general.c b/src/tests/test-general.c index de65d50f..094a4a65 100644 --- a/src/tests/test-general.c +++ b/src/tests/test-general.c @@ -440,6 +440,82 @@ test_connection_match_wired (void) } static void +test_connection_match_wired2 (void) +{ + NMConnection *orig, *copy, *matched; + GSList *connections = NULL; + NMSettingWired *s_wired; + const char *mac = "52:54:00:ab:db:23"; + + orig = _match_connection_new (); + s_wired = nm_connection_get_setting_wired (orig); + g_assert (s_wired); + g_object_set (G_OBJECT (s_wired), + NM_SETTING_WIRED_PORT, "tp", /* port is not compared */ + NM_SETTING_WIRED_MAC_ADDRESS, mac, /* we allow MAC address just in one connection */ + NULL); + + copy = nm_simple_connection_new_clone (orig); + connections = g_slist_append (connections, copy); + + /* Check that if the generated connection do not have wired setting + * and s390 properties in the existing connection's setting are default, + * the connections match. It can happen if assuming VLAN devices. */ + nm_connection_remove_setting (orig, NM_TYPE_SETTING_WIRED); + + matched = nm_utils_match_connection (connections, orig, TRUE, NULL, NULL); + g_assert (matched == copy); + + g_slist_free (connections); + g_object_unref (orig); + g_object_unref (copy); +} + +static void +test_connection_match_cloned_mac (void) +{ + NMConnection *orig, *exact, *fuzzy, *matched; + GSList *connections = NULL; + NMSettingWired *s_wired; + + orig = _match_connection_new (); + + fuzzy = nm_simple_connection_new_clone (orig); + connections = g_slist_append (connections, fuzzy); + s_wired = nm_connection_get_setting_wired (orig); + g_assert (s_wired); + g_object_set (G_OBJECT (s_wired), + NM_SETTING_WIRED_CLONED_MAC_ADDRESS, "52:54:00:ab:db:23", + NULL); + + matched = nm_utils_match_connection (connections, orig, TRUE, NULL, NULL); + g_assert (matched == fuzzy); + + exact = nm_simple_connection_new_clone (orig); + connections = g_slist_append (connections, exact); + s_wired = nm_connection_get_setting_wired (exact); + g_assert (s_wired); + g_object_set (G_OBJECT (s_wired), + NM_SETTING_WIRED_CLONED_MAC_ADDRESS, "52:54:00:ab:db:23", + NULL); + + matched = nm_utils_match_connection (connections, orig, TRUE, NULL, NULL); + g_assert (matched == exact); + + g_object_set (G_OBJECT (s_wired), + NM_SETTING_WIRED_CLONED_MAC_ADDRESS, "52:54:00:ab:db:24", + NULL); + + matched = nm_utils_match_connection (connections, orig, TRUE, NULL, NULL); + g_assert (matched == fuzzy); + + g_slist_free (connections); + g_object_unref (orig); + g_object_unref (fuzzy); + g_object_unref (exact); +} + +static void test_connection_no_match_ip4_addr (void) { NMConnection *orig, *copy, *matched; @@ -747,6 +823,8 @@ main (int argc, char **argv) g_test_add_func ("/general/connection-match/ip4-method", test_connection_match_ip4_method); g_test_add_func ("/general/connection-match/con-interface-name", test_connection_match_interface_name); g_test_add_func ("/general/connection-match/wired", test_connection_match_wired); + g_test_add_func ("/general/connection-match/wired2", test_connection_match_wired2); + g_test_add_func ("/general/connection-match/cloned_mac", test_connection_match_cloned_mac); g_test_add_func ("/general/connection-match/no-match-ip4-addr", test_connection_no_match_ip4_addr); g_test_add_func ("/general/connection-sort/autoconnect-priority", test_connection_sort_autoconnect_priority); diff --git a/src/vpn-manager/nm-vpn-connection.c b/src/vpn-manager/nm-vpn-connection.c index c34155ef..e2d3103b 100644 --- a/src/vpn-manager/nm-vpn-connection.c +++ b/src/vpn-manager/nm-vpn-connection.c @@ -933,7 +933,7 @@ apply_parent_device_config (NMVpnConnection *connection) * default route. */ if (vpn4_parent_config) { nm_ip4_config_merge (vpn4_parent_config, priv->ip4_config, NM_IP_CONFIG_MERGE_DEFAULT); - nm_ip4_config_set_gateway (vpn4_parent_config, 0); + nm_ip4_config_unset_gateway (vpn4_parent_config); } if (vpn6_parent_config) { nm_ip6_config_merge (vpn6_parent_config, priv->ip6_config, NM_IP_CONFIG_MERGE_DEFAULT); @@ -980,6 +980,9 @@ nm_vpn_connection_apply_config (NMVpnConnection *connection) TRUE)) return FALSE; } + + if (priv->mtu && priv->mtu != nm_platform_link_get_mtu (NM_PLATFORM_GET, priv->ip_ifindex)) + nm_platform_link_set_mtu (NM_PLATFORM_GET, priv->ip_ifindex, priv->mtu); } apply_parent_device_config (connection); @@ -1149,10 +1152,6 @@ process_generic_config (NMVpnConnection *connection, } } - /* MTU; this is a per-connection value, though NM's API treats it - * like it's IP4-specific. So we store it for now and retrieve it - * later in ip4_config_get. - */ priv->mtu = 0; val = (GValue *) g_hash_table_lookup (config_hash, NM_VPN_PLUGIN_CONFIG_MTU); if (val) { @@ -1328,9 +1327,6 @@ nm_vpn_connection_ip4_config_get (DBusGProxy *proxy, if (val) nm_ip4_config_set_mss (config, g_value_get_uint (val)); - if (priv->mtu) - nm_ip4_config_set_mtu (config, priv->mtu, NM_IP_CONFIG_SOURCE_VPN); - val = (GValue *) g_hash_table_lookup (config_hash, NM_VPN_PLUGIN_IP4_CONFIG_DOMAIN); if (val) nm_ip4_config_add_domain (config, g_value_get_string (val)); diff --git a/tools/Makefile.in b/tools/Makefile.in index 4d93bbd5..4236d5f2 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -253,6 +253,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ diff --git a/tools/check-exports.sh b/tools/check-exports.sh index dfd882c1..da62a74f 100755 --- a/tools/check-exports.sh +++ b/tools/check-exports.sh @@ -12,7 +12,7 @@ TMPFILE="$(mktemp .nm-check-exports.XXXXXX)" get_syms() { - nm "$1" | + ${NM:-nm} "$1" | sed -n 's/^[[:xdigit:]]\+ [DT] //p' | sort } diff --git a/valgrind.suppressions b/valgrind.suppressions index 5a345fd9..d7d78738 100644 --- a/valgrind.suppressions +++ b/valgrind.suppressions @@ -293,10 +293,11 @@ fun:g_thread_new_internal ... fun:g_thread_pool_push - fun:g_task_start_task_thread + ... fun:g_task_run_in_thread fun:g_async_initable_real_init_async fun:g_bus_get + ... } { @@ -412,6 +413,33 @@ fun:g_dbus_proxy_finalize ... } +{ + _gdbus_f23_1 + Memcheck:Leak + match-leak-kinds: definite + fun:malloc + fun:g_malloc + fun:g_slice_alloc + fun:g_slice_alloc0 + fun:g_type_create_instance + fun:g_object_new_internal + fun:g_object_newv + fun:g_object_new + fun:g_task_new + fun:_g_socket_read_with_control_messages + fun:_g_dbus_worker_do_read_unlocked + fun:_g_dbus_worker_do_read_cb + fun:g_task_return_now + ... + fun:g_main_dispatch + fun:g_main_context_dispatch + fun:g_main_context_iterate.isra.29 + fun:g_main_loop_run + fun:gdbus_shared_thread_func + fun:g_thread_proxy + fun:start_thread + fun:clone +} ############################################################### # libnl3 diff --git a/vapi/Makefile.in b/vapi/Makefile.in index cf170108..cbbf0239 100644 --- a/vapi/Makefile.in +++ b/vapi/Makefile.in @@ -321,6 +321,7 @@ LOG_DRIVER = @LOG_DRIVER@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ |