Imported Upstream version 1.2.0 upstream upstream/1.2.0
authorJean-Philippe Orsini <jeanfi@gmail.com>
Sat, 4 Feb 2017 18:15:53 +0000 (19:15 +0100)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Sat, 4 Feb 2017 18:15:53 +0000 (19:15 +0100)
165 files changed:
Makefile.in
NEWS
NEWS.html
README
README.html
aclocal.m4
config.h.in
configure
configure.ac
doc/Makefile.in
doc/TODO.html
doc/TODO.txt
doc/faq.html
doc/faq.txt
icons/hicolor/14x14/Makefile.in
icons/hicolor/16x16/Makefile.in
icons/hicolor/22x22/Makefile.in
icons/hicolor/24x24/Makefile.in
icons/hicolor/32x32/Makefile.in
icons/hicolor/48x48/Makefile.in
icons/hicolor/64x64/Makefile.in
icons/hicolor/scalable/Makefile.in
icons/ubuntu-mono-dark/apps/22/Makefile.in
icons/ubuntu-mono-dark/status/22/Makefile.in
icons/ubuntu-mono-light/status/22/Makefile.in
m4/gettext.m4 [new file with mode: 0644]
m4/iconv.m4 [new file with mode: 0644]
m4/lib-ld.m4 [new file with mode: 0644]
m4/lib-link.m4 [new file with mode: 0644]
m4/lib-prefix.m4 [new file with mode: 0644]
m4/nls.m4 [new file with mode: 0644]
m4/po.m4 [new file with mode: 0644]
m4/progtest.m4 [new file with mode: 0644]
po/LINGUAS
po/POTFILES.in
po/de.gmo
po/de.po
po/el.gmo [new file with mode: 0644]
po/el.po [new file with mode: 0644]
po/es.gmo
po/es.po
po/fr.gmo
po/fr.po
po/hr.gmo
po/hr.po
po/hu.gmo
po/hu.po
po/it.gmo
po/it.po
po/lv.gmo
po/lv.po
po/nl.gmo
po/nl.po
po/pl.gmo [new file with mode: 0644]
po/pl.po [new file with mode: 0644]
po/psensor.pot
po/pt_BR.gmo
po/pt_BR.po
po/ru.gmo
po/ru.po
po/sl.gmo
po/sl.po
po/sr.gmo
po/sr.po
po/sv.gmo
po/sv.po
po/tr.gmo
po/tr.po
po/uk.gmo
po/uk.po
po/zh_CN.gmo
po/zh_CN.po
src/Makefile.am
src/Makefile.in
src/cfg.c
src/cfg.h
src/glade/Makefile.am
src/glade/Makefile.in
src/glade/psensor-appindicator.glade [new file with mode: 0644]
src/glade/psensor-pref.glade
src/glade/psensor.glade
src/glade/sensor-edit.glade
src/graph.c
src/graph.h
src/lib/Makefile.am
src/lib/Makefile.in
src/lib/amd.c
src/lib/amd.h
src/lib/bool.h
src/lib/color.c
src/lib/color.h
src/lib/hdd.h
src/lib/hdd_atasmart.c
src/lib/hdd_hddtemp.c
src/lib/lmsensor.c
src/lib/lmsensor.h
src/lib/measure.h
src/lib/nvidia.c
src/lib/nvidia.h
src/lib/parray.h [new file with mode: 0644]
src/lib/pgtop2.c
src/lib/pgtop2.h
src/lib/pio.c
src/lib/pio.h
src/lib/plog.c
src/lib/plog.h
src/lib/pmutex.c
src/lib/pmutex.h
src/lib/psensor.c
src/lib/psensor.h
src/lib/psensor_json.c
src/lib/psensor_json.h
src/lib/ptime.c
src/lib/ptime.h
src/lib/pudisks2.c
src/lib/pudisks2.h
src/lib/slog.c
src/lib/slog.h
src/lib/temperature.h
src/lib/url.h
src/main.c
src/notify_cmd.c
src/notify_cmd.h
src/psensor.1
src/psensor.gschema.xml
src/pxdg.c
src/pxdg.h
src/rsensor.c
src/rsensor.h
src/server/Makefile.am
src/server/Makefile.in
src/server/psensor-server.1
src/server/server.c
src/server/server.h
src/server/sysinfo.c
src/server/sysinfo.h
src/ui.c
src/ui.h
src/ui_appindicator.c
src/ui_appindicator.h
src/ui_color.c
src/ui_color.h
src/ui_graph.c
src/ui_graph.h
src/ui_notify.c
src/ui_notify.h
src/ui_pref.c
src/ui_pref.h
src/ui_sensorlist.c
src/ui_sensorlist.h
src/ui_sensorpref.c
src/ui_sensorpref.h
src/ui_status.c
src/ui_status.h
src/ui_unity.c
src/ui_unity.h
tests/Makefile.am
tests/Makefile.in
tests/checkpatch.pl
tests/spelling.txt [new file with mode: 0644]
tests/test_io_dir_list.c
tests/test_psensor_type_to_unit_str.c
tests/test_url_encode.c
tests/test_url_normalize.c
www/Makefile.in

index 0f50944..e387bb1 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,12 +79,20 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = .
+DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
+       $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/configure $(am__configure_deps) \
+       $(srcdir)/config.h.in ABOUT-NLS $(dist_doc_DATA) COPYING \
+       ar-lib compile config.guess config.rpath config.sub depcomp \
+       install-sh missing
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
-       $(am__configure_deps) $(dist_doc_DATA) $(am__DIST_COMMON)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
 mkinstalldirs = $(install_sh) -d
@@ -187,10 +185,6 @@ ETAGS = etags
 CTAGS = ctags
 CSCOPE = cscope
 DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
-       ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README ar-lib \
-       compile config.guess config.rpath config.sub depcomp \
-       install-sh missing
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -261,7 +255,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -320,7 +313,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -335,7 +327,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -381,7 +372,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -437,6 +427,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -700,15 +691,15 @@ dist-xz: distdir
        $(am__post_remove_distdir)
 
 dist-tarZ: distdir
-       @echo WARNING: "Support for distribution archives compressed with" \
-                      "legacy program 'compress' is deprecated." >&2
+       @echo WARNING: "Support for shar distribution archives is" \
+                      "deprecated." >&2
        @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
        $(am__post_remove_distdir)
 
 dist-shar: distdir
-       @echo WARNING: "Support for shar distribution archives is" \
-                      "deprecated." >&2
+       @echo WARNING: "Support for distribution archives compressed with" \
+                      "legacy program 'compress' is deprecated." >&2
        @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
        $(am__post_remove_distdir)
@@ -744,17 +735,17 @@ distcheck: dist
        esac
        chmod -R a-w $(distdir)
        chmod u+w $(distdir)
-       mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
+       mkdir $(distdir)/_build $(distdir)/_inst
        chmod a-w $(distdir)
        test -d $(distdir)/_build || exit 0; \
        dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
          && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
          && am__cwd=`pwd` \
-         && $(am__cd) $(distdir)/_build/sub \
-         && ../../configure \
+         && $(am__cd) $(distdir)/_build \
+         && ../configure \
            $(AM_DISTCHECK_CONFIGURE_FLAGS) \
            $(DISTCHECK_CONFIGURE_FLAGS) \
-           --srcdir=../.. --prefix="$$dc_install_base" \
+           --srcdir=.. --prefix="$$dc_install_base" \
          && $(MAKE) $(AM_MAKEFLAGS) \
          && $(MAKE) $(AM_MAKEFLAGS) dvi \
          && $(MAKE) $(AM_MAKEFLAGS) check \
@@ -933,8 +924,6 @@ uninstall-am: uninstall-desktopDATA uninstall-dist_docDATA
        pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-desktopDATA uninstall-dist_docDATA
 
-.PRECIOUS: Makefile
-
 
 @ASCIIDOC_TRUE@README.html: README www/style.css
 @ASCIIDOC_TRUE@        asciidoc --theme style -a themedir=`pwd`/www -n -a toc README
diff --git a/NEWS b/NEWS
index 7ff462e..1434a86 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,28 @@
-Psensor NEWS
-============
+= Psensor NEWS
+:docinfo2:
+
+v1.2.0
+------
+
+* Added tooltip explaining why a setting is not available.
+* Removed support of old AppIndicator library < 3.0.
+* Fixed memory leaks in appindicator support when sensor preferences
+  are changed.
+* Changes of sensors preferences are applied immediately.
+* Avoid multiple sensor preferences dialog at the same time.
+* Support max/min sensor information from providers.
+* Fixed string not translatable. (Closes: #138076).
+* Added a default high threshold for temperature.
+* Made help2man optional.
+* New dconf settings +default-high-threshold-temperature+,
+  and +default-sensor-alarm-enabled+.
+* Fixed memory leaks due to glib GError.
+* Added Greek translation.
+* Updated Russian translation (Grigorii Chirkov).
+* Updated German translation (Max).
+* Added Polish translation (hawkeye116477).
+* Fixed GtkDialog mapped without a transient parent (Francis
+  Chin). (LP: #1642696).
 
 v1.1.5
 ------
@@ -12,8 +35,7 @@ v1.1.4
 * psensor-server: avoid to retrieve files which are not under the
   webserver directory.
 * Fixed compilation failure due to MHD_create_response_from_buffer
-  which has been deprecated
-
+  which has been deprecated  
 
 v1.1.3
 ------
index 41a692f..1d84e54 100644 (file)
--- a/NEWS.html
+++ b/NEWS.html
@@ -381,6 +381,90 @@ asciidoc.install();
 </div>\r
 <div id="content">\r
 <div class="sect1">\r
+<h2 id="_v1_2_0">v1.2.0</h2>\r
+<div class="sectionbody">\r
+<div class="ulist"><ul>\r
+<li>\r
+<p>\r
+Added tooltip explaining why a setting is not available.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Removed support of old AppIndicator library &lt; 3.0.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Fixed memory leaks in appindicator support when sensor preferences\r
+  are changed.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Changes of sensors preferences are applied immediately.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Avoid multiple sensor preferences dialog at the same time.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Support max/min sensor information from providers.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Fixed string not translatable. (Closes: #138076).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Added a default high threshold for temperature.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Made help2man optional.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+New dconf settings <code>default-high-threshold-temperature</code>,\r
+  and <code>default-sensor-alarm-enabled</code>.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Fixed memory leaks due to glib GError.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Added Greek translation.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Updated Russian translation (Grigorii Chirkov).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Updated German translation (Max).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+Added Polish translation (hawkeye116477).\r
+</p>\r
+</li>\r
+</ul></div>\r
+</div>\r
+</div>\r
+<div class="sect1">\r
 <h2 id="_v1_1_5">v1.1.5</h2>\r
 <div class="sectionbody">\r
 <div class="ulist"><ul>\r
@@ -2896,7 +2980,7 @@ Fixed BR1: crash when no temperature sensor is available
 <div id="footer">\r
 <div id="footer-text">\r
 Last updated\r
- 2016-06-05 13:06:15 CEST\r
+ 2016-08-25 23:02:17 CEST\r
 </div>\r
 </div>\r
 </body>\r
diff --git a/README b/README
index c1d3c70..9ee890b 100644 (file)
--- a/README
+++ b/README
@@ -1,5 +1,5 @@
-Psensor README
-==============
+Psensor README
+:docinfo2:
 
 Introduction
 ------------
@@ -116,12 +116,12 @@ The compilation of +psensor+ requires:
  * lm-sensors
  * library sensors4
  * library gtk3 >=3.4
- * help2man 
+ * help2man (optional, required to produce the manpage)
  * asciidoc (optional, required to produce the html version of the
    faq)
  * cppcheck (optional, static source checker)
  * library libnotify (optional)
- * library libappindicator (optional)
+ * library libappindicator >= 3.0 (optional)
  * library libXNVCtrl (optional)
  * library json-c >= 0.11.99 and curl (optional, required for remote monitoring)
  * library unity (>=v3.4.2, optional)
@@ -132,7 +132,7 @@ The compilation of +psensor+ requires:
 The specific requirements for +psensor-server+:
 
  * library libmicrohttpd 
- * library json0
+ * library json-c >= 0.11.99
 
 Compilation and Installation Steps
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
index a1942e9..510d0dd 100644 (file)
@@ -403,12 +403,18 @@ the temperature of the NVidia GPUs (using XNVCtrl).
 </li>\r
 <li>\r
 <p>\r
-the temperature of the Hard Disk Drives (using hddtemp or libatasmart).\r
+the temperature of ATI GPUs (using ATI ADL SDK).\r
 </p>\r
 </li>\r
 <li>\r
 <p>\r
-the rotation speed of the fans (using lm-sensors).\r
+the temperature of the Hard Disk Drives (using hddtemp, libatasmart\r
+   or udisks2).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+the rotation speed of the fans.\r
 </p>\r
 </li>\r
 <li>\r
@@ -418,7 +424,7 @@ the temperature of a remote computer.
 </li>\r
 <li>\r
 <p>\r
-the cpu load.\r
+the CPU load.\r
 </p>\r
 </li>\r
 </ul></div>\r
@@ -548,7 +554,7 @@ library gtk3 &gt;=3.4
 </li>\r
 <li>\r
 <p>\r
-help2man\r
+help2man (optional, required to produce the manpage)\r
 </p>\r
 </li>\r
 <li>\r
@@ -569,7 +575,7 @@ library libnotify (optional)
 </li>\r
 <li>\r
 <p>\r
-library libappindicator (optional)\r
+library libappindicator &gt;= 3.0 (optional)\r
 </p>\r
 </li>\r
 <li>\r
@@ -597,6 +603,11 @@ library gtop2 (optional, required for CPU usage)
 library atasmart (optional, for disk monitoring)\r
 </p>\r
 </li>\r
+<li>\r
+<p>\r
+library udisk2 (optional, for disk monitoring)\r
+</p>\r
+</li>\r
 </ul></div>\r
 <div class="paragraph"><p>The specific requirements for <code>psensor-server</code>:</p></div>\r
 <div class="ulist"><ul>\r
@@ -607,7 +618,7 @@ library libmicrohttpd
 </li>\r
 <li>\r
 <p>\r
-library json0\r
+library json-c &gt;= 0.11.99\r
 </p>\r
 </li>\r
 </ul></div>\r
@@ -644,11 +655,6 @@ been found.
 </li>\r
 <li>\r
 <p>\r
-To monitor HDDs, the <code>hddtemp</code> daemon must be installed and running.\r
-</p>\r
-</li>\r
-<li>\r
-<p>\r
 Run: <code>psensor</code>\r
 </p>\r
 </li>\r
@@ -681,7 +687,8 @@ have extracted the ATI ADL SDK. Other steps are indentical.</p></div>
 <div id="footnotes"><hr /></div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 2014-08-23 13:50:12 CEST\r
+Last updated\r
+ 2016-06-05 13:12:53 CEST\r
 </div>\r
 </div>\r
 </body>\r
index 0aef9eb..344be6d 100644 (file)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.15 -*- Autoconf -*-
+# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,412 +20,6 @@ You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# gettext.m4 serial 67 (gettext-0.19.6)
-dnl Copyright (C) 1995-2014 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-dnl
-dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
-dnl License but which still want to provide support for the GNU gettext
-dnl functionality.
-dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
-dnl gettext package is covered by the GNU General Public License.
-dnl They are *not* in the public domain.
-
-dnl Authors:
-dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
-dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2006, 2008-2010.
-
-dnl Macro to add for using GNU gettext.
-
-dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
-dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The
-dnl    default (if it is not specified or empty) is 'no-libtool'.
-dnl    INTLSYMBOL should be 'external' for packages with no intl directory,
-dnl    and 'no-libtool' or 'use-libtool' for packages with an intl directory.
-dnl    If INTLSYMBOL is 'use-libtool', then a libtool library
-dnl    $(top_builddir)/intl/libintl.la will be created (shared and/or static,
-dnl    depending on --{enable,disable}-{shared,static} and on the presence of
-dnl    AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
-dnl    $(top_builddir)/intl/libintl.a will be created.
-dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
-dnl    implementations (in libc or libintl) without the ngettext() function
-dnl    will be ignored.  If NEEDSYMBOL is specified and is
-dnl    'need-formatstring-macros', then GNU gettext implementations that don't
-dnl    support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
-dnl INTLDIR is used to find the intl libraries.  If empty,
-dnl    the value '$(top_builddir)/intl/' is used.
-dnl
-dnl The result of the configuration is one of three cases:
-dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
-dnl    and used.
-dnl    Catalog format: GNU --> install in $(datadir)
-dnl    Catalog extension: .mo after installation, .gmo in source tree
-dnl 2) GNU gettext has been found in the system's C library.
-dnl    Catalog format: GNU --> install in $(datadir)
-dnl    Catalog extension: .mo after installation, .gmo in source tree
-dnl 3) No internationalization, always use English msgid.
-dnl    Catalog format: none
-dnl    Catalog extension: none
-dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur.
-dnl The use of .gmo is historical (it was needed to avoid overwriting the
-dnl GNU format catalogs when building on a platform with an X/Open gettext),
-dnl but we keep it in order not to force irrelevant filename changes on the
-dnl maintainers.
-dnl
-AC_DEFUN([AM_GNU_GETTEXT],
-[
-  dnl Argument checking.
-  ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
-    [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
-])])])])])
-  ifelse(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old],
-    [AC_DIAGNOSE([obsolete], [Use of AM_GNU_GETTEXT without [external] argument is deprecated.])])
-  ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
-    [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
-])])])])
-  define([gt_included_intl],
-    ifelse([$1], [external],
-      ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]),
-      [yes]))
-  define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], []))
-  gt_NEEDS_INIT
-  AM_GNU_GETTEXT_NEED([$2])
-
-  AC_REQUIRE([AM_PO_SUBDIRS])dnl
-  ifelse(gt_included_intl, yes, [
-    AC_REQUIRE([AM_INTL_SUBDIR])dnl
-  ])
-
-  dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
-  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
-  AC_REQUIRE([AC_LIB_RPATH])
-
-  dnl Sometimes libintl requires libiconv, so first search for libiconv.
-  dnl Ideally we would do this search only after the
-  dnl      if test "$USE_NLS" = "yes"; then
-  dnl        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
-  dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
-  dnl the configure script would need to contain the same shell code
-  dnl again, outside any 'if'. There are two solutions:
-  dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
-  dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
-  dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
-  dnl documented, we avoid it.
-  ifelse(gt_included_intl, yes, , [
-    AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
-  ])
-
-  dnl Sometimes, on Mac OS X, libintl requires linking with CoreFoundation.
-  gt_INTL_MACOSX
-
-  dnl Set USE_NLS.
-  AC_REQUIRE([AM_NLS])
-
-  ifelse(gt_included_intl, yes, [
-    BUILD_INCLUDED_LIBINTL=no
-    USE_INCLUDED_LIBINTL=no
-  ])
-  LIBINTL=
-  LTLIBINTL=
-  POSUB=
-
-  dnl Add a version number to the cache macros.
-  case " $gt_needs " in
-    *" need-formatstring-macros "*) gt_api_version=3 ;;
-    *" need-ngettext "*) gt_api_version=2 ;;
-    *) gt_api_version=1 ;;
-  esac
-  gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc"
-  gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl"
-
-  dnl If we use NLS figure out what method
-  if test "$USE_NLS" = "yes"; then
-    gt_use_preinstalled_gnugettext=no
-    ifelse(gt_included_intl, yes, [
-      AC_MSG_CHECKING([whether included gettext is requested])
-      AC_ARG_WITH([included-gettext],
-        [  --with-included-gettext use the GNU gettext library included here],
-        nls_cv_force_use_gnu_gettext=$withval,
-        nls_cv_force_use_gnu_gettext=no)
-      AC_MSG_RESULT([$nls_cv_force_use_gnu_gettext])
-
-      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
-      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
-    ])
-        dnl User does not insist on using GNU NLS library.  Figure out what
-        dnl to use.  If GNU gettext is available we use this.  Else we have
-        dnl to fall back to GNU NLS library.
-
-        if test $gt_api_version -ge 3; then
-          gt_revision_test_code='
-#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
-#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
-#endif
-changequote(,)dnl
-typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
-changequote([,])dnl
-'
-        else
-          gt_revision_test_code=
-        fi
-        if test $gt_api_version -ge 2; then
-          gt_expression_test_code=' + * ngettext ("", "", 0)'
-        else
-          gt_expression_test_code=
-        fi
-
-        AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc],
-         [AC_LINK_IFELSE(
-            [AC_LANG_PROGRAM(
-               [[
-#include <libintl.h>
-$gt_revision_test_code
-extern int _nl_msg_cat_cntr;
-extern int *_nl_domain_bindings;
-               ]],
-               [[
-bindtextdomain ("", "");
-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings
-               ]])],
-            [eval "$gt_func_gnugettext_libc=yes"],
-            [eval "$gt_func_gnugettext_libc=no"])])
-
-        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
-          dnl Sometimes libintl requires libiconv, so first search for libiconv.
-          ifelse(gt_included_intl, yes, , [
-            AM_ICONV_LINK
-          ])
-          dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL
-          dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv])
-          dnl because that would add "-liconv" to LIBINTL and LTLIBINTL
-          dnl even if libiconv doesn't exist.
-          AC_LIB_LINKFLAGS_BODY([intl])
-          AC_CACHE_CHECK([for GNU gettext in libintl],
-            [$gt_func_gnugettext_libintl],
-           [gt_save_CPPFLAGS="$CPPFLAGS"
-            CPPFLAGS="$CPPFLAGS $INCINTL"
-            gt_save_LIBS="$LIBS"
-            LIBS="$LIBS $LIBINTL"
-            dnl Now see whether libintl exists and does not depend on libiconv.
-            AC_LINK_IFELSE(
-              [AC_LANG_PROGRAM(
-                 [[
-#include <libintl.h>
-$gt_revision_test_code
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias (const char *);
-                 ]],
-                 [[
-bindtextdomain ("", "");
-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")
-                 ]])],
-              [eval "$gt_func_gnugettext_libintl=yes"],
-              [eval "$gt_func_gnugettext_libintl=no"])
-            dnl Now see whether libintl exists and depends on libiconv.
-            if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
-              LIBS="$LIBS $LIBICONV"
-              AC_LINK_IFELSE(
-                [AC_LANG_PROGRAM(
-                   [[
-#include <libintl.h>
-$gt_revision_test_code
-extern int _nl_msg_cat_cntr;
-extern
-#ifdef __cplusplus
-"C"
-#endif
-const char *_nl_expand_alias (const char *);
-                   ]],
-                   [[
-bindtextdomain ("", "");
-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")
-                   ]])],
-                [LIBINTL="$LIBINTL $LIBICONV"
-                 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
-                 eval "$gt_func_gnugettext_libintl=yes"
-                ])
-            fi
-            CPPFLAGS="$gt_save_CPPFLAGS"
-            LIBS="$gt_save_LIBS"])
-        fi
-
-        dnl If an already present or preinstalled GNU gettext() is found,
-        dnl use it.  But if this macro is used in GNU gettext, and GNU
-        dnl gettext is already preinstalled in libintl, we update this
-        dnl libintl.  (Cf. the install rule in intl/Makefile.in.)
-        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
-           || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \
-                && test "$PACKAGE" != gettext-runtime \
-                && test "$PACKAGE" != gettext-tools; }; then
-          gt_use_preinstalled_gnugettext=yes
-        else
-          dnl Reset the values set by searching for libintl.
-          LIBINTL=
-          LTLIBINTL=
-          INCINTL=
-        fi
-
-    ifelse(gt_included_intl, yes, [
-        if test "$gt_use_preinstalled_gnugettext" != "yes"; then
-          dnl GNU gettext is not found in the C library.
-          dnl Fall back on included GNU gettext library.
-          nls_cv_use_gnu_gettext=yes
-        fi
-      fi
-
-      if test "$nls_cv_use_gnu_gettext" = "yes"; then
-        dnl Mark actions used to generate GNU NLS library.
-        BUILD_INCLUDED_LIBINTL=yes
-        USE_INCLUDED_LIBINTL=yes
-        LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV $LIBTHREAD"
-        LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD"
-        LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
-      fi
-
-      CATOBJEXT=
-      if test "$gt_use_preinstalled_gnugettext" = "yes" \
-         || test "$nls_cv_use_gnu_gettext" = "yes"; then
-        dnl Mark actions to use GNU gettext tools.
-        CATOBJEXT=.gmo
-      fi
-    ])
-
-    if test -n "$INTL_MACOSX_LIBS"; then
-      if test "$gt_use_preinstalled_gnugettext" = "yes" \
-         || test "$nls_cv_use_gnu_gettext" = "yes"; then
-        dnl Some extra flags are needed during linking.
-        LIBINTL="$LIBINTL $INTL_MACOSX_LIBS"
-        LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS"
-      fi
-    fi
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes" \
-       || test "$nls_cv_use_gnu_gettext" = "yes"; then
-      AC_DEFINE([ENABLE_NLS], [1],
-        [Define to 1 if translation of program messages to the user's native language
-   is requested.])
-    else
-      USE_NLS=no
-    fi
-  fi
-
-  AC_MSG_CHECKING([whether to use NLS])
-  AC_MSG_RESULT([$USE_NLS])
-  if test "$USE_NLS" = "yes"; then
-    AC_MSG_CHECKING([where the gettext function comes from])
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
-        gt_source="external libintl"
-      else
-        gt_source="libc"
-      fi
-    else
-      gt_source="included intl directory"
-    fi
-    AC_MSG_RESULT([$gt_source])
-  fi
-
-  if test "$USE_NLS" = "yes"; then
-
-    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
-      if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
-        AC_MSG_CHECKING([how to link with libintl])
-        AC_MSG_RESULT([$LIBINTL])
-        AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL])
-      fi
-
-      dnl For backward compatibility. Some packages may be using this.
-      AC_DEFINE([HAVE_GETTEXT], [1],
-       [Define if the GNU gettext() function is already present or preinstalled.])
-      AC_DEFINE([HAVE_DCGETTEXT], [1],
-       [Define if the GNU dcgettext() function is already present or preinstalled.])
-    fi
-
-    dnl We need to process the po/ directory.
-    POSUB=po
-  fi
-
-  ifelse(gt_included_intl, yes, [
-    dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
-    dnl to 'yes' because some of the testsuite requires it.
-    if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
-      BUILD_INCLUDED_LIBINTL=yes
-    fi
-
-    dnl Make all variables we use known to autoconf.
-    AC_SUBST([BUILD_INCLUDED_LIBINTL])
-    AC_SUBST([USE_INCLUDED_LIBINTL])
-    AC_SUBST([CATOBJEXT])
-
-    dnl For backward compatibility. Some configure.ins may be using this.
-    nls_cv_header_intl=
-    nls_cv_header_libgt=
-
-    dnl For backward compatibility. Some Makefiles may be using this.
-    DATADIRNAME=share
-    AC_SUBST([DATADIRNAME])
-
-    dnl For backward compatibility. Some Makefiles may be using this.
-    INSTOBJEXT=.mo
-    AC_SUBST([INSTOBJEXT])
-
-    dnl For backward compatibility. Some Makefiles may be using this.
-    GENCAT=gencat
-    AC_SUBST([GENCAT])
-
-    dnl For backward compatibility. Some Makefiles may be using this.
-    INTLOBJS=
-    if test "$USE_INCLUDED_LIBINTL" = yes; then
-      INTLOBJS="\$(GETTOBJS)"
-    fi
-    AC_SUBST([INTLOBJS])
-
-    dnl Enable libtool support if the surrounding package wishes it.
-    INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix
-    AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX])
-  ])
-
-  dnl For backward compatibility. Some Makefiles may be using this.
-  INTLLIBS="$LIBINTL"
-  AC_SUBST([INTLLIBS])
-
-  dnl Make all documented variables known to autoconf.
-  AC_SUBST([LIBINTL])
-  AC_SUBST([LTLIBINTL])
-  AC_SUBST([POSUB])
-])
-
-
-dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized.
-m4_define([gt_NEEDS_INIT],
-[
-  m4_divert_text([DEFAULTS], [gt_needs=])
-  m4_define([gt_NEEDS_INIT], [])
-])
-
-
-dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL])
-AC_DEFUN([AM_GNU_GETTEXT_NEED],
-[
-  m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"])
-])
-
-
-dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
-AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])
-
-
-dnl Usage: AM_GNU_GETTEXT_REQUIRE_VERSION([gettext-version])
-AC_DEFUN([AM_GNU_GETTEXT_REQUIRE_VERSION], [])
-
 dnl GLIB_GSETTINGS
 dnl Defines GSETTINGS_SCHEMAS_INSTALL which controls whether
 dnl the schema should be compiled
@@ -510,1548 +104,32 @@ m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])])
 ]
 )
 
-# iconv.m4 serial 19 (gettext-0.18.2)
-dnl Copyright (C) 2000-2002, 2007-2014 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl From Bruno Haible.
-
-AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
-[
-  dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
-  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
-  AC_REQUIRE([AC_LIB_RPATH])
-
-  dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
-  dnl accordingly.
-  AC_LIB_LINKFLAGS_BODY([iconv])
-])
-
-AC_DEFUN([AM_ICONV_LINK],
-[
-  dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
-  dnl those with the standalone portable GNU libiconv installed).
-  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
-
-  dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
-  dnl accordingly.
-  AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
-
-  dnl Add $INCICONV to CPPFLAGS before performing the following checks,
-  dnl because if the user has installed libiconv and not disabled its use
-  dnl via --without-libiconv-prefix, he wants to use it. The first
-  dnl AC_LINK_IFELSE will then fail, the second AC_LINK_IFELSE will succeed.
-  am_save_CPPFLAGS="$CPPFLAGS"
-  AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
-
-  AC_CACHE_CHECK([for iconv], [am_cv_func_iconv], [
-    am_cv_func_iconv="no, consider installing GNU libiconv"
-    am_cv_lib_iconv=no
-    AC_LINK_IFELSE(
-      [AC_LANG_PROGRAM(
-         [[
-#include <stdlib.h>
-#include <iconv.h>
-         ]],
-         [[iconv_t cd = iconv_open("","");
-           iconv(cd,NULL,NULL,NULL,NULL);
-           iconv_close(cd);]])],
-      [am_cv_func_iconv=yes])
-    if test "$am_cv_func_iconv" != yes; then
-      am_save_LIBS="$LIBS"
-      LIBS="$LIBS $LIBICONV"
-      AC_LINK_IFELSE(
-        [AC_LANG_PROGRAM(
-           [[
-#include <stdlib.h>
-#include <iconv.h>
-           ]],
-           [[iconv_t cd = iconv_open("","");
-             iconv(cd,NULL,NULL,NULL,NULL);
-             iconv_close(cd);]])],
-        [am_cv_lib_iconv=yes]
-        [am_cv_func_iconv=yes])
-      LIBS="$am_save_LIBS"
-    fi
-  ])
-  if test "$am_cv_func_iconv" = yes; then
-    AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [
-      dnl This tests against bugs in AIX 5.1, AIX 6.1..7.1, HP-UX 11.11,
-      dnl Solaris 10.
-      am_save_LIBS="$LIBS"
-      if test $am_cv_lib_iconv = yes; then
-        LIBS="$LIBS $LIBICONV"
-      fi
-      am_cv_func_iconv_works=no
-      for ac_iconv_const in '' 'const'; do
-        AC_RUN_IFELSE(
-          [AC_LANG_PROGRAM(
-             [[
-#include <iconv.h>
-#include <string.h>
-
-#ifndef ICONV_CONST
-# define ICONV_CONST $ac_iconv_const
-#endif
-             ]],
-             [[int result = 0;
-  /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
-     returns.  */
-  {
-    iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
-    if (cd_utf8_to_88591 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */
-        char buf[10];
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = strlen (input);
-        char *outptr = buf;
-        size_t outbytesleft = sizeof (buf);
-        size_t res = iconv (cd_utf8_to_88591,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if (res == 0)
-          result |= 1;
-        iconv_close (cd_utf8_to_88591);
-      }
-  }
-  /* Test against Solaris 10 bug: Failures are not distinguishable from
-     successful returns.  */
-  {
-    iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646");
-    if (cd_ascii_to_88591 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\263";
-        char buf[10];
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = strlen (input);
-        char *outptr = buf;
-        size_t outbytesleft = sizeof (buf);
-        size_t res = iconv (cd_ascii_to_88591,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if (res == 0)
-          result |= 2;
-        iconv_close (cd_ascii_to_88591);
-      }
-  }
-  /* Test against AIX 6.1..7.1 bug: Buffer overrun.  */
-  {
-    iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1");
-    if (cd_88591_to_utf8 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\304";
-        static char buf[2] = { (char)0xDE, (char)0xAD };
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = 1;
-        char *outptr = buf;
-        size_t outbytesleft = 1;
-        size_t res = iconv (cd_88591_to_utf8,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD)
-          result |= 4;
-        iconv_close (cd_88591_to_utf8);
-      }
-  }
-#if 0 /* This bug could be worked around by the caller.  */
-  /* Test against HP-UX 11.11 bug: Positive return value instead of 0.  */
-  {
-    iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
-    if (cd_88591_to_utf8 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
-        char buf[50];
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = strlen (input);
-        char *outptr = buf;
-        size_t outbytesleft = sizeof (buf);
-        size_t res = iconv (cd_88591_to_utf8,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if ((int)res > 0)
-          result |= 8;
-        iconv_close (cd_88591_to_utf8);
-      }
-  }
-#endif
-  /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
-     provided.  */
-  if (/* Try standardized names.  */
-      iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
-      /* Try IRIX, OSF/1 names.  */
-      && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
-      /* Try AIX names.  */
-      && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
-      /* Try HP-UX names.  */
-      && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
-    result |= 16;
-  return result;
-]])],
-          [am_cv_func_iconv_works=yes], ,
-          [case "$host_os" in
-             aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
-             *)            am_cv_func_iconv_works="guessing yes" ;;
-           esac])
-        test "$am_cv_func_iconv_works" = no || break
-      done
-      LIBS="$am_save_LIBS"
-    ])
-    case "$am_cv_func_iconv_works" in
-      *no) am_func_iconv=no am_cv_lib_iconv=no ;;
-      *)   am_func_iconv=yes ;;
-    esac
-  else
-    am_func_iconv=no am_cv_lib_iconv=no
-  fi
-  if test "$am_func_iconv" = yes; then
-    AC_DEFINE([HAVE_ICONV], [1],
-      [Define if you have the iconv() function and it works.])
-  fi
-  if test "$am_cv_lib_iconv" = yes; then
-    AC_MSG_CHECKING([how to link with libiconv])
-    AC_MSG_RESULT([$LIBICONV])
-  else
-    dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
-    dnl either.
-    CPPFLAGS="$am_save_CPPFLAGS"
-    LIBICONV=
-    LTLIBICONV=
-  fi
-  AC_SUBST([LIBICONV])
-  AC_SUBST([LTLIBICONV])
-])
-
-dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to
-dnl avoid warnings like
-dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required".
-dnl This is tricky because of the way 'aclocal' is implemented:
-dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN.
-dnl   Otherwise aclocal's initial scan pass would miss the macro definition.
-dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions.
-dnl   Otherwise aclocal would emit many "Use of uninitialized value $1"
-dnl   warnings.
-m4_define([gl_iconv_AC_DEFUN],
-  m4_version_prereq([2.64],
-    [[AC_DEFUN_ONCE(
-        [$1], [$2])]],
-    [m4_ifdef([gl_00GNULIB],
-       [[AC_DEFUN_ONCE(
-           [$1], [$2])]],
-       [[AC_DEFUN(
-           [$1], [$2])]])]))
-gl_iconv_AC_DEFUN([AM_ICONV],
-[
-  AM_ICONV_LINK
-  if test "$am_cv_func_iconv" = yes; then
-    AC_MSG_CHECKING([for iconv declaration])
-    AC_CACHE_VAL([am_cv_proto_iconv], [
-      AC_COMPILE_IFELSE(
-        [AC_LANG_PROGRAM(
-           [[
-#include <stdlib.h>
-#include <iconv.h>
-extern
-#ifdef __cplusplus
-"C"
-#endif
-#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus)
-size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
-#else
-size_t iconv();
-#endif
-           ]],
-           [[]])],
-        [am_cv_proto_iconv_arg1=""],
-        [am_cv_proto_iconv_arg1="const"])
-      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
-    am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
-    AC_MSG_RESULT([
-         $am_cv_proto_iconv])
-    AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1],
-      [Define as const if the declaration of iconv() needs const.])
-    dnl Also substitute ICONV_CONST in the gnulib generated <iconv.h>.
-    m4_ifdef([gl_ICONV_H_DEFAULTS],
-      [AC_REQUIRE([gl_ICONV_H_DEFAULTS])
-       if test -n "$am_cv_proto_iconv_arg1"; then
-         ICONV_CONST="const"
-       fi
-      ])
-  fi
-])
-
-# intlmacosx.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2004-2014 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-dnl
-dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
-dnl License but which still want to provide support for the GNU gettext
-dnl functionality.
-dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
-dnl gettext package is covered by the GNU General Public License.
-dnl They are *not* in the public domain.
-
-dnl Checks for special options needed on Mac OS X.
-dnl Defines INTL_MACOSX_LIBS.
-AC_DEFUN([gt_INTL_MACOSX],
-[
-  dnl Check for API introduced in Mac OS X 10.2.
-  AC_CACHE_CHECK([for CFPreferencesCopyAppValue],
-    [gt_cv_func_CFPreferencesCopyAppValue],
-    [gt_save_LIBS="$LIBS"
-     LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
-     AC_LINK_IFELSE(
-       [AC_LANG_PROGRAM(
-          [[#include <CoreFoundation/CFPreferences.h>]],
-          [[CFPreferencesCopyAppValue(NULL, NULL)]])],
-       [gt_cv_func_CFPreferencesCopyAppValue=yes],
-       [gt_cv_func_CFPreferencesCopyAppValue=no])
-     LIBS="$gt_save_LIBS"])
-  if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
-    AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], [1],
-      [Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
-  fi
-  dnl Check for API introduced in Mac OS X 10.3.
-  AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent],
-    [gt_save_LIBS="$LIBS"
-     LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
-     AC_LINK_IFELSE(
-       [AC_LANG_PROGRAM(
-          [[#include <CoreFoundation/CFLocale.h>]],
-          [[CFLocaleCopyCurrent();]])],
-       [gt_cv_func_CFLocaleCopyCurrent=yes],
-       [gt_cv_func_CFLocaleCopyCurrent=no])
-     LIBS="$gt_save_LIBS"])
-  if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
-    AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], [1],
-      [Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
-  fi
-  INTL_MACOSX_LIBS=
-  if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
-    INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
-  fi
-  AC_SUBST([INTL_MACOSX_LIBS])
-])
-
-# lib-ld.m4 serial 6
-dnl Copyright (C) 1996-2003, 2009-2015 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl Subroutines of libtool.m4,
-dnl with replacements s/_*LT_PATH/AC_LIB_PROG/ and s/lt_/acl_/ to avoid
-dnl collision with libtool.m4.
-
-dnl From libtool-2.4. Sets the variable with_gnu_ld to yes or no.
-AC_DEFUN([AC_LIB_PROG_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], [acl_cv_prog_gnu_ld],
-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
-  acl_cv_prog_gnu_ld=yes
-  ;;
-*)
-  acl_cv_prog_gnu_ld=no
-  ;;
-esac])
-with_gnu_ld=$acl_cv_prog_gnu_ld
-])
-
-dnl From libtool-2.4. Sets the variable LD.
-AC_DEFUN([AC_LIB_PROG_LD],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])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],
-    [with_gnu_ld=no])dnl
-
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  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
-
-ac_prog=ld
-if test "$GCC" = yes; 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
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [[\\/]]* | ?:[[\\/]]*)
-      re_direlt='/[[^/]][[^/]]*/\.\./'
-      # Canonicalize the pathname of ld
-      ac_prog=`echo "$ac_prog"| sed 's%\\\\%/%g'`
-      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"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  AC_MSG_CHECKING([for GNU ld])
-else
-  AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL([acl_cv_path_LD],
-[if test -z "$LD"; then
-  acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  for ac_dir in $PATH; do
-    IFS="$acl_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      acl_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 `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
-      *GNU* | *'with BFD'*)
-        test "$with_gnu_ld" != no && break
-        ;;
-      *)
-        test "$with_gnu_ld" != yes && break
-        ;;
-      esac
-    fi
-  done
-  IFS="$acl_save_ifs"
-else
-  acl_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$acl_cv_path_LD"
-if test -n "$LD"; then
-  AC_MSG_RESULT([$LD])
-else
-  AC_MSG_RESULT([no])
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-AC_LIB_PROG_LD_GNU
-])
-
-# lib-link.m4 serial 26 (gettext-0.18.2)
-dnl Copyright (C) 2001-2015 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl From Bruno Haible.
-
-AC_PREREQ([2.54])
-
-dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
-dnl the libraries corresponding to explicit and implicit dependencies.
-dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
-dnl augments the CPPFLAGS variable.
-dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
-dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
-AC_DEFUN([AC_LIB_LINKFLAGS],
-[
-  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
-  AC_REQUIRE([AC_LIB_RPATH])
-  pushdef([Name],[m4_translit([$1],[./+-], [____])])
-  pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
-  AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
-    AC_LIB_LINKFLAGS_BODY([$1], [$2])
-    ac_cv_lib[]Name[]_libs="$LIB[]NAME"
-    ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
-    ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
-    ac_cv_lib[]Name[]_prefix="$LIB[]NAME[]_PREFIX"
-  ])
-  LIB[]NAME="$ac_cv_lib[]Name[]_libs"
-  LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
-  INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
-  LIB[]NAME[]_PREFIX="$ac_cv_lib[]Name[]_prefix"
-  AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
-  AC_SUBST([LIB]NAME)
-  AC_SUBST([LTLIB]NAME)
-  AC_SUBST([LIB]NAME[_PREFIX])
-  dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
-  dnl results of this search when this library appears as a dependency.
-  HAVE_LIB[]NAME=yes
-  popdef([NAME])
-  popdef([Name])
-])
-
-dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode, [missing-message])
-dnl searches for libname and the libraries corresponding to explicit and
-dnl implicit dependencies, together with the specified include files and
-dnl the ability to compile and link the specified testcode. The missing-message
-dnl defaults to 'no' and may contain additional hints for the user.
-dnl If found, it sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME}
-dnl and LTLIB${NAME} variables and augments the CPPFLAGS variable, and
-dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
-dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
-dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
-dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
-AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
-[
-  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
-  AC_REQUIRE([AC_LIB_RPATH])
-  pushdef([Name],[m4_translit([$1],[./+-], [____])])
-  pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
-
-  dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
-  dnl accordingly.
-  AC_LIB_LINKFLAGS_BODY([$1], [$2])
-
-  dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
-  dnl because if the user has installed lib[]Name and not disabled its use
-  dnl via --without-lib[]Name-prefix, he wants to use it.
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
-
-  AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
-    ac_save_LIBS="$LIBS"
-    dnl If $LIB[]NAME contains some -l options, add it to the end of LIBS,
-    dnl because these -l options might require -L options that are present in
-    dnl LIBS. -l options benefit only from the -L options listed before it.
-    dnl Otherwise, add it to the front of LIBS, because it may be a static
-    dnl library that depends on another static library that is present in LIBS.
-    dnl Static libraries benefit only from the static libraries listed after
-    dnl it.
-    case " $LIB[]NAME" in
-      *" -l"*) LIBS="$LIBS $LIB[]NAME" ;;
-      *)       LIBS="$LIB[]NAME $LIBS" ;;
-    esac
-    AC_LINK_IFELSE(
-      [AC_LANG_PROGRAM([[$3]], [[$4]])],
-      [ac_cv_lib[]Name=yes],
-      [ac_cv_lib[]Name='m4_if([$5], [], [no], [[$5]])'])
-    LIBS="$ac_save_LIBS"
-  ])
-  if test "$ac_cv_lib[]Name" = yes; then
-    HAVE_LIB[]NAME=yes
-    AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the lib][$1 library.])
-    AC_MSG_CHECKING([how to link with lib[]$1])
-    AC_MSG_RESULT([$LIB[]NAME])
-  else
-    HAVE_LIB[]NAME=no
-    dnl If $LIB[]NAME didn't lead to a usable library, we don't need
-    dnl $INC[]NAME either.
-    CPPFLAGS="$ac_save_CPPFLAGS"
-    LIB[]NAME=
-    LTLIB[]NAME=
-    LIB[]NAME[]_PREFIX=
-  fi
-  AC_SUBST([HAVE_LIB]NAME)
-  AC_SUBST([LIB]NAME)
-  AC_SUBST([LTLIB]NAME)
-  AC_SUBST([LIB]NAME[_PREFIX])
-  popdef([NAME])
-  popdef([Name])
-])
-
-dnl Determine the platform dependent parameters needed to use rpath:
-dnl   acl_libext,
-dnl   acl_shlibext,
-dnl   acl_libname_spec,
-dnl   acl_library_names_spec,
-dnl   acl_hardcode_libdir_flag_spec,
-dnl   acl_hardcode_libdir_separator,
-dnl   acl_hardcode_direct,
-dnl   acl_hardcode_minus_L.
-AC_DEFUN([AC_LIB_RPATH],
-[
-  dnl Tell automake >= 1.10 to complain if config.rpath is missing.
-  m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])])
-  AC_REQUIRE([AC_PROG_CC])                dnl we use $CC, $GCC, $LDFLAGS
-  AC_REQUIRE([AC_LIB_PROG_LD])            dnl we use $LD, $with_gnu_ld
-  AC_REQUIRE([AC_CANONICAL_HOST])         dnl we use $host
-  AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
-  AC_CACHE_CHECK([for shared library run path origin], [acl_cv_rpath], [
-    CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
-    ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
-    . ./conftest.sh
-    rm -f ./conftest.sh
-    acl_cv_rpath=done
-  ])
-  wl="$acl_cv_wl"
-  acl_libext="$acl_cv_libext"
-  acl_shlibext="$acl_cv_shlibext"
-  acl_libname_spec="$acl_cv_libname_spec"
-  acl_library_names_spec="$acl_cv_library_names_spec"
-  acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
-  acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
-  acl_hardcode_direct="$acl_cv_hardcode_direct"
-  acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
-  dnl Determine whether the user wants rpath handling at all.
-  AC_ARG_ENABLE([rpath],
-    [  --disable-rpath         do not hardcode runtime library paths],
-    :, enable_rpath=yes)
-])
-
-dnl AC_LIB_FROMPACKAGE(name, package)
-dnl declares that libname comes from the given package. The configure file
-dnl will then not have a --with-libname-prefix option but a
-dnl --with-package-prefix option. Several libraries can come from the same
-dnl package. This declaration must occur before an AC_LIB_LINKFLAGS or similar
-dnl macro call that searches for libname.
-AC_DEFUN([AC_LIB_FROMPACKAGE],
-[
-  pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
-  define([acl_frompackage_]NAME, [$2])
-  popdef([NAME])
-  pushdef([PACK],[$2])
-  pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-],
-                                     [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
-  define([acl_libsinpackage_]PACKUP,
-    m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[, ]],)[lib$1])
-  popdef([PACKUP])
-  popdef([PACK])
-])
-
-dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
-dnl the libraries corresponding to explicit and implicit dependencies.
-dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
-dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found
-dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
-AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
-[
-  AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
-  pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
-  pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])])
-  pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-],
-                                     [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
-  pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])])
-  dnl Autoconf >= 2.61 supports dots in --with options.
-  pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[m4_translit(PACK,[.],[_])],PACK)])
-  dnl By default, look in $includedir and $libdir.
-  use_additional=yes
-  AC_LIB_WITH_FINAL_PREFIX([
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  ])
-  AC_ARG_WITH(P_A_C_K[-prefix],
-[[  --with-]]P_A_C_K[[-prefix[=DIR]  search for ]PACKLIBS[ in DIR/include and DIR/lib
-  --without-]]P_A_C_K[[-prefix     don't search for ]PACKLIBS[ in includedir and libdir]],
-[
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        AC_LIB_WITH_FINAL_PREFIX([
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        ])
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/$acl_libdirstem"
-        if test "$acl_libdirstem2" != "$acl_libdirstem" \
-           && ! test -d "$withval/$acl_libdirstem"; then
-          additional_libdir="$withval/$acl_libdirstem2"
-        fi
-      fi
-    fi
-])
-  dnl Search the library and its dependencies in $additional_libdir and
-  dnl $LDFLAGS. Using breadth-first-seach.
-  LIB[]NAME=
-  LTLIB[]NAME=
-  INC[]NAME=
-  LIB[]NAME[]_PREFIX=
-  dnl HAVE_LIB${NAME} is an indicator that LIB${NAME}, LTLIB${NAME} have been
-  dnl computed. So it has to be reset here.
-  HAVE_LIB[]NAME=
-  rpathdirs=
-  ltrpathdirs=
-  names_already_handled=
-  names_next_round='$1 $2'
-  while test -n "$names_next_round"; do
-    names_this_round="$names_next_round"
-    names_next_round=
-    for name in $names_this_round; do
-      already_handled=
-      for n in $names_already_handled; do
-        if test "$n" = "$name"; then
-          already_handled=yes
-          break
-        fi
-      done
-      if test -z "$already_handled"; then
-        names_already_handled="$names_already_handled $name"
-        dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
-        dnl or AC_LIB_HAVE_LINKFLAGS call.
-        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'`
-        eval value=\"\$HAVE_LIB$uppername\"
-        if test -n "$value"; then
-          if test "$value" = yes; then
-            eval value=\"\$LIB$uppername\"
-            test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
-            eval value=\"\$LTLIB$uppername\"
-            test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
-          else
-            dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
-            dnl that this library doesn't exist. So just drop it.
-            :
-          fi
-        else
-          dnl Search the library lib$name in $additional_libdir and $LDFLAGS
-          dnl and the already constructed $LIBNAME/$LTLIBNAME.
-          found_dir=
-          found_la=
-          found_so=
-          found_a=
-          eval libname=\"$acl_libname_spec\"    # typically: libname=lib$name
-          if test -n "$acl_shlibext"; then
-            shrext=".$acl_shlibext"             # typically: shrext=.so
-          else
-            shrext=
-          fi
-          if test $use_additional = yes; then
-            dir="$additional_libdir"
-            dnl The same code as in the loop below:
-            dnl First look for a shared library.
-            if test -n "$acl_shlibext"; then
-              if test -f "$dir/$libname$shrext"; then
-                found_dir="$dir"
-                found_so="$dir/$libname$shrext"
-              else
-                if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
-                  ver=`(cd "$dir" && \
-                        for f in "$libname$shrext".*; do echo "$f"; done \
-                        | sed -e "s,^$libname$shrext\\\\.,," \
-                        | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
-                        | sed 1q ) 2>/dev/null`
-                  if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
-                    found_dir="$dir"
-                    found_so="$dir/$libname$shrext.$ver"
-                  fi
-                else
-                  eval library_names=\"$acl_library_names_spec\"
-                  for f in $library_names; do
-                    if test -f "$dir/$f"; then
-                      found_dir="$dir"
-                      found_so="$dir/$f"
-                      break
-                    fi
-                  done
-                fi
-              fi
-            fi
-            dnl Then look for a static library.
-            if test "X$found_dir" = "X"; then
-              if test -f "$dir/$libname.$acl_libext"; then
-                found_dir="$dir"
-                found_a="$dir/$libname.$acl_libext"
-              fi
-            fi
-            if test "X$found_dir" != "X"; then
-              if test -f "$dir/$libname.la"; then
-                found_la="$dir/$libname.la"
-              fi
-            fi
-          fi
-          if test "X$found_dir" = "X"; then
-            for x in $LDFLAGS $LTLIB[]NAME; do
-              AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-              case "$x" in
-                -L*)
-                  dir=`echo "X$x" | sed -e 's/^X-L//'`
-                  dnl First look for a shared library.
-                  if test -n "$acl_shlibext"; then
-                    if test -f "$dir/$libname$shrext"; then
-                      found_dir="$dir"
-                      found_so="$dir/$libname$shrext"
-                    else
-                      if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
-                        ver=`(cd "$dir" && \
-                              for f in "$libname$shrext".*; do echo "$f"; done \
-                              | sed -e "s,^$libname$shrext\\\\.,," \
-                              | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
-                              | sed 1q ) 2>/dev/null`
-                        if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
-                          found_dir="$dir"
-                          found_so="$dir/$libname$shrext.$ver"
-                        fi
-                      else
-                        eval library_names=\"$acl_library_names_spec\"
-                        for f in $library_names; do
-                          if test -f "$dir/$f"; then
-                            found_dir="$dir"
-                            found_so="$dir/$f"
-                            break
-                          fi
-                        done
-                      fi
-                    fi
-                  fi
-                  dnl Then look for a static library.
-                  if test "X$found_dir" = "X"; then
-                    if test -f "$dir/$libname.$acl_libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/$libname.$acl_libext"
-                    fi
-                  fi
-                  if test "X$found_dir" != "X"; then
-                    if test -f "$dir/$libname.la"; then
-                      found_la="$dir/$libname.la"
-                    fi
-                  fi
-                  ;;
-              esac
-              if test "X$found_dir" != "X"; then
-                break
-              fi
-            done
-          fi
-          if test "X$found_dir" != "X"; then
-            dnl Found the library.
-            LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
-            if test "X$found_so" != "X"; then
-              dnl Linking with a shared library. We attempt to hardcode its
-              dnl directory into the executable's runpath, unless it's the
-              dnl standard /usr/lib.
-              if test "$enable_rpath" = no \
-                 || test "X$found_dir" = "X/usr/$acl_libdirstem" \
-                 || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
-                dnl No hardcoding is needed.
-                LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
-              else
-                dnl Use an explicit option to hardcode DIR into the resulting
-                dnl binary.
-                dnl Potentially add DIR to ltrpathdirs.
-                dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
-                haveit=
-                for x in $ltrpathdirs; do
-                  if test "X$x" = "X$found_dir"; then
-                    haveit=yes
-                    break
-                  fi
-                done
-                if test -z "$haveit"; then
-                  ltrpathdirs="$ltrpathdirs $found_dir"
-                fi
-                dnl The hardcoding into $LIBNAME is system dependent.
-                if test "$acl_hardcode_direct" = yes; then
-                  dnl Using DIR/libNAME.so during linking hardcodes DIR into the
-                  dnl resulting binary.
-                  LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
-                else
-                  if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
-                    dnl Use an explicit option to hardcode DIR into the resulting
-                    dnl binary.
-                    LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
-                    dnl Potentially add DIR to rpathdirs.
-                    dnl The rpathdirs will be appended to $LIBNAME at the end.
-                    haveit=
-                    for x in $rpathdirs; do
-                      if test "X$x" = "X$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      rpathdirs="$rpathdirs $found_dir"
-                    fi
-                  else
-                    dnl Rely on "-L$found_dir".
-                    dnl But don't add it if it's already contained in the LDFLAGS
-                    dnl or the already constructed $LIBNAME
-                    haveit=
-                    for x in $LDFLAGS $LIB[]NAME; do
-                      AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-                      if test "X$x" = "X-L$found_dir"; then
-                        haveit=yes
-                        break
-                      fi
-                    done
-                    if test -z "$haveit"; then
-                      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
-                    fi
-                    if test "$acl_hardcode_minus_L" != no; then
-                      dnl FIXME: Not sure whether we should use
-                      dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
-                      dnl here.
-                      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
-                    else
-                      dnl We cannot use $acl_hardcode_runpath_var and LD_RUN_PATH
-                      dnl here, because this doesn't fit in flags passed to the
-                      dnl compiler. So give up. No hardcoding. This affects only
-                      dnl very old systems.
-                      dnl FIXME: Not sure whether we should use
-                      dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
-                      dnl here.
-                      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
-                    fi
-                  fi
-                fi
-              fi
-            else
-              if test "X$found_a" != "X"; then
-                dnl Linking with a static library.
-                LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
-              else
-                dnl We shouldn't come here, but anyway it's good to have a
-                dnl fallback.
-                LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
-              fi
-            fi
-            dnl Assume the include files are nearby.
-            additional_includedir=
-            case "$found_dir" in
-              */$acl_libdirstem | */$acl_libdirstem/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
-                if test "$name" = '$1'; then
-                  LIB[]NAME[]_PREFIX="$basedir"
-                fi
-                additional_includedir="$basedir/include"
-                ;;
-              */$acl_libdirstem2 | */$acl_libdirstem2/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'`
-                if test "$name" = '$1'; then
-                  LIB[]NAME[]_PREFIX="$basedir"
-                fi
-                additional_includedir="$basedir/include"
-                ;;
-            esac
-            if test "X$additional_includedir" != "X"; then
-              dnl Potentially add $additional_includedir to $INCNAME.
-              dnl But don't add it
-              dnl   1. if it's the standard /usr/include,
-              dnl   2. if it's /usr/local/include and we are using GCC on Linux,
-              dnl   3. if it's already present in $CPPFLAGS or the already
-              dnl      constructed $INCNAME,
-              dnl   4. if it doesn't exist as a directory.
-              if test "X$additional_includedir" != "X/usr/include"; then
-                haveit=
-                if test "X$additional_includedir" = "X/usr/local/include"; then
-                  if test -n "$GCC"; then
-                    case $host_os in
-                      linux* | gnu* | k*bsd*-gnu) haveit=yes;;
-                    esac
-                  fi
-                fi
-                if test -z "$haveit"; then
-                  for x in $CPPFLAGS $INC[]NAME; do
-                    AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-                    if test "X$x" = "X-I$additional_includedir"; then
-                      haveit=yes
-                      break
-                    fi
-                  done
-                  if test -z "$haveit"; then
-                    if test -d "$additional_includedir"; then
-                      dnl Really add $additional_includedir to $INCNAME.
-                      INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir"
-                    fi
-                  fi
-                fi
-              fi
-            fi
-            dnl Look for dependencies.
-            if test -n "$found_la"; then
-              dnl Read the .la file. It defines the variables
-              dnl dlname, library_names, old_library, dependency_libs, current,
-              dnl age, revision, installed, dlopen, dlpreopen, libdir.
-              save_libdir="$libdir"
-              case "$found_la" in
-                */* | *\\*) . "$found_la" ;;
-                *) . "./$found_la" ;;
-              esac
-              libdir="$save_libdir"
-              dnl We use only dependency_libs.
-              for dep in $dependency_libs; do
-                case "$dep" in
-                  -L*)
-                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                    dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
-                    dnl But don't add it
-                    dnl   1. if it's the standard /usr/lib,
-                    dnl   2. if it's /usr/local/lib and we are using GCC on Linux,
-                    dnl   3. if it's already present in $LDFLAGS or the already
-                    dnl      constructed $LIBNAME,
-                    dnl   4. if it doesn't exist as a directory.
-                    if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
-                       && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
-                      haveit=
-                      if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
-                         || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
-                        if test -n "$GCC"; then
-                          case $host_os in
-                            linux* | gnu* | k*bsd*-gnu) haveit=yes;;
-                          esac
-                        fi
-                      fi
-                      if test -z "$haveit"; then
-                        haveit=
-                        for x in $LDFLAGS $LIB[]NAME; do
-                          AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                            dnl Really add $additional_libdir to $LIBNAME.
-                            LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
-                          fi
-                        fi
-                        haveit=
-                        for x in $LDFLAGS $LTLIB[]NAME; do
-                          AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-                          if test "X$x" = "X-L$additional_libdir"; then
-                            haveit=yes
-                            break
-                          fi
-                        done
-                        if test -z "$haveit"; then
-                          if test -d "$additional_libdir"; then
-                            dnl Really add $additional_libdir to $LTLIBNAME.
-                            LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
-                          fi
-                        fi
-                      fi
-                    fi
-                    ;;
-                  -R*)
-                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
-                    if test "$enable_rpath" != no; then
-                      dnl Potentially add DIR to rpathdirs.
-                      dnl The rpathdirs will be appended to $LIBNAME at the end.
-                      haveit=
-                      for x in $rpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        rpathdirs="$rpathdirs $dir"
-                      fi
-                      dnl Potentially add DIR to ltrpathdirs.
-                      dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
-                      haveit=
-                      for x in $ltrpathdirs; do
-                        if test "X$x" = "X$dir"; then
-                          haveit=yes
-                          break
-                        fi
-                      done
-                      if test -z "$haveit"; then
-                        ltrpathdirs="$ltrpathdirs $dir"
-                      fi
-                    fi
-                    ;;
-                  -l*)
-                    dnl Handle this in the next round.
-                    names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
-                    ;;
-                  *.la)
-                    dnl Handle this in the next round. Throw away the .la's
-                    dnl directory; it is already contained in a preceding -L
-                    dnl option.
-                    names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
-                    ;;
-                  *)
-                    dnl Most likely an immediate library name.
-                    LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
-                    LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
-                    ;;
-                esac
-              done
-            fi
-          else
-            dnl Didn't find the library; assume it is in the system directories
-            dnl known to the linker and runtime loader. (All the system
-            dnl directories known to the linker should also be known to the
-            dnl runtime loader, otherwise the system is severely misconfigured.)
-            LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
-            LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
-          fi
-        fi
-      fi
-    done
-  done
-  if test "X$rpathdirs" != "X"; then
-    if test -n "$acl_hardcode_libdir_separator"; then
-      dnl Weird platform: only the last -rpath option counts, the user must
-      dnl pass all path elements in one option. We can arrange that for a
-      dnl single library, but not when more than one $LIBNAMEs are used.
-      alldirs=
-      for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
-      done
-      dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl.
-      acl_save_libdir="$libdir"
-      libdir="$alldirs"
-      eval flag=\"$acl_hardcode_libdir_flag_spec\"
-      libdir="$acl_save_libdir"
-      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
-    else
-      dnl The -rpath options are cumulative.
-      for found_dir in $rpathdirs; do
-        acl_save_libdir="$libdir"
-        libdir="$found_dir"
-        eval flag=\"$acl_hardcode_libdir_flag_spec\"
-        libdir="$acl_save_libdir"
-        LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
-      done
-    fi
-  fi
-  if test "X$ltrpathdirs" != "X"; then
-    dnl When using libtool, the option that works for both libraries and
-    dnl executables is -R. The -R options are cumulative.
-    for found_dir in $ltrpathdirs; do
-      LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
-    done
-  fi
-  popdef([P_A_C_K])
-  popdef([PACKLIBS])
-  popdef([PACKUP])
-  popdef([PACK])
-  popdef([NAME])
-])
-
-dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
-dnl unless already present in VAR.
-dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
-dnl contains two or three consecutive elements that belong together.
-AC_DEFUN([AC_LIB_APPENDTOVAR],
-[
-  for element in [$2]; do
-    haveit=
-    for x in $[$1]; do
-      AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-      if test "X$x" = "X$element"; then
-        haveit=yes
-        break
-      fi
-    done
-    if test -z "$haveit"; then
-      [$1]="${[$1]}${[$1]:+ }$element"
-    fi
-  done
-])
-
-dnl For those cases where a variable contains several -L and -l options
-dnl referring to unknown libraries and directories, this macro determines the
-dnl necessary additional linker options for the runtime path.
-dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL])
-dnl sets LDADDVAR to linker options needed together with LIBSVALUE.
-dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed,
-dnl otherwise linking without libtool is assumed.
-AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
-[
-  AC_REQUIRE([AC_LIB_RPATH])
-  AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
-  $1=
-  if test "$enable_rpath" != no; then
-    if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
-      dnl Use an explicit option to hardcode directories into the resulting
-      dnl binary.
-      rpathdirs=
-      next=
-      for opt in $2; do
-        if test -n "$next"; then
-          dir="$next"
-          dnl No need to hardcode the standard /usr/lib.
-          if test "X$dir" != "X/usr/$acl_libdirstem" \
-             && test "X$dir" != "X/usr/$acl_libdirstem2"; then
-            rpathdirs="$rpathdirs $dir"
-          fi
-          next=
-        else
-          case $opt in
-            -L) next=yes ;;
-            -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'`
-                 dnl No need to hardcode the standard /usr/lib.
-                 if test "X$dir" != "X/usr/$acl_libdirstem" \
-                    && test "X$dir" != "X/usr/$acl_libdirstem2"; then
-                   rpathdirs="$rpathdirs $dir"
-                 fi
-                 next= ;;
-            *) next= ;;
-          esac
-        fi
-      done
-      if test "X$rpathdirs" != "X"; then
-        if test -n ""$3""; then
-          dnl libtool is used for linking. Use -R options.
-          for dir in $rpathdirs; do
-            $1="${$1}${$1:+ }-R$dir"
-          done
-        else
-          dnl The linker is used for linking directly.
-          if test -n "$acl_hardcode_libdir_separator"; then
-            dnl Weird platform: only the last -rpath option counts, the user
-            dnl must pass all path elements in one option.
-            alldirs=
-            for dir in $rpathdirs; do
-              alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir"
-            done
-            acl_save_libdir="$libdir"
-            libdir="$alldirs"
-            eval flag=\"$acl_hardcode_libdir_flag_spec\"
-            libdir="$acl_save_libdir"
-            $1="$flag"
-          else
-            dnl The -rpath options are cumulative.
-            for dir in $rpathdirs; do
-              acl_save_libdir="$libdir"
-              libdir="$dir"
-              eval flag=\"$acl_hardcode_libdir_flag_spec\"
-              libdir="$acl_save_libdir"
-              $1="${$1}${$1:+ }$flag"
-            done
-          fi
-        fi
-      fi
-    fi
-  fi
-  AC_SUBST([$1])
-])
-
-# lib-prefix.m4 serial 7 (gettext-0.18)
-dnl Copyright (C) 2001-2005, 2008-2015 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl From Bruno Haible.
-
-dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and
-dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't
-dnl require excessive bracketing.
-ifdef([AC_HELP_STRING],
-[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])],
-[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])])
-
-dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
-dnl to access previously installed libraries. The basic assumption is that
-dnl a user will want packages to use other packages he previously installed
-dnl with the same --prefix option.
-dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate
-dnl libraries, but is otherwise very convenient.
-AC_DEFUN([AC_LIB_PREFIX],
-[
-  AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
-  AC_REQUIRE([AC_PROG_CC])
-  AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
-  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
-  dnl By default, look in $includedir and $libdir.
-  use_additional=yes
-  AC_LIB_WITH_FINAL_PREFIX([
-    eval additional_includedir=\"$includedir\"
-    eval additional_libdir=\"$libdir\"
-  ])
-  AC_LIB_ARG_WITH([lib-prefix],
-[  --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
-  --without-lib-prefix    don't search for libraries in includedir and libdir],
-[
-    if test "X$withval" = "Xno"; then
-      use_additional=no
-    else
-      if test "X$withval" = "X"; then
-        AC_LIB_WITH_FINAL_PREFIX([
-          eval additional_includedir=\"$includedir\"
-          eval additional_libdir=\"$libdir\"
-        ])
-      else
-        additional_includedir="$withval/include"
-        additional_libdir="$withval/$acl_libdirstem"
-      fi
-    fi
-])
-  if test $use_additional = yes; then
-    dnl Potentially add $additional_includedir to $CPPFLAGS.
-    dnl But don't add it
-    dnl   1. if it's the standard /usr/include,
-    dnl   2. if it's already present in $CPPFLAGS,
-    dnl   3. if it's /usr/local/include and we are using GCC on Linux,
-    dnl   4. if it doesn't exist as a directory.
-    if test "X$additional_includedir" != "X/usr/include"; then
-      haveit=
-      for x in $CPPFLAGS; do
-        AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-        if test "X$x" = "X-I$additional_includedir"; then
-          haveit=yes
-          break
-        fi
-      done
-      if test -z "$haveit"; then
-        if test "X$additional_includedir" = "X/usr/local/include"; then
-          if test -n "$GCC"; then
-            case $host_os in
-              linux* | gnu* | k*bsd*-gnu) haveit=yes;;
-            esac
-          fi
-        fi
-        if test -z "$haveit"; then
-          if test -d "$additional_includedir"; then
-            dnl Really add $additional_includedir to $CPPFLAGS.
-            CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir"
-          fi
-        fi
-      fi
-    fi
-    dnl Potentially add $additional_libdir to $LDFLAGS.
-    dnl But don't add it
-    dnl   1. if it's the standard /usr/lib,
-    dnl   2. if it's already present in $LDFLAGS,
-    dnl   3. if it's /usr/local/lib and we are using GCC on Linux,
-    dnl   4. if it doesn't exist as a directory.
-    if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
-      haveit=
-      for x in $LDFLAGS; do
-        AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
-        if test "X$x" = "X-L$additional_libdir"; then
-          haveit=yes
-          break
-        fi
-      done
-      if test -z "$haveit"; then
-        if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
-          if test -n "$GCC"; then
-            case $host_os in
-              linux*) haveit=yes;;
-            esac
-          fi
-        fi
-        if test -z "$haveit"; then
-          if test -d "$additional_libdir"; then
-            dnl Really add $additional_libdir to $LDFLAGS.
-            LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir"
-          fi
-        fi
-      fi
-    fi
-  fi
-])
-
-dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix,
-dnl acl_final_exec_prefix, containing the values to which $prefix and
-dnl $exec_prefix will expand at the end of the configure script.
-AC_DEFUN([AC_LIB_PREPARE_PREFIX],
-[
-  dnl Unfortunately, prefix and exec_prefix get only finally determined
-  dnl at the end of configure.
-  if test "X$prefix" = "XNONE"; then
-    acl_final_prefix="$ac_default_prefix"
-  else
-    acl_final_prefix="$prefix"
-  fi
-  if test "X$exec_prefix" = "XNONE"; then
-    acl_final_exec_prefix='${prefix}'
-  else
-    acl_final_exec_prefix="$exec_prefix"
-  fi
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
-  prefix="$acl_save_prefix"
-])
-
-dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the
-dnl variables prefix and exec_prefix bound to the values they will have
-dnl at the end of the configure script.
-AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
-[
-  acl_save_prefix="$prefix"
-  prefix="$acl_final_prefix"
-  acl_save_exec_prefix="$exec_prefix"
-  exec_prefix="$acl_final_exec_prefix"
-  $1
-  exec_prefix="$acl_save_exec_prefix"
-  prefix="$acl_save_prefix"
-])
-
-dnl AC_LIB_PREPARE_MULTILIB creates
-dnl - a variable acl_libdirstem, containing the basename of the libdir, either
-dnl   "lib" or "lib64" or "lib/64",
-dnl - a variable acl_libdirstem2, as a secondary possible value for
-dnl   acl_libdirstem, either the same as acl_libdirstem or "lib/sparcv9" or
-dnl   "lib/amd64".
-AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
-[
-  dnl There is no formal standard regarding lib and lib64.
-  dnl On glibc systems, the current practice is that on a system supporting
-  dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
-  dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. We determine
-  dnl the compiler's default mode by looking at the compiler's library search
-  dnl path. If at least one of its elements ends in /lib64 or points to a
-  dnl directory whose absolute pathname ends in /lib64, we assume a 64-bit ABI.
-  dnl Otherwise we use the default, namely "lib".
-  dnl On Solaris systems, the current practice is that on a system supporting
-  dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
-  dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or
-  dnl $prefix/lib/amd64) and 32-bit libraries go under $prefix/lib.
-  AC_REQUIRE([AC_CANONICAL_HOST])
-  acl_libdirstem=lib
-  acl_libdirstem2=
-  case "$host_os" in
-    solaris*)
-      dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment
-      dnl <http://docs.sun.com/app/docs/doc/816-5138/dev-env?l=en&a=view>.
-      dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link."
-      dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the
-      dnl symlink is missing, so we set acl_libdirstem2 too.
-      AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit],
-        [AC_EGREP_CPP([sixtyfour bits], [
-#ifdef _LP64
-sixtyfour bits
-#endif
-           ], [gl_cv_solaris_64bit=yes], [gl_cv_solaris_64bit=no])
-        ])
-      if test $gl_cv_solaris_64bit = yes; then
-        acl_libdirstem=lib/64
-        case "$host_cpu" in
-          sparc*)        acl_libdirstem2=lib/sparcv9 ;;
-          i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
-        esac
-      fi
-      ;;
-    *)
-      searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
-      if test -n "$searchpath"; then
-        acl_save_IFS="${IFS=   }"; IFS=":"
-        for searchdir in $searchpath; do
-          if test -d "$searchdir"; then
-            case "$searchdir" in
-              */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
-              */../ | */.. )
-                # Better ignore directories of this form. They are misleading.
-                ;;
-              *) searchdir=`cd "$searchdir" && pwd`
-                 case "$searchdir" in
-                   */lib64 ) acl_libdirstem=lib64 ;;
-                 esac ;;
-            esac
-          fi
-        done
-        IFS="$acl_save_IFS"
-      fi
-      ;;
-  esac
-  test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
-])
-
-# nls.m4 serial 5 (gettext-0.18)
-dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014 Free Software Foundation,
-dnl Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-dnl
-dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
-dnl License but which still want to provide support for the GNU gettext
-dnl functionality.
-dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
-dnl gettext package is covered by the GNU General Public License.
-dnl They are *not* in the public domain.
-
-dnl Authors:
-dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
-dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2003.
-
-AC_PREREQ([2.50])
-
-AC_DEFUN([AM_NLS],
-[
-  AC_MSG_CHECKING([whether NLS is requested])
-  dnl Default is enabled NLS
-  AC_ARG_ENABLE([nls],
-    [  --disable-nls           do not use Native Language Support],
-    USE_NLS=$enableval, USE_NLS=yes)
-  AC_MSG_RESULT([$USE_NLS])
-  AC_SUBST([USE_NLS])
-])
+# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
+# serial 1 (pkg-config-0.24)
+# 
+# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
 
-dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
-dnl serial 11 (pkg-config-0.29.1)
-dnl
-dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
-dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
-dnl
-dnl This program is free software; you can redistribute it and/or modify
-dnl it under the terms of the GNU General Public License as published by
-dnl the Free Software Foundation; either version 2 of the License, or
-dnl (at your option) any later version.
-dnl
-dnl This program is distributed in the hope that it will be useful, but
-dnl WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU General Public License
-dnl along with this program; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-dnl 02111-1307, USA.
-dnl
-dnl As a special exception to the GNU General Public License, if you
-dnl distribute this file as part of a program that contains a
-dnl configuration script generated by Autoconf, you may include it under
-dnl the same distribution terms that you use for the rest of that
-dnl program.
-
-dnl PKG_PREREQ(MIN-VERSION)
-dnl -----------------------
-dnl Since: 0.29
-dnl
-dnl Verify that the version of the pkg-config macros are at least
-dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
-dnl installed version of pkg-config, this checks the developer's version
-dnl of pkg.m4 when generating configure.
-dnl
-dnl To ensure that this macro is defined, also add:
-dnl m4_ifndef([PKG_PREREQ],
-dnl     [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
-dnl
-dnl See the "Since" comment for each macro you use to see what version
-dnl of the macros you require.
-m4_defun([PKG_PREREQ],
-[m4_define([PKG_MACROS_VERSION], [0.29.1])
-m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
-    [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
-])dnl PKG_PREREQ
-
-dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
-dnl ----------------------------------
-dnl Since: 0.16
-dnl
-dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
-dnl first found in the path. Checks that the version of pkg-config found
-dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
-dnl used since that's the first version where most current features of
-dnl pkg-config existed.
+# PKG_PROG_PKG_CONFIG([MIN-VERSION])
+# ----------------------------------
 AC_DEFUN([PKG_PROG_PKG_CONFIG],
 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
 m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
@@ -2073,19 +151,18 @@ if test -n "$PKG_CONFIG"; then
                PKG_CONFIG=""
        fi
 fi[]dnl
-])dnl PKG_PROG_PKG_CONFIG
+])# PKG_PROG_PKG_CONFIG
 
-dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-dnl -------------------------------------------------------------------
-dnl Since: 0.18
-dnl
-dnl Check to see whether a particular set of modules exists. Similar to
-dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
-dnl
-dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-dnl only at the first occurence in configure.ac, so if the first place
-dnl it's called might be skipped (such as if it is within an "if", you
-dnl have to call PKG_CHECK_EXISTS manually
+# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+#
+# Check to see whether a particular set of modules exists.  Similar
+# to PKG_CHECK_MODULES(), but does not set variables or print errors.
+#
+# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+# only at the first occurence in configure.ac, so if the first place
+# it's called might be skipped (such as if it is within an "if", you
+# have to call PKG_CHECK_EXISTS manually
+# --------------------------------------------------------------
 AC_DEFUN([PKG_CHECK_EXISTS],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 if test -n "$PKG_CONFIG" && \
@@ -2095,10 +172,8 @@ m4_ifvaln([$3], [else
   $3])dnl
 fi])
 
-dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-dnl ---------------------------------------------
-dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
-dnl pkg_failed based on the result.
+# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+# ---------------------------------------------
 m4_define([_PKG_CONFIG],
 [if test -n "$$1"; then
     pkg_cv_[]$1="$$1"
@@ -2110,11 +185,10 @@ m4_define([_PKG_CONFIG],
  else
     pkg_failed=untried
 fi[]dnl
-])dnl _PKG_CONFIG
+])# _PKG_CONFIG
 
-dnl _PKG_SHORT_ERRORS_SUPPORTED
-dnl ---------------------------
-dnl Internal check to see if pkg-config supports short errors.
+# _PKG_SHORT_ERRORS_SUPPORTED
+# -----------------------------
 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@ -2122,17 +196,19 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
 else
         _pkg_short_errors_supported=no
 fi[]dnl
-])dnl _PKG_SHORT_ERRORS_SUPPORTED
+])# _PKG_SHORT_ERRORS_SUPPORTED
 
 
-dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-dnl   [ACTION-IF-NOT-FOUND])
-dnl --------------------------------------------------------------
-dnl Since: 0.4.0
-dnl
-dnl Note that if there is a possibility the first call to
-dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
-dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
+# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+# [ACTION-IF-NOT-FOUND])
+#
+#
+# Note that if there is a possibility the first call to
+# PKG_CHECK_MODULES might not happen, you should be sure to include an
+# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
+#
+#
+# --------------------------------------------------------------
 AC_DEFUN([PKG_CHECK_MODULES],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
@@ -2186,40 +262,16 @@ else
         AC_MSG_RESULT([yes])
        $3
 fi[]dnl
-])dnl PKG_CHECK_MODULES
+])# PKG_CHECK_MODULES
 
 
-dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-dnl   [ACTION-IF-NOT-FOUND])
-dnl ---------------------------------------------------------------------
-dnl Since: 0.29
-dnl
-dnl Checks for existence of MODULES and gathers its build flags with
-dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
-dnl and VARIABLE-PREFIX_LIBS from --libs.
-dnl
-dnl Note that if there is a possibility the first call to
-dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
-dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
-dnl configure.ac.
-AC_DEFUN([PKG_CHECK_MODULES_STATIC],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-_save_PKG_CONFIG=$PKG_CONFIG
-PKG_CONFIG="$PKG_CONFIG --static"
-PKG_CHECK_MODULES($@)
-PKG_CONFIG=$_save_PKG_CONFIG[]dnl
-])dnl PKG_CHECK_MODULES_STATIC
-
-
-dnl PKG_INSTALLDIR([DIRECTORY])
-dnl -------------------------
-dnl Since: 0.27
-dnl
-dnl Substitutes the variable pkgconfigdir as the location where a module
-dnl should install pkg-config .pc files. By default the directory is
-dnl $libdir/pkgconfig, but the default can be changed by passing
-dnl DIRECTORY. The user can override through the --with-pkgconfigdir
-dnl parameter.
+# PKG_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable pkgconfigdir as the location where a module
+# should install pkg-config .pc files. By default the directory is
+# $libdir/pkgconfig, but the default can be changed by passing
+# DIRECTORY. The user can override through the --with-pkgconfigdir
+# parameter.
 AC_DEFUN([PKG_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -2230,18 +282,16 @@ AC_ARG_WITH([pkgconfigdir],
 AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-])dnl PKG_INSTALLDIR
+]) dnl PKG_INSTALLDIR
 
 
-dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
-dnl --------------------------------
-dnl Since: 0.27
-dnl
-dnl Substitutes the variable noarch_pkgconfigdir as the location where a
-dnl module should install arch-independent pkg-config .pc files. By
-dnl default the directory is $datadir/pkgconfig, but the default can be
-dnl changed by passing DIRECTORY. The user can override through the
-dnl --with-noarch-pkgconfigdir parameter.
+# PKG_NOARCH_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable noarch_pkgconfigdir as the location where a
+# module should install arch-independent pkg-config .pc files. By
+# default the directory is $datadir/pkgconfig, but the default can be
+# changed by passing DIRECTORY. The user can override through the
+# --with-noarch-pkgconfigdir parameter.
 AC_DEFUN([PKG_NOARCH_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -2252,15 +302,13 @@ AC_ARG_WITH([noarch-pkgconfigdir],
 AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-])dnl PKG_NOARCH_INSTALLDIR
+]) dnl PKG_NOARCH_INSTALLDIR
 
 
-dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
-dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-dnl -------------------------------------------
-dnl Since: 0.28
-dnl
-dnl Retrieves the value of the pkg-config variable for the given module.
+# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# -------------------------------------------
+# Retrieves the value of the pkg-config variable for the given module.
 AC_DEFUN([PKG_CHECK_VAR],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
@@ -2269,555 +317,9 @@ _PKG_CONFIG([$1], [variable="][$3]["], [$2])
 AS_VAR_COPY([$1], [pkg_cv_][$1])
 
 AS_VAR_IF([$1], [""], [$5], [$4])dnl
-])dnl PKG_CHECK_VAR
-
-# po.m4 serial 24 (gettext-0.19)
-dnl Copyright (C) 1995-2014 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-dnl
-dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
-dnl License but which still want to provide support for the GNU gettext
-dnl functionality.
-dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
-dnl gettext package is covered by the GNU General Public License.
-dnl They are *not* in the public domain.
-
-dnl Authors:
-dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
-dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2003.
-
-AC_PREREQ([2.60])
-
-dnl Checks for all prerequisites of the po subdirectory.
-AC_DEFUN([AM_PO_SUBDIRS],
-[
-  AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-  AC_REQUIRE([AC_PROG_INSTALL])dnl
-  AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-  AC_REQUIRE([AC_PROG_SED])dnl
-  AC_REQUIRE([AM_NLS])dnl
-
-  dnl Release version of the gettext macros. This is used to ensure that
-  dnl the gettext macros and po/Makefile.in.in are in sync.
-  AC_SUBST([GETTEXT_MACRO_VERSION], [0.19])
-
-  dnl Perform the following tests also if --disable-nls has been given,
-  dnl because they are needed for "make dist" to work.
-
-  dnl Search for GNU msgfmt in the PATH.
-  dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions.
-  dnl The second test excludes FreeBSD msgfmt.
-  AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
-    [$ac_dir/$ac_word --statistics /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 &&
-     (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
-    :)
-  AC_PATH_PROG([GMSGFMT], [gmsgfmt], [$MSGFMT])
-
-  dnl Test whether it is GNU msgfmt >= 0.15.
-changequote(,)dnl
-  case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in
-    '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;;
-    *) MSGFMT_015=$MSGFMT ;;
-  esac
-changequote([,])dnl
-  AC_SUBST([MSGFMT_015])
-changequote(,)dnl
-  case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in
-    '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;;
-    *) GMSGFMT_015=$GMSGFMT ;;
-  esac
-changequote([,])dnl
-  AC_SUBST([GMSGFMT_015])
-
-  dnl Search for GNU xgettext 0.12 or newer in the PATH.
-  dnl The first test excludes Solaris xgettext and early GNU xgettext versions.
-  dnl The second test excludes FreeBSD xgettext.
-  AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
-    [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 &&
-     (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
-    :)
-  dnl Remove leftover from FreeBSD xgettext call.
-  rm -f messages.po
-
-  dnl Test whether it is GNU xgettext >= 0.15.
-changequote(,)dnl
-  case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in
-    '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;;
-    *) XGETTEXT_015=$XGETTEXT ;;
-  esac
-changequote([,])dnl
-  AC_SUBST([XGETTEXT_015])
-
-  dnl Search for GNU msgmerge 0.11 or newer in the PATH.
-  AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge,
-    [$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :)
-
-  dnl Installation directories.
-  dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we
-  dnl have to define it here, so that it can be used in po/Makefile.
-  test -n "$localedir" || localedir='${datadir}/locale'
-  AC_SUBST([localedir])
-
-  dnl Support for AM_XGETTEXT_OPTION.
-  test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS=
-  AC_SUBST([XGETTEXT_EXTRA_OPTIONS])
-
-  AC_CONFIG_COMMANDS([po-directories], [[
-    for ac_file in $CONFIG_FILES; do
-      # Support "outfile[:infile[:infile...]]"
-      case "$ac_file" in
-        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-      esac
-      # PO directories have a Makefile.in generated from Makefile.in.in.
-      case "$ac_file" in */Makefile.in)
-        # Adjust a relative srcdir.
-        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-        ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'`
-        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
-        # In autoconf-2.13 it is called $ac_given_srcdir.
-        # In autoconf-2.50 it is called $srcdir.
-        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
-        case "$ac_given_srcdir" in
-          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
-          /*) top_srcdir="$ac_given_srcdir" ;;
-          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
-        esac
-        # Treat a directory as a PO directory if and only if it has a
-        # POTFILES.in file. This allows packages to have multiple PO
-        # directories under different names or in different locations.
-        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
-          rm -f "$ac_dir/POTFILES"
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
-          gt_tab=`printf '\t'`
-          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
-          POMAKEFILEDEPS="POTFILES.in"
-          # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend
-          # on $ac_dir but don't depend on user-specified configuration
-          # parameters.
-          if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
-            # The LINGUAS file contains the set of available languages.
-            if test -n "$OBSOLETE_ALL_LINGUAS"; then
-              test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
-            fi
-            ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"`
-            # Hide the ALL_LINGUAS assignment from automake < 1.5.
-            eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
-            POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
-          else
-            # The set of available languages was given in configure.in.
-            # Hide the ALL_LINGUAS assignment from automake < 1.5.
-            eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
-          fi
-          # Compute POFILES
-          # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po)
-          # Compute UPDATEPOFILES
-          # as      $(foreach lang, $(ALL_LINGUAS), $(lang).po-update)
-          # Compute DUMMYPOFILES
-          # as      $(foreach lang, $(ALL_LINGUAS), $(lang).nop)
-          # Compute GMOFILES
-          # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo)
-          case "$ac_given_srcdir" in
-            .) srcdirpre= ;;
-            *) srcdirpre='$(srcdir)/' ;;
-          esac
-          POFILES=
-          UPDATEPOFILES=
-          DUMMYPOFILES=
-          GMOFILES=
-          for lang in $ALL_LINGUAS; do
-            POFILES="$POFILES $srcdirpre$lang.po"
-            UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
-            DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
-            GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
-          done
-          # CATALOGS depends on both $ac_dir and the user's LINGUAS
-          # environment variable.
-          INST_LINGUAS=
-          if test -n "$ALL_LINGUAS"; then
-            for presentlang in $ALL_LINGUAS; do
-              useit=no
-              if test "%UNSET%" != "$LINGUAS"; then
-                desiredlanguages="$LINGUAS"
-              else
-                desiredlanguages="$ALL_LINGUAS"
-              fi
-              for desiredlang in $desiredlanguages; do
-                # Use the presentlang catalog if desiredlang is
-                #   a. equal to presentlang, or
-                #   b. a variant of presentlang (because in this case,
-                #      presentlang can be used as a fallback for messages
-                #      which are not translated in the desiredlang catalog).
-                case "$desiredlang" in
-                  "$presentlang"*) useit=yes;;
-                esac
-              done
-              if test $useit = yes; then
-                INST_LINGUAS="$INST_LINGUAS $presentlang"
-              fi
-            done
-          fi
-          CATALOGS=
-          if test -n "$INST_LINGUAS"; then
-            for lang in $INST_LINGUAS; do
-              CATALOGS="$CATALOGS $lang.gmo"
-            done
-          fi
-          test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
-          sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
-          for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
-            if test -f "$f"; then
-              case "$f" in
-                *.orig | *.bak | *~) ;;
-                *) cat "$f" >> "$ac_dir/Makefile" ;;
-              esac
-            fi
-          done
-        fi
-        ;;
-      esac
-    done]],
-   [# Capture the value of obsolete ALL_LINGUAS because we need it to compute
-    # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it
-    # from automake < 1.5.
-    eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"'
-    # Capture the value of LINGUAS because we need it to compute CATALOGS.
-    LINGUAS="${LINGUAS-%UNSET%}"
-   ])
-])
-
-dnl Postprocesses a Makefile in a directory containing PO files.
-AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE],
-[
-  # When this code is run, in config.status, two variables have already been
-  # set:
-  # - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in,
-  # - LINGUAS is the value of the environment variable LINGUAS at configure
-  #   time.
-
-changequote(,)dnl
-  # Adjust a relative srcdir.
-  ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-  ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'`
-  ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
-  # In autoconf-2.13 it is called $ac_given_srcdir.
-  # In autoconf-2.50 it is called $srcdir.
-  test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
-  case "$ac_given_srcdir" in
-    .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
-    /*) top_srcdir="$ac_given_srcdir" ;;
-    *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
-  esac
-
-  # Find a way to echo strings without interpreting backslash.
-  if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then
-    gt_echo='echo'
-  else
-    if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then
-      gt_echo='printf %s\n'
-    else
-      echo_func () {
-        cat <<EOT
-$*
-EOT
-      }
-      gt_echo='echo_func'
-    fi
-  fi
-
-  # A sed script that extracts the value of VARIABLE from a Makefile.
-  tab=`printf '\t'`
-  sed_x_variable='
-# Test if the hold space is empty.
-x
-s/P/P/
-x
-ta
-# Yes it was empty. Look if we have the expected variable definition.
-/^['"${tab}"' ]*VARIABLE['"${tab}"' ]*=/{
-  # Seen the first line of the variable definition.
-  s/^['"${tab}"' ]*VARIABLE['"${tab}"' ]*=//
-  ba
-}
-bd
-:a
-# Here we are processing a line from the variable definition.
-# Remove comment, more precisely replace it with a space.
-s/#.*$/ /
-# See if the line ends in a backslash.
-tb
-:b
-s/\\$//
-# Print the line, without the trailing backslash.
-p
-tc
-# There was no trailing backslash. The end of the variable definition is
-# reached. Clear the hold space.
-s/^.*$//
-x
-bd
-:c
-# A trailing backslash means that the variable definition continues in the
-# next line. Put a nonempty string into the hold space to indicate this.
-s/^.*$/P/
-x
-:d
-'
-changequote([,])dnl
-
-  # Set POTFILES to the value of the Makefile variable POTFILES.
-  sed_x_POTFILES=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/POTFILES/g'`
-  POTFILES=`sed -n -e "$sed_x_POTFILES" < "$ac_file"`
-  # Compute POTFILES_DEPS as
-  #   $(foreach file, $(POTFILES), $(top_srcdir)/$(file))
-  POTFILES_DEPS=
-  for file in $POTFILES; do
-    POTFILES_DEPS="$POTFILES_DEPS "'$(top_srcdir)/'"$file"
-  done
-  POMAKEFILEDEPS=""
-
-  if test -n "$OBSOLETE_ALL_LINGUAS"; then
-    test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
-  fi
-  if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
-    # The LINGUAS file contains the set of available languages.
-    ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"`
-    POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
-  else
-    # Set ALL_LINGUAS to the value of the Makefile variable LINGUAS.
-    sed_x_LINGUAS=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/LINGUAS/g'`
-    ALL_LINGUAS_=`sed -n -e "$sed_x_LINGUAS" < "$ac_file"`
-  fi
-  # Hide the ALL_LINGUAS assignment from automake < 1.5.
-  eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
-  # Compute POFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po)
-  # Compute UPDATEPOFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(lang).po-update)
-  # Compute DUMMYPOFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(lang).nop)
-  # Compute GMOFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo)
-  # Compute PROPERTIESFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).properties)
-  # Compute CLASSFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).class)
-  # Compute QMFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).qm)
-  # Compute MSGFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(frob $(lang)).msg)
-  # Compute RESOURCESDLLFILES
-  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(frob $(lang))/$(DOMAIN).resources.dll)
-  case "$ac_given_srcdir" in
-    .) srcdirpre= ;;
-    *) srcdirpre='$(srcdir)/' ;;
-  esac
-  POFILES=
-  UPDATEPOFILES=
-  DUMMYPOFILES=
-  GMOFILES=
-  PROPERTIESFILES=
-  CLASSFILES=
-  QMFILES=
-  MSGFILES=
-  RESOURCESDLLFILES=
-  for lang in $ALL_LINGUAS; do
-    POFILES="$POFILES $srcdirpre$lang.po"
-    UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
-    DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
-    GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
-    PROPERTIESFILES="$PROPERTIESFILES \$(top_srcdir)/\$(DOMAIN)_$lang.properties"
-    CLASSFILES="$CLASSFILES \$(top_srcdir)/\$(DOMAIN)_$lang.class"
-    QMFILES="$QMFILES $srcdirpre$lang.qm"
-    frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
-    MSGFILES="$MSGFILES $srcdirpre$frobbedlang.msg"
-    frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'`
-    RESOURCESDLLFILES="$RESOURCESDLLFILES $srcdirpre$frobbedlang/\$(DOMAIN).resources.dll"
-  done
-  # CATALOGS depends on both $ac_dir and the user's LINGUAS
-  # environment variable.
-  INST_LINGUAS=
-  if test -n "$ALL_LINGUAS"; then
-    for presentlang in $ALL_LINGUAS; do
-      useit=no
-      if test "%UNSET%" != "$LINGUAS"; then
-        desiredlanguages="$LINGUAS"
-      else
-        desiredlanguages="$ALL_LINGUAS"
-      fi
-      for desiredlang in $desiredlanguages; do
-        # Use the presentlang catalog if desiredlang is
-        #   a. equal to presentlang, or
-        #   b. a variant of presentlang (because in this case,
-        #      presentlang can be used as a fallback for messages
-        #      which are not translated in the desiredlang catalog).
-        case "$desiredlang" in
-          "$presentlang"*) useit=yes;;
-        esac
-      done
-      if test $useit = yes; then
-        INST_LINGUAS="$INST_LINGUAS $presentlang"
-      fi
-    done
-  fi
-  CATALOGS=
-  JAVACATALOGS=
-  QTCATALOGS=
-  TCLCATALOGS=
-  CSHARPCATALOGS=
-  if test -n "$INST_LINGUAS"; then
-    for lang in $INST_LINGUAS; do
-      CATALOGS="$CATALOGS $lang.gmo"
-      JAVACATALOGS="$JAVACATALOGS \$(DOMAIN)_$lang.properties"
-      QTCATALOGS="$QTCATALOGS $lang.qm"
-      frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
-      TCLCATALOGS="$TCLCATALOGS $frobbedlang.msg"
-      frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'`
-      CSHARPCATALOGS="$CSHARPCATALOGS $frobbedlang/\$(DOMAIN).resources.dll"
-    done
-  fi
+])# PKG_CHECK_VAR
 
-  sed -e "s|@POTFILES_DEPS@|$POTFILES_DEPS|g" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@PROPERTIESFILES@|$PROPERTIESFILES|g" -e "s|@CLASSFILES@|$CLASSFILES|g" -e "s|@QMFILES@|$QMFILES|g" -e "s|@MSGFILES@|$MSGFILES|g" -e "s|@RESOURCESDLLFILES@|$RESOURCESDLLFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@JAVACATALOGS@|$JAVACATALOGS|g" -e "s|@QTCATALOGS@|$QTCATALOGS|g" -e "s|@TCLCATALOGS@|$TCLCATALOGS|g" -e "s|@CSHARPCATALOGS@|$CSHARPCATALOGS|g" -e 's,^#distdir:,distdir:,' < "$ac_file" > "$ac_file.tmp"
-  tab=`printf '\t'`
-  if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then
-    # Add dependencies that cannot be formulated as a simple suffix rule.
-    for lang in $ALL_LINGUAS; do
-      frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
-      cat >> "$ac_file.tmp" <<EOF
-$frobbedlang.msg: $lang.po
-${tab}@echo "\$(MSGFMT) -c --tcl -d \$(srcdir) -l $lang $srcdirpre$lang.po"; \
-${tab}\$(MSGFMT) -c --tcl -d "\$(srcdir)" -l $lang $srcdirpre$lang.po || { rm -f "\$(srcdir)/$frobbedlang.msg"; exit 1; }
-EOF
-    done
-  fi
-  if grep -l '@CSHARPCATALOGS@' "$ac_file" > /dev/null; then
-    # Add dependencies that cannot be formulated as a simple suffix rule.
-    for lang in $ALL_LINGUAS; do
-      frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'`
-      cat >> "$ac_file.tmp" <<EOF
-$frobbedlang/\$(DOMAIN).resources.dll: $lang.po
-${tab}@echo "\$(MSGFMT) -c --csharp -d \$(srcdir) -l $lang $srcdirpre$lang.po -r \$(DOMAIN)"; \
-${tab}\$(MSGFMT) -c --csharp -d "\$(srcdir)" -l $lang $srcdirpre$lang.po -r "\$(DOMAIN)" || { rm -f "\$(srcdir)/$frobbedlang.msg"; exit 1; }
-EOF
-    done
-  fi
-  if test -n "$POMAKEFILEDEPS"; then
-    cat >> "$ac_file.tmp" <<EOF
-Makefile: $POMAKEFILEDEPS
-EOF
-  fi
-  mv "$ac_file.tmp" "$ac_file"
-])
-
-dnl Initializes the accumulator used by AM_XGETTEXT_OPTION.
-AC_DEFUN([AM_XGETTEXT_OPTION_INIT],
-[
-  XGETTEXT_EXTRA_OPTIONS=
-])
-
-dnl Registers an option to be passed to xgettext in the po subdirectory.
-AC_DEFUN([AM_XGETTEXT_OPTION],
-[
-  AC_REQUIRE([AM_XGETTEXT_OPTION_INIT])
-  XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS $1"
-])
-
-# progtest.m4 serial 7 (gettext-0.18.2)
-dnl Copyright (C) 1996-2003, 2005, 2008-2015 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-dnl
-dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
-dnl License but which still want to provide support for the GNU gettext
-dnl functionality.
-dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
-dnl gettext package is covered by the GNU General Public License.
-dnl They are *not* in the public domain.
-
-dnl Authors:
-dnl   Ulrich Drepper <drepper@cygnus.com>, 1996.
-
-AC_PREREQ([2.50])
-
-# Search path for a program which passes the given test.
-
-dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
-dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
-AC_DEFUN([AM_PATH_PROG_WITH_TEST],
-[
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  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
-
-# Find out how to test for executable files. Don't use a zero-byte file,
-# as systems may use methods other than mode bits to determine executability.
-cat >conf$$.file <<_ASEOF
-#! /bin/sh
-exit 0
-_ASEOF
-chmod +x conf$$.file
-if test -x conf$$.file >/dev/null 2>&1; then
-  ac_executable_p="test -x"
-else
-  ac_executable_p="test -f"
-fi
-rm -f conf$$.file
-
-# Extract the first word of "$2", so it can be a program name with args.
-set dummy $2; ac_word=[$]2
-AC_MSG_CHECKING([for $ac_word])
-AC_CACHE_VAL([ac_cv_path_$1],
-[case "[$]$1" in
-  [[\\/]]* | ?:[[\\/]]*)
-    ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
-    ;;
-  *)
-    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in ifelse([$5], , $PATH, [$5]); do
-      IFS="$ac_save_IFS"
-      test -z "$ac_dir" && ac_dir=.
-      for ac_exec_ext in '' $ac_executable_extensions; do
-        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
-          echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD
-          if [$3]; then
-            ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext"
-            break 2
-          fi
-        fi
-      done
-    done
-    IFS="$ac_save_IFS"
-dnl If no 4th arg is given, leave the cache variable unset,
-dnl so AC_PATH_PROGS will keep looking.
-ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
-])dnl
-    ;;
-esac])dnl
-$1="$ac_cv_path_$1"
-if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
-  AC_MSG_RESULT([$][$1])
-else
-  AC_MSG_RESULT([no])
-fi
-AC_SUBST([$1])dnl
-])
-
-# Copyright (C) 2002-2014 Free Software Foundation, Inc.
+# Copyright (C) 2002-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -2829,10 +331,10 @@ AC_SUBST([$1])dnl
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.15'
+[am__api_version='1.14'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.15], [],
+m4_if([$1], [1.14.1], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -2848,12 +350,12 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.15])dnl
+[AM_AUTOMAKE_VERSION([1.14.1])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
-# Copyright (C) 2011-2014 Free Software Foundation, Inc.
+# Copyright (C) 2011-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -2915,7 +417,7 @@ AC_SUBST([AR])dnl
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -2967,7 +469,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -2998,7 +500,7 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3189,7 +691,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3265,7 +767,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3355,8 +857,8 @@ AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
-# We need awk for the "check" target (and possibly the TAP driver).  The
-# system "awk" is bad on some platforms.
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
 AC_REQUIRE([AC_PROG_AWK])dnl
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
@@ -3430,9 +932,6 @@ END
     AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
   fi
 fi
-dnl The trailing newline in this macro's definition is deliberate, for
-dnl backward compatibility and to allow trailing 'dnl'-style comments
-dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
 ])
 
 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
@@ -3462,7 +961,7 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3473,7 +972,7 @@ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_co
 # Define $install_sh.
 AC_DEFUN([AM_PROG_INSTALL_SH],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh+set}" != xset; then
+if test x"${install_sh}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -3483,7 +982,7 @@ if test x"${install_sh+set}" != xset; then
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2014 Free Software Foundation, Inc.
+# Copyright (C) 2003-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3504,7 +1003,7 @@ AC_SUBST([am__leading_dot])])
 
 # Check to see how 'make' treats includes.                 -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3554,7 +1053,7 @@ rm -f confinc confmf
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3591,9 +1090,41 @@ else
 fi
 ])
 
+# Copyright (C) 2003-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_MKDIR_P
+# ---------------
+# Check for 'mkdir -p'.
+AC_DEFUN([AM_PROG_MKDIR_P],
+[AC_PREREQ([2.60])dnl
+AC_REQUIRE([AC_PROG_MKDIR_P])dnl
+dnl FIXME we are no longer going to remove this! adjust warning
+dnl FIXME message accordingly.
+AC_DIAGNOSE([obsolete],
+[$0: this macro is deprecated, and will soon be removed.
+You should use the Autoconf-provided 'AC][_PROG_MKDIR_P' macro instead,
+and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.])
+dnl Automake 1.8 to 1.9.6 used to define mkdir_p.  We now use MKDIR_P,
+dnl while keeping a definition of mkdir_p for backward compatibility.
+dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
+dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
+dnl Makefile.ins that do not define MKDIR_P, so we do our own
+dnl adjustment using top_builddir (which is defined more often than
+dnl MKDIR_P).
+AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
+case $mkdir_p in
+  [[\\/$]]* | ?:[[\\/]]*) ;;
+  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
+esac
+])
+
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3622,7 +1153,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3669,7 +1200,7 @@ AC_LANG_POP([C])])
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3688,7 +1219,7 @@ AC_DEFUN([AM_RUN_LOG],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3769,7 +1300,7 @@ AC_CONFIG_COMMANDS_PRE(
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2014 Free Software Foundation, Inc.
+# Copyright (C) 2009-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3829,7 +1360,7 @@ AC_SUBST([AM_BACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3857,7 +1388,7 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2014 Free Software Foundation, Inc.
+# Copyright (C) 2006-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -3876,7 +1407,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2014 Free Software Foundation, Inc.
+# Copyright (C) 2004-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -4007,3 +1538,11 @@ AC_SUBST([am__tar])
 AC_SUBST([am__untar])
 ]) # _AM_PROG_TAR
 
+m4_include([m4/gettext.m4])
+m4_include([m4/iconv.m4])
+m4_include([m4/lib-ld.m4])
+m4_include([m4/lib-link.m4])
+m4_include([m4/lib-prefix.m4])
+m4_include([m4/nls.m4])
+m4_include([m4/po.m4])
+m4_include([m4/progtest.m4])
index 050c936..8877213 100644 (file)
@@ -7,20 +7,17 @@
 /* Define to 1 if you have the <adl_defines.h> header file. */
 #undef HAVE_ADL_DEFINES_H
 
-/* Use AppIndicator > 0.2.9 */
+/* Use AppIndicator3-0.1 */
 #undef HAVE_APPINDICATOR
 
-/* Use AppIndicator 0.2.9 */
-#undef HAVE_APPINDICATOR_029
-
 /* Use libatasmart */
 #undef HAVE_ATASMART
 
-/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the
+/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
    CoreFoundation framework. */
 #undef HAVE_CFLOCALECOPYCURRENT
 
-/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in
+/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
    the CoreFoundation framework. */
 #undef HAVE_CFPREFERENCESCOPYAPPVALUE
 
@@ -37,7 +34,7 @@
 /* Use GTOP */
 #undef HAVE_GTOP
 
-/* Define if you have the iconv() function and it works. */
+/* Define if you have the iconv() function. */
 #undef HAVE_ICONV
 
 /* Define to 1 if you have the <inttypes.h> header file. */
@@ -61,7 +58,7 @@
 /* Define to 1 if you have the `pthread' library (-lpthread). */
 #undef HAVE_LIBPTHREAD
 
-/* Define to 1 if you have the `sensors' library (-lsensors). */
+/* Use libsensors */
 #undef HAVE_LIBSENSORS
 
 /* Use libudisks */
index 2c383c5..c7293af 100755 (executable)
--- 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 psensor 1.1.5.
+# Generated by GNU Autoconf 2.69 for psensor 1.2.0.
 #
 # Report bugs to <jeanfi@gmail.com>.
 #
@@ -580,8 +580,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='psensor'
 PACKAGE_TARNAME='psensor'
-PACKAGE_VERSION='1.1.5'
-PACKAGE_STRING='psensor 1.1.5'
+PACKAGE_VERSION='1.2.0'
+PACKAGE_STRING='psensor 1.2.0'
 PACKAGE_BUGREPORT='jeanfi@gmail.com'
 PACKAGE_URL='http://wpitchoune.net/psensor'
 
@@ -633,6 +633,8 @@ HAVE_CPPCHECK
 ASCIIDOC_FALSE
 ASCIIDOC_TRUE
 ASCIIDOC
+HELP2MAN_FALSE
+HELP2MAN_TRUE
 HELP2MAN
 GTOP_FALSE
 GTOP_TRUE
@@ -691,6 +693,8 @@ X11_TRUE
 X11_LIBS
 X11_CFLAGS
 SENSORS_LIBS
+SENSORS_FALSE
+SENSORS_TRUE
 PTHREAD_LIBS
 GSETTINGS_RULES
 GLIB_COMPILE_SCHEMAS
@@ -714,7 +718,6 @@ build_os
 build_vendor
 build_cpu
 build
-XGETTEXT_EXTRA_OPTIONS
 MSGMERGE
 XGETTEXT_015
 XGETTEXT
@@ -722,9 +725,7 @@ GMSGFMT_015
 MSGFMT_015
 GMSGFMT
 MSGFMT
-GETTEXT_MACRO_VERSION
 USE_NLS
-SED
 EGREP
 GREP
 CPP
@@ -795,7 +796,6 @@ infodir
 docdir
 oldincludedir
 includedir
-runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -906,7 +906,6 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
-runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1159,15 +1158,6 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
-  -runstatedir | --runstatedir | --runstatedi | --runstated \
-  | --runstate | --runstat | --runsta | --runst | --runs \
-  | --run | --ru | --r)
-    ac_prev=runstatedir ;;
-  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
-  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
-  | --run=* | --ru=* | --r=*)
-    runstatedir=$ac_optarg ;;
-
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1305,7 +1295,7 @@ fi
 for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
                datadir sysconfdir sharedstatedir localstatedir includedir \
                oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir runstatedir
+               libdir localedir mandir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1418,7 +1408,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 psensor 1.1.5 to adapt to many kinds of systems.
+\`configure' configures psensor 1.2.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1458,7 +1448,6 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -1493,7 +1482,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of psensor 1.1.5:";;
+     short | recursive ) echo "Configuration of psensor 1.2.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1517,7 +1506,7 @@ Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
   --with-x                use the X Window System
-  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
+  --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
   --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
@@ -1643,7 +1632,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-psensor configure 1.1.5
+psensor configure 1.2.0
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1945,7 +1934,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 psensor $as_me 1.1.5, which was
+It was created by psensor $as_me 1.2.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2295,7 +2284,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
 
-am__api_version='1.15'
+am__api_version='1.14'
 
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -2516,7 +2505,7 @@ else
 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
-if test x"${install_sh+set}" != xset; then
+if test x"${install_sh}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -2810,7 +2799,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='psensor'
- VERSION='1.1.5'
+ VERSION='1.2.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2844,8 +2833,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 mkdir_p='$(MKDIR_P)'
 
-# We need awk for the "check" target (and possibly the TAP driver).  The
-# system "awk" is bad on some platforms.
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
 # Always define AMTAR for backward compatibility.  Yes, it's still used
 # in the wild :-(  We should find a proper way to deprecate it ...
 AMTAR='$${TAR-tar}'
@@ -5025,74 +5014,12 @@ done
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-            ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
-     for ac_i in 1 2 3 4 5 6 7; do
-       ac_script="$ac_script$as_nl$ac_script"
-     done
-     echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
-     { ac_script=; unset ac_script;}
-     if test -z "$SED"; then
-  ac_path_SED_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 sed gsed; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
-      as_fn_executable_p "$ac_path_SED" || continue
-# Check for GNU ac_path_SED and select it if it is found.
-  # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
-  ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo '' >> "conftest.nl"
-    "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_SED_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_SED="$ac_path_SED"
-      ac_path_SED_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_SED_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_SED"; then
-    as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
-  fi
-else
-  ac_cv_path_SED=$SED
-fi
 
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
-  rm -f conftest.sed
+mkdir_p="$MKDIR_P"
+case $mkdir_p in
+  [\\/$]* | ?:[\\/]*) ;;
+  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
+esac
 
 
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
@@ -5110,22 +5037,20 @@ $as_echo "$USE_NLS" >&6; }
 
 
 
-      GETTEXT_MACRO_VERSION=0.19
-
-
 
 
 # Prepare PATH_SEPARATOR.
 # The user is always right.
 if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  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=';'
-       }
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
 fi
 
 # Find out how to test for executable files. Don't use a zero-byte file,
@@ -5240,14 +5165,15 @@ fi
 # Prepare PATH_SEPARATOR.
 # The user is always right.
 if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  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=';'
-       }
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
 fi
 
 # Find out how to test for executable files. Don't use a zero-byte file,
@@ -5317,14 +5243,15 @@ fi
 # Prepare PATH_SEPARATOR.
 # The user is always right.
 if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  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=';'
-       }
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
 fi
 
 # Find out how to test for executable files. Don't use a zero-byte file,
@@ -5385,9 +5312,6 @@ fi
         test -n "$localedir" || localedir='${datadir}/locale'
 
 
-    test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS=
-
-
   ac_config_commands="$ac_config_commands po-directories"
 
 
@@ -5479,7 +5403,6 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
 
 
 
-
 # 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
@@ -5490,21 +5413,21 @@ fi
 # Prepare PATH_SEPARATOR.
 # The user is always right.
 if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  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=';'
-       }
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
 fi
-
 ac_prog=ld
 if test "$GCC" = yes; 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; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by GCC" >&5
+$as_echo_n "checking for ld used by GCC... " >&6; }
   case $host in
   *-*-mingw*)
     # gcc leaves a trailing carriage return which upsets mingw
@@ -5514,12 +5437,12 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
   esac
   case $ac_prog in
     # Accept absolute paths.
-    [\\/]* | ?:[\\/]*)
+    [\\/]* | [A-Za-z]:[\\/]*)
       re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the pathname of ld
-      ac_prog=`echo "$ac_prog"| sed 's%\\\\%/%g'`
-      while echo "$ac_prog" | grep "$re_direlt" > /dev/null 2>&1; do
-        ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
+      # Canonicalize the path of ld
+      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
+      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"
       ;;
@@ -5543,26 +5466,23 @@ if ${acl_cv_path_LD+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test -z "$LD"; then
-  acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
   for ac_dir in $PATH; do
-    IFS="$acl_save_ifs"
     test -z "$ac_dir" && ac_dir=.
     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
       acl_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.
+      # but apparently some GNU ld's only accept -v.
       # Break only if it was the GNU/non-GNU ld that we prefer.
-      case `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
+      case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in
       *GNU* | *'with BFD'*)
-        test "$with_gnu_ld" != no && break
-        ;;
+       test "$with_gnu_ld" != no && break ;;
       *)
-        test "$with_gnu_ld" != yes && break
-        ;;
+       test "$with_gnu_ld" != yes && break ;;
       esac
     fi
   done
-  IFS="$acl_save_ifs"
+  IFS="$ac_save_ifs"
 else
   acl_cv_path_LD="$LD" # Let the user override the test with a path.
 fi
@@ -5582,14 +5502,12 @@ $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
 if ${acl_cv_prog_gnu_ld+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  # I'd rather use --version here, but apparently some GNU lds only accept -v.
+  # I'd rather use --version here, but apparently some GNU ld's only accept -v.
 case `$LD -v 2>&1 </dev/null` in
 *GNU* | *'with BFD'*)
-  acl_cv_prog_gnu_ld=yes
-  ;;
+  acl_cv_prog_gnu_ld=yes ;;
 *)
-  acl_cv_prog_gnu_ld=no
-  ;;
+  acl_cv_prog_gnu_ld=no ;;
 esac
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
@@ -5615,14 +5533,12 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
 $as_echo "$acl_cv_rpath" >&6; }
   wl="$acl_cv_wl"
-  acl_libext="$acl_cv_libext"
-  acl_shlibext="$acl_cv_shlibext"
-  acl_libname_spec="$acl_cv_libname_spec"
-  acl_library_names_spec="$acl_cv_library_names_spec"
-  acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
-  acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
-  acl_hardcode_direct="$acl_cv_hardcode_direct"
-  acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
+  libext="$acl_cv_libext"
+  shlibext="$acl_cv_shlibext"
+  hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
+  hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
+  hardcode_direct="$acl_cv_hardcode_direct"
+  hardcode_minus_L="$acl_cv_hardcode_minus_L"
     # Check whether --enable-rpath was given.
 if test "${enable_rpath+set}" = set; then :
   enableval=$enable_rpath; :
@@ -5632,71 +5548,23 @@ fi
 
 
 
-
-  acl_libdirstem=lib
-  acl_libdirstem2=
-  case "$host_os" in
-    solaris*)
-                                    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
-$as_echo_n "checking for 64-bit host... " >&6; }
-if ${gl_cv_solaris_64bit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef _LP64
-sixtyfour bits
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sixtyfour bits" >/dev/null 2>&1; then :
-  gl_cv_solaris_64bit=yes
-else
-  gl_cv_solaris_64bit=no
-fi
-rm -f conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
-$as_echo "$gl_cv_solaris_64bit" >&6; }
-      if test $gl_cv_solaris_64bit = yes; then
-        acl_libdirstem=lib/64
-        case "$host_cpu" in
-          sparc*)        acl_libdirstem2=lib/sparcv9 ;;
-          i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
+                  acl_libdirstem=lib
+  searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+  if test -n "$searchpath"; then
+    acl_save_IFS="${IFS=       }"; IFS=":"
+    for searchdir in $searchpath; do
+      if test -d "$searchdir"; then
+        case "$searchdir" in
+          */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
+          *) searchdir=`cd "$searchdir" && pwd`
+             case "$searchdir" in
+               */lib64 ) acl_libdirstem=lib64 ;;
+             esac ;;
         esac
       fi
-      ;;
-    *)
-      searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
-      if test -n "$searchpath"; then
-        acl_save_IFS="${IFS=   }"; IFS=":"
-        for searchdir in $searchpath; do
-          if test -d "$searchdir"; then
-            case "$searchdir" in
-              */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
-              */../ | */.. )
-                # Better ignore directories of this form. They are misleading.
-                ;;
-              *) searchdir=`cd "$searchdir" && pwd`
-                 case "$searchdir" in
-                   */lib64 ) acl_libdirstem=lib64 ;;
-                 esac ;;
-            esac
-          fi
-        done
-        IFS="$acl_save_IFS"
-      fi
-      ;;
-  esac
-  test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
-
-
-
-
+    done
+    IFS="$acl_save_IFS"
+  fi
 
 
 
@@ -5741,10 +5609,6 @@ if test "${with_libiconv_prefix+set}" = set; then :
       else
         additional_includedir="$withval/include"
         additional_libdir="$withval/$acl_libdirstem"
-        if test "$acl_libdirstem2" != "$acl_libdirstem" \
-           && ! test -d "$withval/$acl_libdirstem"; then
-          additional_libdir="$withval/$acl_libdirstem2"
-        fi
       fi
     fi
 
@@ -5753,8 +5617,6 @@ fi
       LIBICONV=
   LTLIBICONV=
   INCICONV=
-  LIBICONV_PREFIX=
-      HAVE_LIBICONV=
   rpathdirs=
   ltrpathdirs=
   names_already_handled=
@@ -5772,7 +5634,7 @@ fi
       done
       if test -z "$already_handled"; then
         names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'`
+                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
         eval value=\"\$HAVE_LIB$uppername\"
         if test -n "$value"; then
           if test "$value" = yes; then
@@ -5788,50 +5650,27 @@ fi
           found_la=
           found_so=
           found_a=
-          eval libname=\"$acl_libname_spec\"    # typically: libname=lib$name
-          if test -n "$acl_shlibext"; then
-            shrext=".$acl_shlibext"             # typically: shrext=.so
-          else
-            shrext=
-          fi
           if test $use_additional = yes; then
-            dir="$additional_libdir"
-                                    if test -n "$acl_shlibext"; then
-              if test -f "$dir/$libname$shrext"; then
-                found_dir="$dir"
-                found_so="$dir/$libname$shrext"
+            if test -n "$shlibext" \
+               && { test -f "$additional_libdir/lib$name.$shlibext" \
+                    || { test "$shlibext" = dll \
+                         && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
+              found_dir="$additional_libdir"
+              if test -f "$additional_libdir/lib$name.$shlibext"; then
+                found_so="$additional_libdir/lib$name.$shlibext"
               else
-                if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
-                  ver=`(cd "$dir" && \
-                        for f in "$libname$shrext".*; do echo "$f"; done \
-                        | sed -e "s,^$libname$shrext\\\\.,," \
-                        | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
-                        | sed 1q ) 2>/dev/null`
-                  if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
-                    found_dir="$dir"
-                    found_so="$dir/$libname$shrext.$ver"
-                  fi
-                else
-                  eval library_names=\"$acl_library_names_spec\"
-                  for f in $library_names; do
-                    if test -f "$dir/$f"; then
-                      found_dir="$dir"
-                      found_so="$dir/$f"
-                      break
-                    fi
-                  done
-                fi
+                found_so="$additional_libdir/lib$name.dll.a"
               fi
-            fi
-                        if test "X$found_dir" = "X"; then
-              if test -f "$dir/$libname.$acl_libext"; then
-                found_dir="$dir"
-                found_a="$dir/$libname.$acl_libext"
+              if test -f "$additional_libdir/lib$name.la"; then
+                found_la="$additional_libdir/lib$name.la"
               fi
-            fi
-            if test "X$found_dir" != "X"; then
-              if test -f "$dir/$libname.la"; then
-                found_la="$dir/$libname.la"
+            else
+              if test -f "$additional_libdir/lib$name.$libext"; then
+                found_dir="$additional_libdir"
+                found_a="$additional_libdir/lib$name.$libext"
+                if test -f "$additional_libdir/lib$name.la"; then
+                  found_la="$additional_libdir/lib$name.la"
+                fi
               fi
             fi
           fi
@@ -5849,42 +5688,26 @@ fi
               case "$x" in
                 -L*)
                   dir=`echo "X$x" | sed -e 's/^X-L//'`
-                                    if test -n "$acl_shlibext"; then
-                    if test -f "$dir/$libname$shrext"; then
-                      found_dir="$dir"
-                      found_so="$dir/$libname$shrext"
+                  if test -n "$shlibext" \
+                     && { test -f "$dir/lib$name.$shlibext" \
+                          || { test "$shlibext" = dll \
+                               && test -f "$dir/lib$name.dll.a"; }; }; then
+                    found_dir="$dir"
+                    if test -f "$dir/lib$name.$shlibext"; then
+                      found_so="$dir/lib$name.$shlibext"
                     else
-                      if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
-                        ver=`(cd "$dir" && \
-                              for f in "$libname$shrext".*; do echo "$f"; done \
-                              | sed -e "s,^$libname$shrext\\\\.,," \
-                              | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
-                              | sed 1q ) 2>/dev/null`
-                        if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
-                          found_dir="$dir"
-                          found_so="$dir/$libname$shrext.$ver"
-                        fi
-                      else
-                        eval library_names=\"$acl_library_names_spec\"
-                        for f in $library_names; do
-                          if test -f "$dir/$f"; then
-                            found_dir="$dir"
-                            found_so="$dir/$f"
-                            break
-                          fi
-                        done
-                      fi
+                      found_so="$dir/lib$name.dll.a"
                     fi
-                  fi
-                                    if test "X$found_dir" = "X"; then
-                    if test -f "$dir/$libname.$acl_libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/$libname.$acl_libext"
+                    if test -f "$dir/lib$name.la"; then
+                      found_la="$dir/lib$name.la"
                     fi
-                  fi
-                  if test "X$found_dir" != "X"; then
-                    if test -f "$dir/$libname.la"; then
-                      found_la="$dir/$libname.la"
+                  else
+                    if test -f "$dir/lib$name.$libext"; then
+                      found_dir="$dir"
+                      found_a="$dir/lib$name.$libext"
+                      if test -f "$dir/lib$name.la"; then
+                        found_la="$dir/lib$name.la"
+                      fi
                     fi
                   fi
                   ;;
@@ -5897,9 +5720,7 @@ fi
           if test "X$found_dir" != "X"; then
                         LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name"
             if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no \
-                 || test "X$found_dir" = "X/usr/$acl_libdirstem" \
-                 || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/$acl_libdirstem"; then
                                 LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
               else
                                                                                 haveit=
@@ -5912,10 +5733,10 @@ fi
                 if test -z "$haveit"; then
                   ltrpathdirs="$ltrpathdirs $found_dir"
                 fi
-                                if test "$acl_hardcode_direct" = yes; then
+                                if test "$hardcode_direct" = yes; then
                                                       LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
                 else
-                  if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
+                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
                                                             LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
                                                             haveit=
                     for x in $rpathdirs; do
@@ -5947,7 +5768,7 @@ fi
                     if test -z "$haveit"; then
                       LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir"
                     fi
-                    if test "$acl_hardcode_minus_L" != no; then
+                    if test "$hardcode_minus_L" != no; then
                                                                                         LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
                     else
                                                                                                                                                                                 LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name"
@@ -5966,16 +5787,6 @@ fi
             case "$found_dir" in
               */$acl_libdirstem | */$acl_libdirstem/)
                 basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
-                if test "$name" = 'iconv'; then
-                  LIBICONV_PREFIX="$basedir"
-                fi
-                additional_includedir="$basedir/include"
-                ;;
-              */$acl_libdirstem2 | */$acl_libdirstem2/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'`
-                if test "$name" = 'iconv'; then
-                  LIBICONV_PREFIX="$basedir"
-                fi
                 additional_includedir="$basedir/include"
                 ;;
             esac
@@ -6024,11 +5835,9 @@ fi
                 case "$dep" in
                   -L*)
                     additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
-                       && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+                                                                                                                                                                if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
                       haveit=
-                      if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
-                         || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+                      if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
                         if test -n "$GCC"; then
                           case $host_os in
                             linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -6128,21 +5937,21 @@ fi
     done
   done
   if test "X$rpathdirs" != "X"; then
-    if test -n "$acl_hardcode_libdir_separator"; then
+    if test -n "$hardcode_libdir_separator"; then
                         alldirs=
       for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
+        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
       done
             acl_save_libdir="$libdir"
       libdir="$alldirs"
-      eval flag=\"$acl_hardcode_libdir_flag_spec\"
+      eval flag=\"$hardcode_libdir_flag_spec\"
       libdir="$acl_save_libdir"
       LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
     else
             for found_dir in $rpathdirs; do
         acl_save_libdir="$libdir"
         libdir="$found_dir"
-        eval flag=\"$acl_hardcode_libdir_flag_spec\"
+        eval flag=\"$hardcode_libdir_flag_spec\"
         libdir="$acl_save_libdir"
         LIBICONV="${LIBICONV}${LIBICONV:+ }$flag"
       done
@@ -6178,12 +5987,6 @@ fi
 
 
 
-
-
-
-
-
-
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
 $as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; }
 if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then :
@@ -6279,12 +6082,12 @@ $as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h
 
 
         if test $gt_api_version -ge 3; then
-          gt_revision_test_code='
+          gt_revision_test_code='[
 #ifndef __GNU_GETTEXT_SUPPORTED_REVISION
 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
 #endif
 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
-'
+]'
         else
           gt_revision_test_code=
         fi
@@ -6301,19 +6104,15 @@ if eval \${$gt_func_gnugettext_libc+:} false; then :
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
 #include <libintl.h>
 $gt_revision_test_code
 extern int _nl_msg_cat_cntr;
 extern int *_nl_domain_bindings;
-
 int
 main ()
 {
-
 bindtextdomain ("", "");
 return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings
-
   ;
   return 0;
 }
@@ -6371,16 +6170,14 @@ else
     am_cv_lib_iconv=no
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
 #include <stdlib.h>
 #include <iconv.h>
-
 int
 main ()
 {
 iconv_t cd = iconv_open("","");
-           iconv(cd,NULL,NULL,NULL,NULL);
-           iconv_close(cd);
+       iconv(cd,NULL,NULL,NULL,NULL);
+       iconv_close(cd);
   ;
   return 0;
 }
@@ -6395,16 +6192,14 @@ rm -f core conftest.err conftest.$ac_objext \
       LIBS="$LIBS $LIBICONV"
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
 #include <stdlib.h>
 #include <iconv.h>
-
 int
 main ()
 {
 iconv_t cd = iconv_open("","");
-             iconv(cd,NULL,NULL,NULL,NULL);
-             iconv_close(cd);
+         iconv(cd,NULL,NULL,NULL,NULL);
+         iconv_close(cd);
   ;
   return 0;
 }
@@ -6422,157 +6217,6 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
 $as_echo "$am_cv_func_iconv" >&6; }
   if test "$am_cv_func_iconv" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
-$as_echo_n "checking for working iconv... " >&6; }
-if ${am_cv_func_iconv_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-                  am_save_LIBS="$LIBS"
-      if test $am_cv_lib_iconv = yes; then
-        LIBS="$LIBS $LIBICONV"
-      fi
-      am_cv_func_iconv_works=no
-      for ac_iconv_const in '' 'const'; do
-        if test "$cross_compiling" = yes; then :
-  case "$host_os" in
-             aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
-             *)            am_cv_func_iconv_works="guessing yes" ;;
-           esac
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <iconv.h>
-#include <string.h>
-
-#ifndef ICONV_CONST
-# define ICONV_CONST $ac_iconv_const
-#endif
-
-int
-main ()
-{
-int result = 0;
-  /* Test against AIX 5.1 bug: Failures are not distinguishable from successful
-     returns.  */
-  {
-    iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
-    if (cd_utf8_to_88591 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */
-        char buf[10];
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = strlen (input);
-        char *outptr = buf;
-        size_t outbytesleft = sizeof (buf);
-        size_t res = iconv (cd_utf8_to_88591,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if (res == 0)
-          result |= 1;
-        iconv_close (cd_utf8_to_88591);
-      }
-  }
-  /* Test against Solaris 10 bug: Failures are not distinguishable from
-     successful returns.  */
-  {
-    iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646");
-    if (cd_ascii_to_88591 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\263";
-        char buf[10];
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = strlen (input);
-        char *outptr = buf;
-        size_t outbytesleft = sizeof (buf);
-        size_t res = iconv (cd_ascii_to_88591,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if (res == 0)
-          result |= 2;
-        iconv_close (cd_ascii_to_88591);
-      }
-  }
-  /* Test against AIX 6.1..7.1 bug: Buffer overrun.  */
-  {
-    iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1");
-    if (cd_88591_to_utf8 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\304";
-        static char buf[2] = { (char)0xDE, (char)0xAD };
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = 1;
-        char *outptr = buf;
-        size_t outbytesleft = 1;
-        size_t res = iconv (cd_88591_to_utf8,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD)
-          result |= 4;
-        iconv_close (cd_88591_to_utf8);
-      }
-  }
-#if 0 /* This bug could be worked around by the caller.  */
-  /* Test against HP-UX 11.11 bug: Positive return value instead of 0.  */
-  {
-    iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
-    if (cd_88591_to_utf8 != (iconv_t)(-1))
-      {
-        static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
-        char buf[50];
-        ICONV_CONST char *inptr = input;
-        size_t inbytesleft = strlen (input);
-        char *outptr = buf;
-        size_t outbytesleft = sizeof (buf);
-        size_t res = iconv (cd_88591_to_utf8,
-                            &inptr, &inbytesleft,
-                            &outptr, &outbytesleft);
-        if ((int)res > 0)
-          result |= 8;
-        iconv_close (cd_88591_to_utf8);
-      }
-  }
-#endif
-  /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
-     provided.  */
-  if (/* Try standardized names.  */
-      iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
-      /* Try IRIX, OSF/1 names.  */
-      && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
-      /* Try AIX names.  */
-      && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
-      /* Try HP-UX names.  */
-      && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
-    result |= 16;
-  return result;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  am_cv_func_iconv_works=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-        test "$am_cv_func_iconv_works" = no || break
-      done
-      LIBS="$am_save_LIBS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5
-$as_echo "$am_cv_func_iconv_works" >&6; }
-    case "$am_cv_func_iconv_works" in
-      *no) am_func_iconv=no am_cv_lib_iconv=no ;;
-      *)   am_func_iconv=yes ;;
-    esac
-  else
-    am_func_iconv=no am_cv_lib_iconv=no
-  fi
-  if test "$am_func_iconv" = yes; then
 
 $as_echo "#define HAVE_ICONV 1" >>confdefs.h
 
@@ -6594,10 +6238,6 @@ $as_echo "$LIBICONV" >&6; }
 
 
 
-
-
-
-
     use_additional=yes
 
   acl_save_prefix="$prefix"
@@ -6634,10 +6274,6 @@ if test "${with_libintl_prefix+set}" = set; then :
       else
         additional_includedir="$withval/include"
         additional_libdir="$withval/$acl_libdirstem"
-        if test "$acl_libdirstem2" != "$acl_libdirstem" \
-           && ! test -d "$withval/$acl_libdirstem"; then
-          additional_libdir="$withval/$acl_libdirstem2"
-        fi
       fi
     fi
 
@@ -6646,8 +6282,6 @@ fi
       LIBINTL=
   LTLIBINTL=
   INCINTL=
-  LIBINTL_PREFIX=
-      HAVE_LIBINTL=
   rpathdirs=
   ltrpathdirs=
   names_already_handled=
@@ -6665,7 +6299,7 @@ fi
       done
       if test -z "$already_handled"; then
         names_already_handled="$names_already_handled $name"
-                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'`
+                        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
         eval value=\"\$HAVE_LIB$uppername\"
         if test -n "$value"; then
           if test "$value" = yes; then
@@ -6681,50 +6315,27 @@ fi
           found_la=
           found_so=
           found_a=
-          eval libname=\"$acl_libname_spec\"    # typically: libname=lib$name
-          if test -n "$acl_shlibext"; then
-            shrext=".$acl_shlibext"             # typically: shrext=.so
-          else
-            shrext=
-          fi
           if test $use_additional = yes; then
-            dir="$additional_libdir"
-                                    if test -n "$acl_shlibext"; then
-              if test -f "$dir/$libname$shrext"; then
-                found_dir="$dir"
-                found_so="$dir/$libname$shrext"
+            if test -n "$shlibext" \
+               && { test -f "$additional_libdir/lib$name.$shlibext" \
+                    || { test "$shlibext" = dll \
+                         && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
+              found_dir="$additional_libdir"
+              if test -f "$additional_libdir/lib$name.$shlibext"; then
+                found_so="$additional_libdir/lib$name.$shlibext"
               else
-                if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
-                  ver=`(cd "$dir" && \
-                        for f in "$libname$shrext".*; do echo "$f"; done \
-                        | sed -e "s,^$libname$shrext\\\\.,," \
-                        | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
-                        | sed 1q ) 2>/dev/null`
-                  if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
-                    found_dir="$dir"
-                    found_so="$dir/$libname$shrext.$ver"
-                  fi
-                else
-                  eval library_names=\"$acl_library_names_spec\"
-                  for f in $library_names; do
-                    if test -f "$dir/$f"; then
-                      found_dir="$dir"
-                      found_so="$dir/$f"
-                      break
-                    fi
-                  done
-                fi
+                found_so="$additional_libdir/lib$name.dll.a"
               fi
-            fi
-                        if test "X$found_dir" = "X"; then
-              if test -f "$dir/$libname.$acl_libext"; then
-                found_dir="$dir"
-                found_a="$dir/$libname.$acl_libext"
+              if test -f "$additional_libdir/lib$name.la"; then
+                found_la="$additional_libdir/lib$name.la"
               fi
-            fi
-            if test "X$found_dir" != "X"; then
-              if test -f "$dir/$libname.la"; then
-                found_la="$dir/$libname.la"
+            else
+              if test -f "$additional_libdir/lib$name.$libext"; then
+                found_dir="$additional_libdir"
+                found_a="$additional_libdir/lib$name.$libext"
+                if test -f "$additional_libdir/lib$name.la"; then
+                  found_la="$additional_libdir/lib$name.la"
+                fi
               fi
             fi
           fi
@@ -6742,42 +6353,26 @@ fi
               case "$x" in
                 -L*)
                   dir=`echo "X$x" | sed -e 's/^X-L//'`
-                                    if test -n "$acl_shlibext"; then
-                    if test -f "$dir/$libname$shrext"; then
-                      found_dir="$dir"
-                      found_so="$dir/$libname$shrext"
+                  if test -n "$shlibext" \
+                     && { test -f "$dir/lib$name.$shlibext" \
+                          || { test "$shlibext" = dll \
+                               && test -f "$dir/lib$name.dll.a"; }; }; then
+                    found_dir="$dir"
+                    if test -f "$dir/lib$name.$shlibext"; then
+                      found_so="$dir/lib$name.$shlibext"
                     else
-                      if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
-                        ver=`(cd "$dir" && \
-                              for f in "$libname$shrext".*; do echo "$f"; done \
-                              | sed -e "s,^$libname$shrext\\\\.,," \
-                              | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
-                              | sed 1q ) 2>/dev/null`
-                        if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
-                          found_dir="$dir"
-                          found_so="$dir/$libname$shrext.$ver"
-                        fi
-                      else
-                        eval library_names=\"$acl_library_names_spec\"
-                        for f in $library_names; do
-                          if test -f "$dir/$f"; then
-                            found_dir="$dir"
-                            found_so="$dir/$f"
-                            break
-                          fi
-                        done
-                      fi
+                      found_so="$dir/lib$name.dll.a"
                     fi
-                  fi
-                                    if test "X$found_dir" = "X"; then
-                    if test -f "$dir/$libname.$acl_libext"; then
-                      found_dir="$dir"
-                      found_a="$dir/$libname.$acl_libext"
+                    if test -f "$dir/lib$name.la"; then
+                      found_la="$dir/lib$name.la"
                     fi
-                  fi
-                  if test "X$found_dir" != "X"; then
-                    if test -f "$dir/$libname.la"; then
-                      found_la="$dir/$libname.la"
+                  else
+                    if test -f "$dir/lib$name.$libext"; then
+                      found_dir="$dir"
+                      found_a="$dir/lib$name.$libext"
+                      if test -f "$dir/lib$name.la"; then
+                        found_la="$dir/lib$name.la"
+                      fi
                     fi
                   fi
                   ;;
@@ -6790,9 +6385,7 @@ fi
           if test "X$found_dir" != "X"; then
                         LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name"
             if test "X$found_so" != "X"; then
-                                                        if test "$enable_rpath" = no \
-                 || test "X$found_dir" = "X/usr/$acl_libdirstem" \
-                 || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+                                                        if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/$acl_libdirstem"; then
                                 LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
               else
                                                                                 haveit=
@@ -6805,10 +6398,10 @@ fi
                 if test -z "$haveit"; then
                   ltrpathdirs="$ltrpathdirs $found_dir"
                 fi
-                                if test "$acl_hardcode_direct" = yes; then
+                                if test "$hardcode_direct" = yes; then
                                                       LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
                 else
-                  if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
+                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
                                                             LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
                                                             haveit=
                     for x in $rpathdirs; do
@@ -6840,7 +6433,7 @@ fi
                     if test -z "$haveit"; then
                       LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir"
                     fi
-                    if test "$acl_hardcode_minus_L" != no; then
+                    if test "$hardcode_minus_L" != no; then
                                                                                         LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
                     else
                                                                                                                                                                                 LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name"
@@ -6859,16 +6452,6 @@ fi
             case "$found_dir" in
               */$acl_libdirstem | */$acl_libdirstem/)
                 basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
-                if test "$name" = 'intl'; then
-                  LIBINTL_PREFIX="$basedir"
-                fi
-                additional_includedir="$basedir/include"
-                ;;
-              */$acl_libdirstem2 | */$acl_libdirstem2/)
-                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'`
-                if test "$name" = 'intl'; then
-                  LIBINTL_PREFIX="$basedir"
-                fi
                 additional_includedir="$basedir/include"
                 ;;
             esac
@@ -6917,11 +6500,9 @@ fi
                 case "$dep" in
                   -L*)
                     additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
-                                                                                                                                                                if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
-                       && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+                                                                                                                                                                if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
                       haveit=
-                      if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
-                         || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+                      if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
                         if test -n "$GCC"; then
                           case $host_os in
                             linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -7021,21 +6602,21 @@ fi
     done
   done
   if test "X$rpathdirs" != "X"; then
-    if test -n "$acl_hardcode_libdir_separator"; then
+    if test -n "$hardcode_libdir_separator"; then
                         alldirs=
       for found_dir in $rpathdirs; do
-        alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
+        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
       done
             acl_save_libdir="$libdir"
       libdir="$alldirs"
-      eval flag=\"$acl_hardcode_libdir_flag_spec\"
+      eval flag=\"$hardcode_libdir_flag_spec\"
       libdir="$acl_save_libdir"
       LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
     else
             for found_dir in $rpathdirs; do
         acl_save_libdir="$libdir"
         libdir="$found_dir"
-        eval flag=\"$acl_hardcode_libdir_flag_spec\"
+        eval flag=\"$hardcode_libdir_flag_spec\"
         libdir="$acl_save_libdir"
         LIBINTL="${LIBINTL}${LIBINTL:+ }$flag"
       done
@@ -7047,11 +6628,6 @@ fi
     done
   fi
 
-
-
-
-
-
           { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
 $as_echo_n "checking for GNU gettext in libintl... " >&6; }
 if eval \${$gt_func_gnugettext_libintl+:} false; then :
@@ -7063,7 +6639,6 @@ else
             LIBS="$LIBS $LIBINTL"
                         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
 #include <libintl.h>
 $gt_revision_test_code
 extern int _nl_msg_cat_cntr;
@@ -7072,14 +6647,11 @@ extern
 "C"
 #endif
 const char *_nl_expand_alias (const char *);
-
 int
 main ()
 {
-
 bindtextdomain ("", "");
 return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")
-
   ;
   return 0;
 }
@@ -7095,7 +6667,6 @@ rm -f core conftest.err conftest.$ac_objext \
               LIBS="$LIBS $LIBICONV"
               cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
 #include <libintl.h>
 $gt_revision_test_code
 extern int _nl_msg_cat_cntr;
@@ -7104,22 +6675,19 @@ extern
 "C"
 #endif
 const char *_nl_expand_alias (const char *);
-
 int
 main ()
 {
-
 bindtextdomain ("", "");
 return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")
-
   ;
   return 0;
 }
 _ACEOF
 if ac_fn_c_try_link "$LINENO"; then :
   LIBINTL="$LIBINTL $LIBICONV"
-                 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
-                 eval "$gt_func_gnugettext_libintl=yes"
+                LTLIBINTL="$LTLIBINTL $LTLIBICONV"
+                eval "$gt_func_gnugettext_libintl=yes"
 
 fi
 rm -f core conftest.err conftest.$ac_objext \
@@ -7561,11 +7129,9 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sensors_sensors_init" >&5
 $as_echo "$ac_cv_lib_sensors_sensors_init" >&6; }
 if test "x$ac_cv_lib_sensors_sensors_init" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSENSORS 1
-_ACEOF
+  SENSORS_LIBS=-lsensors
 
-  LIBS="-lsensors $LIBS"
+$as_echo "#define HAVE_LIBSENSORS 1" >>confdefs.h
 
 fi
 
@@ -7582,7 +7148,14 @@ fi
 
 done
 
-SENSORS_LIBS=-lsensors
+ if test -n "$SENSORS_LIBS"; then
+  SENSORS_TRUE=
+  SENSORS_FALSE='#'
+else
+  SENSORS_TRUE='#'
+  SENSORS_FALSE=
+fi
+
 
 
 ############### psensor
@@ -8116,7 +7689,6 @@ fi
 # Checks AppIndicator
 APPINDICATOR_LIBS=
 
-
 pkg_failed=no
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for APPINDICATOR" >&5
 $as_echo_n "checking for APPINDICATOR... " >&6; }
@@ -8191,166 +7763,6 @@ $as_echo "yes" >&6; }
 $as_echo "#define HAVE_APPINDICATOR 1" >>confdefs.h
 
 fi
-
-if test "$APPINDICATOR_LIBS" == ""; then
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for APPINDICATOR" >&5
-$as_echo_n "checking for APPINDICATOR... " >&6; }
-
-if test -n "$APPINDICATOR_CFLAGS"; then
-    pkg_cv_APPINDICATOR_CFLAGS="$APPINDICATOR_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"appindicator-0.1 <= 0.2.9 \""; } >&5
-  ($PKG_CONFIG --exists --print-errors "appindicator-0.1 <= 0.2.9 ") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_APPINDICATOR_CFLAGS=`$PKG_CONFIG --cflags "appindicator-0.1 <= 0.2.9 " 2>/dev/null`
-                     test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-if test -n "$APPINDICATOR_LIBS"; then
-    pkg_cv_APPINDICATOR_LIBS="$APPINDICATOR_LIBS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"appindicator-0.1 <= 0.2.9 \""; } >&5
-  ($PKG_CONFIG --exists --print-errors "appindicator-0.1 <= 0.2.9 ") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_APPINDICATOR_LIBS=`$PKG_CONFIG --libs "appindicator-0.1 <= 0.2.9 " 2>/dev/null`
-                     test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
-        _pkg_short_errors_supported=yes
-else
-        _pkg_short_errors_supported=no
-fi
-        if test $_pkg_short_errors_supported = yes; then
-               APPINDICATOR_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "appindicator-0.1 <= 0.2.9 " 2>&1`
-        else
-               APPINDICATOR_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "appindicator-0.1 <= 0.2.9 " 2>&1`
-        fi
-       # Put the nasty error message in config.log where it belongs
-       echo "$APPINDICATOR_PKG_ERRORS" >&5
-
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: AppIndicator 0.2.9 not present\"" >&5
-$as_echo "$as_me: WARNING: AppIndicator 0.2.9 not present\"" >&2;}
-elif test $pkg_failed = untried; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: AppIndicator 0.2.9 not present\"" >&5
-$as_echo "$as_me: WARNING: AppIndicator 0.2.9 not present\"" >&2;}
-else
-       APPINDICATOR_CFLAGS=$pkg_cv_APPINDICATOR_CFLAGS
-       APPINDICATOR_LIBS=$pkg_cv_APPINDICATOR_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_APPINDICATOR 1" >>confdefs.h
-
-
-$as_echo "#define HAVE_APPINDICATOR_029 1" >>confdefs.h
-
-
-fi
-fi
-
-if test "$APPINDICATOR_LIBS" == ""; then
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for APPINDICATOR" >&5
-$as_echo_n "checking for APPINDICATOR... " >&6; }
-
-if test -n "$APPINDICATOR_CFLAGS"; then
-    pkg_cv_APPINDICATOR_CFLAGS="$APPINDICATOR_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"appindicator-0.1 > 0.2.9\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "appindicator-0.1 > 0.2.9") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_APPINDICATOR_CFLAGS=`$PKG_CONFIG --cflags "appindicator-0.1 > 0.2.9" 2>/dev/null`
-                     test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-if test -n "$APPINDICATOR_LIBS"; then
-    pkg_cv_APPINDICATOR_LIBS="$APPINDICATOR_LIBS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"appindicator-0.1 > 0.2.9\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "appindicator-0.1 > 0.2.9") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_APPINDICATOR_LIBS=`$PKG_CONFIG --libs "appindicator-0.1 > 0.2.9" 2>/dev/null`
-                     test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
-        _pkg_short_errors_supported=yes
-else
-        _pkg_short_errors_supported=no
-fi
-        if test $_pkg_short_errors_supported = yes; then
-               APPINDICATOR_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "appindicator-0.1 > 0.2.9" 2>&1`
-        else
-               APPINDICATOR_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "appindicator-0.1 > 0.2.9" 2>&1`
-        fi
-       # Put the nasty error message in config.log where it belongs
-       echo "$APPINDICATOR_PKG_ERRORS" >&5
-
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"AppIndicator > 0.2.9 not present\"" >&5
-$as_echo "$as_me: WARNING: \"AppIndicator > 0.2.9 not present\"" >&2;}
-elif test $pkg_failed = untried; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"AppIndicator > 0.2.9 not present\"" >&5
-$as_echo "$as_me: WARNING: \"AppIndicator > 0.2.9 not present\"" >&2;}
-else
-       APPINDICATOR_CFLAGS=$pkg_cv_APPINDICATOR_CFLAGS
-       APPINDICATOR_LIBS=$pkg_cv_APPINDICATOR_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_APPINDICATOR 1" >>confdefs.h
-
-fi
-fi
  if test -n "$APPINDICATOR_LIBS"; then
   APPINDICATOR_TRUE=
   APPINDICATOR_FALSE='#'
@@ -9115,6 +8527,14 @@ fi
   test -n "$HELP2MAN" && break
 done
 
+ if test -n "$HELP2MAN"; then
+  HELP2MAN_TRUE=
+  HELP2MAN_FALSE='#'
+else
+  HELP2MAN_TRUE='#'
+  HELP2MAN_FALSE=
+fi
+
 
 # Extract the first word of "asciidoc", so it can be a program name with args.
 set dummy asciidoc; ac_word=$2
@@ -9341,6 +8761,10 @@ if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
   as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${SENSORS_TRUE}" && test -z "${SENSORS_FALSE}"; then
+  as_fn_error $? "conditional \"SENSORS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${X11_TRUE}" && test -z "${X11_FALSE}"; then
   as_fn_error $? "conditional \"X11\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -9397,6 +8821,10 @@ if test -z "${GTOP_TRUE}" && test -z "${GTOP_FALSE}"; then
   as_fn_error $? "conditional \"GTOP\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${HELP2MAN_TRUE}" && test -z "${HELP2MAN_FALSE}"; then
+  as_fn_error $? "conditional \"HELP2MAN\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${ASCIIDOC_TRUE}" && test -z "${ASCIIDOC_FALSE}"; then
   as_fn_error $? "conditional \"ASCIIDOC\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -9802,7 +9230,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 psensor $as_me 1.1.5, which was
+This file was extended by psensor $as_me 1.2.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -9869,7 +9297,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="\\
-psensor config.status 1.1.5
+psensor config.status 1.2.0
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -10726,7 +10154,7 @@ $as_echo X"$file" |
       case "$ac_file" in */Makefile.in)
         # Adjust a relative srcdir.
         ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
-        ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'`
+        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
         ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
         # In autoconf-2.13 it is called $ac_given_srcdir.
         # In autoconf-2.50 it is called $srcdir.
@@ -10742,8 +10170,7 @@ $as_echo X"$file" |
         if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
           rm -f "$ac_dir/POTFILES"
           test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
-          gt_tab=`printf '\t'`
-          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
+          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[  ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
           POMAKEFILEDEPS="POTFILES.in"
           # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend
           # on $ac_dir but don't depend on user-specified configuration
@@ -10754,12 +10181,12 @@ $as_echo X"$file" |
               test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
             fi
             ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"`
-            # Hide the ALL_LINGUAS assignment from automake < 1.5.
+            # Hide the ALL_LINGUAS assigment from automake < 1.5.
             eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
             POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
           else
             # The set of available languages was given in configure.in.
-            # Hide the ALL_LINGUAS assignment from automake < 1.5.
+            # Hide the ALL_LINGUAS assigment from automake < 1.5.
             eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
           fi
           # Compute POFILES
index 803214d..add0c4e 100644 (file)
@@ -2,7 +2,7 @@
 # Process this file with autoconf to produce a configure script.
 
 AC_PREREQ([2.69])
-AC_INIT([psensor], [1.1.5],[jeanfi@gmail.com],[psensor],[http://wpitchoune.net/psensor])
+AC_INIT([psensor], [1.2.0],[jeanfi@gmail.com],[psensor],[http://wpitchoune.net/psensor])
 
 AM_INIT_AUTOMAKE([-Wall gnu])
 
@@ -40,9 +40,11 @@ PTHREAD_LIBS=-pthread
 AC_SUBST(PTHREAD_LIBS)
 
 # Checks sensors, required by psensor and psensor-server
-AC_CHECK_LIB(sensors, sensors_init)
+AC_CHECK_LIB(sensors, sensors_init,
+             [SENSORS_LIBS=-lsensors
+             AC_DEFINE([HAVE_LIBSENSORS],[1],[Use libsensors])])
 AC_CHECK_HEADERS([sensors/sensors.h sensors/error.h])
-SENSORS_LIBS=-lsensors
+AM_CONDITIONAL(SENSORS, test -n "$SENSORS_LIBS")
 AC_SUBST(SENSORS_LIBS)
 
 ############### psensor 
@@ -105,26 +107,9 @@ AC_SUBST(LIBNOTIFY_LIBS)
 
 # Checks AppIndicator 
 APPINDICATOR_LIBS=
-
 PKG_CHECK_MODULES(APPINDICATOR, appindicator3-0.1,
      [AC_DEFINE([HAVE_APPINDICATOR],[1],[Use AppIndicator3-0.1])],
      [AC_MSG_WARN(AppIndicator 3-0.1 not present")])
-
-if test "$APPINDICATOR_LIBS" == ""; then
-   PKG_CHECK_MODULES(APPINDICATOR, 
-     appindicator-0.1 <= 0.2.9 , 
-     [AC_DEFINE([HAVE_APPINDICATOR],[1],[Use AppIndicator 0.2.9])
-      AC_DEFINE([HAVE_APPINDICATOR_029],[1],[Use AppIndicator 0.2.9])
-     ],
-     [AC_MSG_WARN(AppIndicator 0.2.9 not present")])
-fi
-
-if test "$APPINDICATOR_LIBS" == ""; then
-   PKG_CHECK_MODULES(APPINDICATOR, 
-     appindicator-0.1 > 0.2.9, 
-     [AC_DEFINE([HAVE_APPINDICATOR],[1],[Use AppIndicator > 0.2.9])], 
-     [AC_MSG_WARN("AppIndicator > 0.2.9 not present")])
-fi
 AM_CONDITIONAL(APPINDICATOR, test -n "$APPINDICATOR_LIBS")
 AC_SUBST(APPINDICATOR_CFLAGS)
 AC_SUBST(APPINDICATOR_LIBS)
@@ -271,6 +256,7 @@ AC_CONFIG_FILES([
 ])
 
 AC_CHECK_PROGS([HELP2MAN], [help2man])
+AM_CONDITIONAL(HELP2MAN, test -n "$HELP2MAN")
 
 AC_CHECK_PROG([ASCIIDOC], [asciidoc], yes)
 AM_CONDITIONAL(ASCIIDOC, test -n "$ASCIIDOC")
index 5b316bb..7d71d4c 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,12 +79,16 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = doc
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(dist_doc_DATA)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(dist_doc_DATA) \
-       $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
@@ -148,7 +142,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(docdir)"
 DATA = $(dist_doc_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -178,7 +171,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -237,7 +229,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -252,7 +243,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -298,7 +288,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -323,6 +312,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu doc/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -515,8 +505,6 @@ uninstall-am: uninstall-dist_docDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-dist_docDATA
 
-.PRECIOUS: Makefile
-
 
 @ASCIIDOC_TRUE@faq.html: faq.txt ../www/style.css
 @ASCIIDOC_TRUE@        asciidoc --theme style -a themedir=`pwd`/../www -n -a toc faq.txt
index 2e1c240..7bc1bed 100644 (file)
@@ -414,7 +414,7 @@ Include help/faq directly in psensor UI.
 <div id="footer">\r
 <div id="footer-text">\r
 Last updated\r
- 2014-11-20 14:52:59 CET\r
+ 2016-06-05 13:12:53 CEST\r
 </div>\r
 </div>\r
 </body>\r
index cc7b502..526d16a 100644 (file)
@@ -1,5 +1,5 @@
-Psensor TODO
-============
+Psensor TODO
+:docinfo2:
 
 The last version of this file is available at
 http://wpitchoune.net/gitweb/?p=psensor.git;a=blob_plain;f=doc/TODO.html;hb=HEAD.
index 293d41d..2227626 100644 (file)
@@ -678,7 +678,8 @@ the output of the different commands like <code>sensors</code>.</p></div>
 <div class="paragraph"><p>Anyway, as I received several requests about such feature, since the\r
 0.7.0.4 release it is implemented in both psensor ( menu preferences &gt;\r
 sensors &gt; enable log of measures) and psensor-server\r
-(<code>--sensor-log-file</code> option).</p></div>\r
+(<code>--sensor-log-file</code> option). For psensor the log file is\r
+<code>$HOME/.psensor/sensors.log</code>.</p></div>\r
 </div>\r
 </div>\r
 <div class="sect1">\r
@@ -697,42 +698,42 @@ the option <code>Launch on session startup</code>.</p></div>
 <div class="paragraph"><p>This feature is requiring that the Desktop Environment supports the\r
 <a href="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html">XDG\r
 specification</a>.</p></div>\r
-<div class="paragraph" id="S_disk"><p>How to monitor the temperature of a disk with <code>hddtemp</code>?</p></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code>Until the release 1.1.2, Psensor is using +hddtemp+ by default to\r
-retrieve the temperature of the disks.\r
-\r
-If +hddtemp+ is installed but no disk temperature is reported, check\r
-that the daemon is running by using for example the command +ps\r
--eaf|grep hddtemp+.\r
-It should output something like:</code></pre>\r
-</div></div>\r
-<div class="paragraph"><p>root      1433     1  0 May28 ?        00:00:21 /usr/sbin/hddtemp -d -l 127.0.0.1 -p 7634 -s | /dev/sdb</p></div>\r
+</div>\r
+</div>\r
+<div class="sect1">\r
+<h2 id="S_disk">16. How to monitor the temperature of a disk with <code>hddtemp</code>?</h2>\r
+<div class="sectionbody">\r
+<div class="paragraph"><p>Until the release 1.1.2, Psensor is using <code>hddtemp</code> by default to\r
+retrieve the temperature of the disks.</p></div>\r
+<div class="paragraph"><p>If <code>hddtemp</code> is installed but no disk temperature is reported, check\r
+that the daemon is running by using for example the command <code>ps\r
+-eaf|grep hddtemp</code>.\r
+It should output something like:</p></div>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><code>Depending on the Linux distribution, the installation of the +hddtemp+\r
-package does not enable the hddtemp daemon automaticaly.\r
-\r
-In this case, edit the file +/etc/default/hddtemp+ and set\r
-+RUN_DAEMON+ to +"true"+ like in the following example:</code></pre>\r
+<pre><code>root      1433     1  0 May28 ?        00:00:21 /usr/sbin/hddtemp -d -l 127.0.0.1 -p 7634 -s | /dev/sdb</code></pre>\r
 </div></div>\r
-<div class="paragraph"><p># hddtemp network daemon switch. If set to true, hddtemp will listen\r
-# for incoming connections.\r
-RUN_DAEMON="true"</p></div>\r
+<div class="paragraph"><p>Depending on the Linux distribution, the installation of the <code>hddtemp</code>\r
+package does not enable the hddtemp daemon automaticaly.</p></div>\r
+<div class="paragraph"><p>In this case, edit the file <code>/etc/default/hddtemp</code> and set\r
+<code>RUN_DAEMON</code> to <code>"true"</code>. After edition, it should contain the\r
+following line:</p></div>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><code>For Debian/Ubuntu, you can use</code></pre>\r
+<pre><code>RUN_DAEMON="true"</code></pre>\r
 </div></div>\r
-<div class="paragraph"><p>dpkg-reconfigure hddtemp</p></div>\r
+<div class="paragraph"><p>For Debian/Ubuntu, you can use at root:</p></div>\r
 <div class="listingblock">\r
 <div class="content">\r
-<pre><code>and reply +yes+ when asked whether hddtemp daemon must be\r
-run during the startup.\r
-\r
-[[S_SimilarSoft]]\r
-Is there any other similar softwares?</code></pre>\r
+<pre><code>dpkg-reconfigure hddtemp</code></pre>\r
 </div></div>\r
+<div class="paragraph"><p>and reply <code>yes</code> when asked whether hddtemp daemon must be\r
+run during the startup.</p></div>\r
+</div>\r
+</div>\r
+<div class="sect1">\r
+<h2 id="S_SimilarSoft">17. Is there any other similar softwares?</h2>\r
+<div class="sectionbody">\r
 <div class="paragraph"><p>Here is a list of few well-known sensors monitoring softwares:</p></div>\r
 <div class="ulist"><ul>\r
 <li>\r
@@ -760,7 +761,7 @@ more general, but can be configured to display sensors
 </div>\r
 </div>\r
 <div class="sect1">\r
-<h2 id="S_HideSensor">16. Is it possible to hide sensors in the main window?</h2>\r
+<h2 id="S_HideSensor">18. Is it possible to hide sensors in the main window?</h2>\r
 <div class="sectionbody">\r
 <div class="paragraph"><p>Before v1.1.1, the sensors retrieved from the lm-sensor library can be\r
 ignored directly in the lm-sensor configuration. See the manpage\r
@@ -773,7 +774,8 @@ of sensors.conf(5).</p></div>
 <div id="footnotes"><hr /></div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 2014-09-20 09:13:33 CEST\r
+Last updated\r
+ 2016-06-05 13:12:53 CEST\r
 </div>\r
 </div>\r
 </body>\r
index c837bf3..12c8a4f 100644 (file)
@@ -1,5 +1,5 @@
-Psensor Frequently Asked Questions
-==================================
+Psensor Frequently Asked Questions
+:docinfo2:
 
 The last version of this FAQ is available at http://wpitchoune.net/gitweb/?p=psensor.git;a=blob_plain;f=doc/faq.html;hb=HEAD.
 
@@ -216,7 +216,8 @@ the output of the different commands like +sensors+.
 Anyway, as I received several requests about such feature, since the
 0.7.0.4 release it is implemented in both psensor ( menu preferences >
 sensors > enable log of measures) and psensor-server
-(+--sensor-log-file+ option).
+(+--sensor-log-file+ option). For psensor the log file is
++$HOME/.psensor/sensors.log+.
 
 [[S_NO_GRAPH_DISPLAYED]]
 
@@ -241,7 +242,7 @@ specification].
 
 [[S_disk]]
 How to monitor the temperature of a disk with +hddtemp+?
------------------------------------------
+--------------------------------------------------------
 
 Until the release 1.1.2, Psensor is using +hddtemp+ by default to
 retrieve the temperature of the disks.
@@ -259,15 +260,14 @@ Depending on the Linux distribution, the installation of the +hddtemp+
 package does not enable the hddtemp daemon automaticaly.
 
 In this case, edit the file +/etc/default/hddtemp+ and set
-+RUN_DAEMON+ to +"true"+ like in the following example:
++RUN_DAEMON+ to +"true"+. After edition, it should contain the
+following line:
 
 ------------------
-# hddtemp network daemon switch. If set to true, hddtemp will listen
-# for incoming connections.
 RUN_DAEMON="true"
 ------------------
 
-For Debian/Ubuntu, you can use
+For Debian/Ubuntu, you can use at root:
 ------------------
 dpkg-reconfigure hddtemp
 ------------------
index 75ebdc9..7bd0a08 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/14x14
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/14x14/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/14x14/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index dac0fc4..4148855 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/16x16
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/16x16/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/16x16/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index 15bc956..7b2b13a 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/22x22
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/22x22/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/22x22/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index 2b1ede3..25e88f4 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/24x24
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/24x24/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/24x24/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index a2581db..530450f 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/32x32
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/32x32/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/32x32/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index d95067a..ca6ce55 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/48x48
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/48x48/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/48x48/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index e88b13b..0660305 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/64x64
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/64x64/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/64x64/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index 396ca4f..3d3706c 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/hicolor/scalable
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/hicolor/scalable/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/hicolor/scalable/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index eca5dea..f156ce5 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/ubuntu-mono-dark/apps/22
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/ubuntu-mono-dark/apps/22/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/ubuntu-mono-dark/apps/22/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index 8abc89d..a72a4e7 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/ubuntu-mono-dark/status/22
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/ubuntu-mono-dark/status/22/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/ubuntu-mono-dark/status/22/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
index 309d183..2ac509c 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = icons/ubuntu-mono-light/status/22
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(psensordistpixdir)"
 DATA = $(psensordistpix_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -327,6 +316,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/ubuntu-mono-light/status/22/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu icons/ubuntu-mono-light/status/22/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -519,8 +509,6 @@ uninstall-am: uninstall-psensordistpixDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-psensordistpixDATA
 
-.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.
diff --git a/m4/gettext.m4 b/m4/gettext.m4
new file mode 100644 (file)
index 0000000..b5ce322
--- /dev/null
@@ -0,0 +1,417 @@
+# gettext.m4 serial 58 (gettext-0.16)
+dnl Copyright (C) 1995-2006 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+dnl
+dnl This file can can be used in projects which are not available under
+dnl the GNU General Public License or the GNU Library General Public
+dnl License but which still want to provide support for the GNU gettext
+dnl functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+
+dnl Authors:
+dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
+dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2006.
+
+dnl Macro to add for using GNU gettext.
+
+dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
+dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The
+dnl    default (if it is not specified or empty) is 'no-libtool'.
+dnl    INTLSYMBOL should be 'external' for packages with no intl directory,
+dnl    and 'no-libtool' or 'use-libtool' for packages with an intl directory.
+dnl    If INTLSYMBOL is 'use-libtool', then a libtool library
+dnl    $(top_builddir)/intl/libintl.la will be created (shared and/or static,
+dnl    depending on --{enable,disable}-{shared,static} and on the presence of
+dnl    AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
+dnl    $(top_builddir)/intl/libintl.a will be created.
+dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
+dnl    implementations (in libc or libintl) without the ngettext() function
+dnl    will be ignored.  If NEEDSYMBOL is specified and is
+dnl    'need-formatstring-macros', then GNU gettext implementations that don't
+dnl    support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
+dnl INTLDIR is used to find the intl libraries.  If empty,
+dnl    the value `$(top_builddir)/intl/' is used.
+dnl
+dnl The result of the configuration is one of three cases:
+dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
+dnl    and used.
+dnl    Catalog format: GNU --> install in $(datadir)
+dnl    Catalog extension: .mo after installation, .gmo in source tree
+dnl 2) GNU gettext has been found in the system's C library.
+dnl    Catalog format: GNU --> install in $(datadir)
+dnl    Catalog extension: .mo after installation, .gmo in source tree
+dnl 3) No internationalization, always use English msgid.
+dnl    Catalog format: none
+dnl    Catalog extension: none
+dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur.
+dnl The use of .gmo is historical (it was needed to avoid overwriting the
+dnl GNU format catalogs when building on a platform with an X/Open gettext),
+dnl but we keep it in order not to force irrelevant filename changes on the
+dnl maintainers.
+dnl
+AC_DEFUN([AM_GNU_GETTEXT],
+[
+  dnl Argument checking.
+  ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
+    [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
+])])])])])
+  ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
+    [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
+])])])])
+  define([gt_included_intl],
+    ifelse([$1], [external],
+      ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]),
+      [yes]))
+  define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], []))
+  gt_NEEDS_INIT
+  AM_GNU_GETTEXT_NEED([$2])
+
+  AC_REQUIRE([AM_PO_SUBDIRS])dnl
+  ifelse(gt_included_intl, yes, [
+    AC_REQUIRE([AM_INTL_SUBDIR])dnl
+  ])
+
+  dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
+  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+  AC_REQUIRE([AC_LIB_RPATH])
+
+  dnl Sometimes libintl requires libiconv, so first search for libiconv.
+  dnl Ideally we would do this search only after the
+  dnl      if test "$USE_NLS" = "yes"; then
+  dnl        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
+  dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
+  dnl the configure script would need to contain the same shell code
+  dnl again, outside any 'if'. There are two solutions:
+  dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
+  dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
+  dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
+  dnl documented, we avoid it.
+  ifelse(gt_included_intl, yes, , [
+    AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
+  ])
+
+  dnl Sometimes, on MacOS X, libintl requires linking with CoreFoundation.
+  gt_INTL_MACOSX
+
+  dnl Set USE_NLS.
+  AC_REQUIRE([AM_NLS])
+
+  ifelse(gt_included_intl, yes, [
+    BUILD_INCLUDED_LIBINTL=no
+    USE_INCLUDED_LIBINTL=no
+  ])
+  LIBINTL=
+  LTLIBINTL=
+  POSUB=
+
+  dnl Add a version number to the cache macros.
+  case " $gt_needs " in
+    *" need-formatstring-macros "*) gt_api_version=3 ;;
+    *" need-ngettext "*) gt_api_version=2 ;;
+    *) gt_api_version=1 ;;
+  esac
+  gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc"
+  gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl"
+
+  dnl If we use NLS figure out what method
+  if test "$USE_NLS" = "yes"; then
+    gt_use_preinstalled_gnugettext=no
+    ifelse(gt_included_intl, yes, [
+      AC_MSG_CHECKING([whether included gettext is requested])
+      AC_ARG_WITH(included-gettext,
+        [  --with-included-gettext use the GNU gettext library included here],
+        nls_cv_force_use_gnu_gettext=$withval,
+        nls_cv_force_use_gnu_gettext=no)
+      AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
+
+      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
+      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
+    ])
+        dnl User does not insist on using GNU NLS library.  Figure out what
+        dnl to use.  If GNU gettext is available we use this.  Else we have
+        dnl to fall back to GNU NLS library.
+
+        if test $gt_api_version -ge 3; then
+          gt_revision_test_code='[[
+#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
+#endif
+typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
+]]'
+        else
+          gt_revision_test_code=
+        fi
+        if test $gt_api_version -ge 2; then
+          gt_expression_test_code=' + * ngettext ("", "", 0)'
+        else
+          gt_expression_test_code=
+        fi
+
+        AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc],
+         [AC_TRY_LINK([#include <libintl.h>
+$gt_revision_test_code
+extern int _nl_msg_cat_cntr;
+extern int *_nl_domain_bindings;],
+            [bindtextdomain ("", "");
+return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings],
+            [eval "$gt_func_gnugettext_libc=yes"],
+            [eval "$gt_func_gnugettext_libc=no"])])
+
+        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
+          dnl Sometimes libintl requires libiconv, so first search for libiconv.
+          ifelse(gt_included_intl, yes, , [
+            AM_ICONV_LINK
+          ])
+          dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL
+          dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv])
+          dnl because that would add "-liconv" to LIBINTL and LTLIBINTL
+          dnl even if libiconv doesn't exist.
+          AC_LIB_LINKFLAGS_BODY([intl])
+          AC_CACHE_CHECK([for GNU gettext in libintl],
+            [$gt_func_gnugettext_libintl],
+           [gt_save_CPPFLAGS="$CPPFLAGS"
+            CPPFLAGS="$CPPFLAGS $INCINTL"
+            gt_save_LIBS="$LIBS"
+            LIBS="$LIBS $LIBINTL"
+            dnl Now see whether libintl exists and does not depend on libiconv.
+            AC_TRY_LINK([#include <libintl.h>
+$gt_revision_test_code
+extern int _nl_msg_cat_cntr;
+extern
+#ifdef __cplusplus
+"C"
+#endif
+const char *_nl_expand_alias (const char *);],
+              [bindtextdomain ("", "");
+return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")],
+              [eval "$gt_func_gnugettext_libintl=yes"],
+              [eval "$gt_func_gnugettext_libintl=no"])
+            dnl Now see whether libintl exists and depends on libiconv.
+            if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
+              LIBS="$LIBS $LIBICONV"
+              AC_TRY_LINK([#include <libintl.h>
+$gt_revision_test_code
+extern int _nl_msg_cat_cntr;
+extern
+#ifdef __cplusplus
+"C"
+#endif
+const char *_nl_expand_alias (const char *);],
+                [bindtextdomain ("", "");
+return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")],
+               [LIBINTL="$LIBINTL $LIBICONV"
+                LTLIBINTL="$LTLIBINTL $LTLIBICONV"
+                eval "$gt_func_gnugettext_libintl=yes"
+               ])
+            fi
+            CPPFLAGS="$gt_save_CPPFLAGS"
+            LIBS="$gt_save_LIBS"])
+        fi
+
+        dnl If an already present or preinstalled GNU gettext() is found,
+        dnl use it.  But if this macro is used in GNU gettext, and GNU
+        dnl gettext is already preinstalled in libintl, we update this
+        dnl libintl.  (Cf. the install rule in intl/Makefile.in.)
+        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
+           || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \
+                && test "$PACKAGE" != gettext-runtime \
+                && test "$PACKAGE" != gettext-tools; }; then
+          gt_use_preinstalled_gnugettext=yes
+        else
+          dnl Reset the values set by searching for libintl.
+          LIBINTL=
+          LTLIBINTL=
+          INCINTL=
+        fi
+
+    ifelse(gt_included_intl, yes, [
+        if test "$gt_use_preinstalled_gnugettext" != "yes"; then
+          dnl GNU gettext is not found in the C library.
+          dnl Fall back on included GNU gettext library.
+          nls_cv_use_gnu_gettext=yes
+        fi
+      fi
+
+      if test "$nls_cv_use_gnu_gettext" = "yes"; then
+        dnl Mark actions used to generate GNU NLS library.
+        BUILD_INCLUDED_LIBINTL=yes
+        USE_INCLUDED_LIBINTL=yes
+        LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV $LIBTHREAD"
+        LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD"
+        LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
+      fi
+
+      CATOBJEXT=
+      if test "$gt_use_preinstalled_gnugettext" = "yes" \
+         || test "$nls_cv_use_gnu_gettext" = "yes"; then
+        dnl Mark actions to use GNU gettext tools.
+        CATOBJEXT=.gmo
+      fi
+    ])
+
+    if test -n "$INTL_MACOSX_LIBS"; then
+      if test "$gt_use_preinstalled_gnugettext" = "yes" \
+         || test "$nls_cv_use_gnu_gettext" = "yes"; then
+        dnl Some extra flags are needed during linking.
+        LIBINTL="$LIBINTL $INTL_MACOSX_LIBS"
+        LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS"
+      fi
+    fi
+
+    if test "$gt_use_preinstalled_gnugettext" = "yes" \
+       || test "$nls_cv_use_gnu_gettext" = "yes"; then
+      AC_DEFINE(ENABLE_NLS, 1,
+        [Define to 1 if translation of program messages to the user's native language
+   is requested.])
+    else
+      USE_NLS=no
+    fi
+  fi
+
+  AC_MSG_CHECKING([whether to use NLS])
+  AC_MSG_RESULT([$USE_NLS])
+  if test "$USE_NLS" = "yes"; then
+    AC_MSG_CHECKING([where the gettext function comes from])
+    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
+      if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
+        gt_source="external libintl"
+      else
+        gt_source="libc"
+      fi
+    else
+      gt_source="included intl directory"
+    fi
+    AC_MSG_RESULT([$gt_source])
+  fi
+
+  if test "$USE_NLS" = "yes"; then
+
+    if test "$gt_use_preinstalled_gnugettext" = "yes"; then
+      if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
+        AC_MSG_CHECKING([how to link with libintl])
+        AC_MSG_RESULT([$LIBINTL])
+        AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL])
+      fi
+
+      dnl For backward compatibility. Some packages may be using this.
+      AC_DEFINE(HAVE_GETTEXT, 1,
+       [Define if the GNU gettext() function is already present or preinstalled.])
+      AC_DEFINE(HAVE_DCGETTEXT, 1,
+       [Define if the GNU dcgettext() function is already present or preinstalled.])
+    fi
+
+    dnl We need to process the po/ directory.
+    POSUB=po
+  fi
+
+  ifelse(gt_included_intl, yes, [
+    dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
+    dnl to 'yes' because some of the testsuite requires it.
+    if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
+      BUILD_INCLUDED_LIBINTL=yes
+    fi
+
+    dnl Make all variables we use known to autoconf.
+    AC_SUBST(BUILD_INCLUDED_LIBINTL)
+    AC_SUBST(USE_INCLUDED_LIBINTL)
+    AC_SUBST(CATOBJEXT)
+
+    dnl For backward compatibility. Some configure.ins may be using this.
+    nls_cv_header_intl=
+    nls_cv_header_libgt=
+
+    dnl For backward compatibility. Some Makefiles may be using this.
+    DATADIRNAME=share
+    AC_SUBST(DATADIRNAME)
+
+    dnl For backward compatibility. Some Makefiles may be using this.
+    INSTOBJEXT=.mo
+    AC_SUBST(INSTOBJEXT)
+
+    dnl For backward compatibility. Some Makefiles may be using this.
+    GENCAT=gencat
+    AC_SUBST(GENCAT)
+
+    dnl For backward compatibility. Some Makefiles may be using this.
+    INTLOBJS=
+    if test "$USE_INCLUDED_LIBINTL" = yes; then
+      INTLOBJS="\$(GETTOBJS)"
+    fi
+    AC_SUBST(INTLOBJS)
+
+    dnl Enable libtool support if the surrounding package wishes it.
+    INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix
+    AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX)
+  ])
+
+  dnl For backward compatibility. Some Makefiles may be using this.
+  INTLLIBS="$LIBINTL"
+  AC_SUBST(INTLLIBS)
+
+  dnl Make all documented variables known to autoconf.
+  AC_SUBST(LIBINTL)
+  AC_SUBST(LTLIBINTL)
+  AC_SUBST(POSUB)
+])
+
+
+dnl Checks for special options needed on MacOS X.
+dnl Defines INTL_MACOSX_LIBS.
+AC_DEFUN([gt_INTL_MACOSX],
+[
+  dnl Check for API introduced in MacOS X 10.2.
+  AC_CACHE_CHECK([for CFPreferencesCopyAppValue],
+    gt_cv_func_CFPreferencesCopyAppValue,
+    [gt_save_LIBS="$LIBS"
+     LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
+     AC_TRY_LINK([#include <CoreFoundation/CFPreferences.h>],
+       [CFPreferencesCopyAppValue(NULL, NULL)],
+       [gt_cv_func_CFPreferencesCopyAppValue=yes],
+       [gt_cv_func_CFPreferencesCopyAppValue=no])
+     LIBS="$gt_save_LIBS"])
+  if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
+    AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], 1,
+      [Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
+  fi
+  dnl Check for API introduced in MacOS X 10.3.
+  AC_CACHE_CHECK([for CFLocaleCopyCurrent], gt_cv_func_CFLocaleCopyCurrent,
+    [gt_save_LIBS="$LIBS"
+     LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
+     AC_TRY_LINK([#include <CoreFoundation/CFLocale.h>], [CFLocaleCopyCurrent();],
+       [gt_cv_func_CFLocaleCopyCurrent=yes],
+       [gt_cv_func_CFLocaleCopyCurrent=no])
+     LIBS="$gt_save_LIBS"])
+  if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+    AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], 1,
+      [Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
+  fi
+  INTL_MACOSX_LIBS=
+  if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+    INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
+  fi
+  AC_SUBST([INTL_MACOSX_LIBS])
+])
+
+
+dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized.
+m4_define([gt_NEEDS_INIT],
+[
+  m4_divert_text([DEFAULTS], [gt_needs=])
+  m4_define([gt_NEEDS_INIT], [])
+])
+
+
+dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL])
+AC_DEFUN([AM_GNU_GETTEXT_NEED],
+[
+  m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"])
+])
+
+
+dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
+AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])
diff --git a/m4/iconv.m4 b/m4/iconv.m4
new file mode 100644 (file)
index 0000000..654c415
--- /dev/null
@@ -0,0 +1,101 @@
+# iconv.m4 serial AM4 (gettext-0.11.3)
+dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Bruno Haible.
+
+AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
+[
+  dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
+  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+  AC_REQUIRE([AC_LIB_RPATH])
+
+  dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
+  dnl accordingly.
+  AC_LIB_LINKFLAGS_BODY([iconv])
+])
+
+AC_DEFUN([AM_ICONV_LINK],
+[
+  dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
+  dnl those with the standalone portable GNU libiconv installed).
+
+  dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
+  dnl accordingly.
+  AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
+
+  dnl Add $INCICONV to CPPFLAGS before performing the following checks,
+  dnl because if the user has installed libiconv and not disabled its use
+  dnl via --without-libiconv-prefix, he wants to use it. The first
+  dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
+  am_save_CPPFLAGS="$CPPFLAGS"
+  AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
+
+  AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
+    am_cv_func_iconv="no, consider installing GNU libiconv"
+    am_cv_lib_iconv=no
+    AC_TRY_LINK([#include <stdlib.h>
+#include <iconv.h>],
+      [iconv_t cd = iconv_open("","");
+       iconv(cd,NULL,NULL,NULL,NULL);
+       iconv_close(cd);],
+      am_cv_func_iconv=yes)
+    if test "$am_cv_func_iconv" != yes; then
+      am_save_LIBS="$LIBS"
+      LIBS="$LIBS $LIBICONV"
+      AC_TRY_LINK([#include <stdlib.h>
+#include <iconv.h>],
+        [iconv_t cd = iconv_open("","");
+         iconv(cd,NULL,NULL,NULL,NULL);
+         iconv_close(cd);],
+        am_cv_lib_iconv=yes
+        am_cv_func_iconv=yes)
+      LIBS="$am_save_LIBS"
+    fi
+  ])
+  if test "$am_cv_func_iconv" = yes; then
+    AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
+  fi
+  if test "$am_cv_lib_iconv" = yes; then
+    AC_MSG_CHECKING([how to link with libiconv])
+    AC_MSG_RESULT([$LIBICONV])
+  else
+    dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
+    dnl either.
+    CPPFLAGS="$am_save_CPPFLAGS"
+    LIBICONV=
+    LTLIBICONV=
+  fi
+  AC_SUBST(LIBICONV)
+  AC_SUBST(LTLIBICONV)
+])
+
+AC_DEFUN([AM_ICONV],
+[
+  AM_ICONV_LINK
+  if test "$am_cv_func_iconv" = yes; then
+    AC_MSG_CHECKING([for iconv declaration])
+    AC_CACHE_VAL(am_cv_proto_iconv, [
+      AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <iconv.h>
+extern
+#ifdef __cplusplus
+"C"
+#endif
+#if defined(__STDC__) || defined(__cplusplus)
+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
+#else
+size_t iconv();
+#endif
+], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
+      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
+    am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
+    AC_MSG_RESULT([$]{ac_t:-
+         }[$]am_cv_proto_iconv)
+    AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
+      [Define as const if the declaration of iconv() needs const.])
+  fi
+])
diff --git a/m4/lib-ld.m4 b/m4/lib-ld.m4
new file mode 100644 (file)
index 0000000..96c4e2c
--- /dev/null
@@ -0,0 +1,110 @@
+# lib-ld.m4 serial 3 (gettext-0.13)
+dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl Subroutines of libtool.m4,
+dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
+dnl with libtool.m4.
+
+dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
+AC_DEFUN([AC_LIB_PROG_LD_GNU],
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
+[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+  acl_cv_prog_gnu_ld=yes ;;
+*)
+  acl_cv_prog_gnu_ld=no ;;
+esac])
+with_gnu_ld=$acl_cv_prog_gnu_ld
+])
+
+dnl From libtool-1.4. Sets the variable LD.
+AC_DEFUN([AC_LIB_PROG_LD],
+[AC_ARG_WITH(gnu-ld,
+[  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
+test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+# Prepare PATH_SEPARATOR.
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+ac_prog=ld
+if test "$GCC" = yes; then
+  # Check if gcc -print-prog-name=ld gives a path.
+  AC_MSG_CHECKING([for ld used by GCC])
+  case $host in
+  *-*-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` ;;
+  esac
+  case $ac_prog in
+    # Accept absolute paths.
+    [[\\/]* | [A-Za-z]:[\\/]*)]
+      [re_direlt='/[^/][^/]*/\.\./']
+      # Canonicalize the path of ld
+      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
+      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"
+      ;;
+  "")
+    # If it fails, then pretend we aren't using GCC.
+    ac_prog=ld
+    ;;
+  *)
+    # If it is relative, then search for the first ld in PATH.
+    with_gnu_ld=unknown
+    ;;
+  esac
+elif test "$with_gnu_ld" = yes; then
+  AC_MSG_CHECKING([for GNU ld])
+else
+  AC_MSG_CHECKING([for non-GNU ld])
+fi
+AC_CACHE_VAL(acl_cv_path_LD,
+[if test -z "$LD"; then
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+      acl_cv_path_LD="$ac_dir/$ac_prog"
+      # Check to see if the program is GNU ld.  I'd rather use --version,
+      # but apparently some GNU ld's only accept -v.
+      # Break only if it was the GNU/non-GNU ld that we prefer.
+      case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in
+      *GNU* | *'with BFD'*)
+       test "$with_gnu_ld" != no && break ;;
+      *)
+       test "$with_gnu_ld" != yes && break ;;
+      esac
+    fi
+  done
+  IFS="$ac_save_ifs"
+else
+  acl_cv_path_LD="$LD" # Let the user override the test with a path.
+fi])
+LD="$acl_cv_path_LD"
+if test -n "$LD"; then
+  AC_MSG_RESULT($LD)
+else
+  AC_MSG_RESULT(no)
+fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+AC_LIB_PROG_LD_GNU
+])
diff --git a/m4/lib-link.m4 b/m4/lib-link.m4
new file mode 100644 (file)
index 0000000..f95b7ba
--- /dev/null
@@ -0,0 +1,644 @@
+# lib-link.m4 serial 9 (gettext-0.16)
+dnl Copyright (C) 2001-2006 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Bruno Haible.
+
+AC_PREREQ(2.50)
+
+dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
+dnl the libraries corresponding to explicit and implicit dependencies.
+dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
+dnl augments the CPPFLAGS variable.
+AC_DEFUN([AC_LIB_LINKFLAGS],
+[
+  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+  AC_REQUIRE([AC_LIB_RPATH])
+  define([Name],[translit([$1],[./-], [___])])
+  define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
+                               [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
+  AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
+    AC_LIB_LINKFLAGS_BODY([$1], [$2])
+    ac_cv_lib[]Name[]_libs="$LIB[]NAME"
+    ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
+    ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
+  ])
+  LIB[]NAME="$ac_cv_lib[]Name[]_libs"
+  LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
+  INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
+  AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
+  AC_SUBST([LIB]NAME)
+  AC_SUBST([LTLIB]NAME)
+  dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
+  dnl results of this search when this library appears as a dependency.
+  HAVE_LIB[]NAME=yes
+  undefine([Name])
+  undefine([NAME])
+])
+
+dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode)
+dnl searches for libname and the libraries corresponding to explicit and
+dnl implicit dependencies, together with the specified include files and
+dnl the ability to compile and link the specified testcode. If found, it
+dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
+dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
+dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
+dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
+AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
+[
+  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+  AC_REQUIRE([AC_LIB_RPATH])
+  define([Name],[translit([$1],[./-], [___])])
+  define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
+                               [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
+
+  dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
+  dnl accordingly.
+  AC_LIB_LINKFLAGS_BODY([$1], [$2])
+
+  dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
+  dnl because if the user has installed lib[]Name and not disabled its use
+  dnl via --without-lib[]Name-prefix, he wants to use it.
+  ac_save_CPPFLAGS="$CPPFLAGS"
+  AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
+
+  AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
+    ac_save_LIBS="$LIBS"
+    LIBS="$LIBS $LIB[]NAME"
+    AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
+    LIBS="$ac_save_LIBS"
+  ])
+  if test "$ac_cv_lib[]Name" = yes; then
+    HAVE_LIB[]NAME=yes
+    AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
+    AC_MSG_CHECKING([how to link with lib[]$1])
+    AC_MSG_RESULT([$LIB[]NAME])
+  else
+    HAVE_LIB[]NAME=no
+    dnl If $LIB[]NAME didn't lead to a usable library, we don't need
+    dnl $INC[]NAME either.
+    CPPFLAGS="$ac_save_CPPFLAGS"
+    LIB[]NAME=
+    LTLIB[]NAME=
+  fi
+  AC_SUBST([HAVE_LIB]NAME)
+  AC_SUBST([LIB]NAME)
+  AC_SUBST([LTLIB]NAME)
+  undefine([Name])
+  undefine([NAME])
+])
+
+dnl Determine the platform dependent parameters needed to use rpath:
+dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
+dnl hardcode_direct, hardcode_minus_L.
+AC_DEFUN([AC_LIB_RPATH],
+[
+  dnl Tell automake >= 1.10 to complain if config.rpath is missing.
+  m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])])
+  AC_REQUIRE([AC_PROG_CC])                dnl we use $CC, $GCC, $LDFLAGS
+  AC_REQUIRE([AC_LIB_PROG_LD])            dnl we use $LD, $with_gnu_ld
+  AC_REQUIRE([AC_CANONICAL_HOST])         dnl we use $host
+  AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
+  AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [
+    CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
+    ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
+    . ./conftest.sh
+    rm -f ./conftest.sh
+    acl_cv_rpath=done
+  ])
+  wl="$acl_cv_wl"
+  libext="$acl_cv_libext"
+  shlibext="$acl_cv_shlibext"
+  hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
+  hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
+  hardcode_direct="$acl_cv_hardcode_direct"
+  hardcode_minus_L="$acl_cv_hardcode_minus_L"
+  dnl Determine whether the user wants rpath handling at all.
+  AC_ARG_ENABLE(rpath,
+    [  --disable-rpath         do not hardcode runtime library paths],
+    :, enable_rpath=yes)
+])
+
+dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
+dnl the libraries corresponding to explicit and implicit dependencies.
+dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
+AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
+[
+  AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
+  define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
+                               [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
+  dnl By default, look in $includedir and $libdir.
+  use_additional=yes
+  AC_LIB_WITH_FINAL_PREFIX([
+    eval additional_includedir=\"$includedir\"
+    eval additional_libdir=\"$libdir\"
+  ])
+  AC_LIB_ARG_WITH([lib$1-prefix],
+[  --with-lib$1-prefix[=DIR]  search for lib$1 in DIR/include and DIR/lib
+  --without-lib$1-prefix     don't search for lib$1 in includedir and libdir],
+[
+    if test "X$withval" = "Xno"; then
+      use_additional=no
+    else
+      if test "X$withval" = "X"; then
+        AC_LIB_WITH_FINAL_PREFIX([
+          eval additional_includedir=\"$includedir\"
+          eval additional_libdir=\"$libdir\"
+        ])
+      else
+        additional_includedir="$withval/include"
+        additional_libdir="$withval/$acl_libdirstem"
+      fi
+    fi
+])
+  dnl Search the library and its dependencies in $additional_libdir and
+  dnl $LDFLAGS. Using breadth-first-seach.
+  LIB[]NAME=
+  LTLIB[]NAME=
+  INC[]NAME=
+  rpathdirs=
+  ltrpathdirs=
+  names_already_handled=
+  names_next_round='$1 $2'
+  while test -n "$names_next_round"; do
+    names_this_round="$names_next_round"
+    names_next_round=
+    for name in $names_this_round; do
+      already_handled=
+      for n in $names_already_handled; do
+        if test "$n" = "$name"; then
+          already_handled=yes
+          break
+        fi
+      done
+      if test -z "$already_handled"; then
+        names_already_handled="$names_already_handled $name"
+        dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
+        dnl or AC_LIB_HAVE_LINKFLAGS call.
+        uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
+        eval value=\"\$HAVE_LIB$uppername\"
+        if test -n "$value"; then
+          if test "$value" = yes; then
+            eval value=\"\$LIB$uppername\"
+            test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
+            eval value=\"\$LTLIB$uppername\"
+            test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
+          else
+            dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
+            dnl that this library doesn't exist. So just drop it.
+            :
+          fi
+        else
+          dnl Search the library lib$name in $additional_libdir and $LDFLAGS
+          dnl and the already constructed $LIBNAME/$LTLIBNAME.
+          found_dir=
+          found_la=
+          found_so=
+          found_a=
+          if test $use_additional = yes; then
+            if test -n "$shlibext" \
+               && { test -f "$additional_libdir/lib$name.$shlibext" \
+                    || { test "$shlibext" = dll \
+                         && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
+              found_dir="$additional_libdir"
+              if test -f "$additional_libdir/lib$name.$shlibext"; then
+                found_so="$additional_libdir/lib$name.$shlibext"
+              else
+                found_so="$additional_libdir/lib$name.dll.a"
+              fi
+              if test -f "$additional_libdir/lib$name.la"; then
+                found_la="$additional_libdir/lib$name.la"
+              fi
+            else
+              if test -f "$additional_libdir/lib$name.$libext"; then
+                found_dir="$additional_libdir"
+                found_a="$additional_libdir/lib$name.$libext"
+                if test -f "$additional_libdir/lib$name.la"; then
+                  found_la="$additional_libdir/lib$name.la"
+                fi
+              fi
+            fi
+          fi
+          if test "X$found_dir" = "X"; then
+            for x in $LDFLAGS $LTLIB[]NAME; do
+              AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+              case "$x" in
+                -L*)
+                  dir=`echo "X$x" | sed -e 's/^X-L//'`
+                  if test -n "$shlibext" \
+                     && { test -f "$dir/lib$name.$shlibext" \
+                          || { test "$shlibext" = dll \
+                               && test -f "$dir/lib$name.dll.a"; }; }; then
+                    found_dir="$dir"
+                    if test -f "$dir/lib$name.$shlibext"; then
+                      found_so="$dir/lib$name.$shlibext"
+                    else
+                      found_so="$dir/lib$name.dll.a"
+                    fi
+                    if test -f "$dir/lib$name.la"; then
+                      found_la="$dir/lib$name.la"
+                    fi
+                  else
+                    if test -f "$dir/lib$name.$libext"; then
+                      found_dir="$dir"
+                      found_a="$dir/lib$name.$libext"
+                      if test -f "$dir/lib$name.la"; then
+                        found_la="$dir/lib$name.la"
+                      fi
+                    fi
+                  fi
+                  ;;
+              esac
+              if test "X$found_dir" != "X"; then
+                break
+              fi
+            done
+          fi
+          if test "X$found_dir" != "X"; then
+            dnl Found the library.
+            LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
+            if test "X$found_so" != "X"; then
+              dnl Linking with a shared library. We attempt to hardcode its
+              dnl directory into the executable's runpath, unless it's the
+              dnl standard /usr/lib.
+              if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/$acl_libdirstem"; then
+                dnl No hardcoding is needed.
+                LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+              else
+                dnl Use an explicit option to hardcode DIR into the resulting
+                dnl binary.
+                dnl Potentially add DIR to ltrpathdirs.
+                dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
+                haveit=
+                for x in $ltrpathdirs; do
+                  if test "X$x" = "X$found_dir"; then
+                    haveit=yes
+                    break
+                  fi
+                done
+                if test -z "$haveit"; then
+                  ltrpathdirs="$ltrpathdirs $found_dir"
+                fi
+                dnl The hardcoding into $LIBNAME is system dependent.
+                if test "$hardcode_direct" = yes; then
+                  dnl Using DIR/libNAME.so during linking hardcodes DIR into the
+                  dnl resulting binary.
+                  LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+                else
+                  if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
+                    dnl Use an explicit option to hardcode DIR into the resulting
+                    dnl binary.
+                    LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+                    dnl Potentially add DIR to rpathdirs.
+                    dnl The rpathdirs will be appended to $LIBNAME at the end.
+                    haveit=
+                    for x in $rpathdirs; do
+                      if test "X$x" = "X$found_dir"; then
+                        haveit=yes
+                        break
+                      fi
+                    done
+                    if test -z "$haveit"; then
+                      rpathdirs="$rpathdirs $found_dir"
+                    fi
+                  else
+                    dnl Rely on "-L$found_dir".
+                    dnl But don't add it if it's already contained in the LDFLAGS
+                    dnl or the already constructed $LIBNAME
+                    haveit=
+                    for x in $LDFLAGS $LIB[]NAME; do
+                      AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+                      if test "X$x" = "X-L$found_dir"; then
+                        haveit=yes
+                        break
+                      fi
+                    done
+                    if test -z "$haveit"; then
+                      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
+                    fi
+                    if test "$hardcode_minus_L" != no; then
+                      dnl FIXME: Not sure whether we should use
+                      dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
+                      dnl here.
+                      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+                    else
+                      dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
+                      dnl here, because this doesn't fit in flags passed to the
+                      dnl compiler. So give up. No hardcoding. This affects only
+                      dnl very old systems.
+                      dnl FIXME: Not sure whether we should use
+                      dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
+                      dnl here.
+                      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
+                    fi
+                  fi
+                fi
+              fi
+            else
+              if test "X$found_a" != "X"; then
+                dnl Linking with a static library.
+                LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
+              else
+                dnl We shouldn't come here, but anyway it's good to have a
+                dnl fallback.
+                LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
+              fi
+            fi
+            dnl Assume the include files are nearby.
+            additional_includedir=
+            case "$found_dir" in
+              */$acl_libdirstem | */$acl_libdirstem/)
+                basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
+                additional_includedir="$basedir/include"
+                ;;
+            esac
+            if test "X$additional_includedir" != "X"; then
+              dnl Potentially add $additional_includedir to $INCNAME.
+              dnl But don't add it
+              dnl   1. if it's the standard /usr/include,
+              dnl   2. if it's /usr/local/include and we are using GCC on Linux,
+              dnl   3. if it's already present in $CPPFLAGS or the already
+              dnl      constructed $INCNAME,
+              dnl   4. if it doesn't exist as a directory.
+              if test "X$additional_includedir" != "X/usr/include"; then
+                haveit=
+                if test "X$additional_includedir" = "X/usr/local/include"; then
+                  if test -n "$GCC"; then
+                    case $host_os in
+                      linux* | gnu* | k*bsd*-gnu) haveit=yes;;
+                    esac
+                  fi
+                fi
+                if test -z "$haveit"; then
+                  for x in $CPPFLAGS $INC[]NAME; do
+                    AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+                    if test "X$x" = "X-I$additional_includedir"; then
+                      haveit=yes
+                      break
+                    fi
+                  done
+                  if test -z "$haveit"; then
+                    if test -d "$additional_includedir"; then
+                      dnl Really add $additional_includedir to $INCNAME.
+                      INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir"
+                    fi
+                  fi
+                fi
+              fi
+            fi
+            dnl Look for dependencies.
+            if test -n "$found_la"; then
+              dnl Read the .la file. It defines the variables
+              dnl dlname, library_names, old_library, dependency_libs, current,
+              dnl age, revision, installed, dlopen, dlpreopen, libdir.
+              save_libdir="$libdir"
+              case "$found_la" in
+                */* | *\\*) . "$found_la" ;;
+                *) . "./$found_la" ;;
+              esac
+              libdir="$save_libdir"
+              dnl We use only dependency_libs.
+              for dep in $dependency_libs; do
+                case "$dep" in
+                  -L*)
+                    additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
+                    dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
+                    dnl But don't add it
+                    dnl   1. if it's the standard /usr/lib,
+                    dnl   2. if it's /usr/local/lib and we are using GCC on Linux,
+                    dnl   3. if it's already present in $LDFLAGS or the already
+                    dnl      constructed $LIBNAME,
+                    dnl   4. if it doesn't exist as a directory.
+                    if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
+                      haveit=
+                      if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
+                        if test -n "$GCC"; then
+                          case $host_os in
+                            linux* | gnu* | k*bsd*-gnu) haveit=yes;;
+                          esac
+                        fi
+                      fi
+                      if test -z "$haveit"; then
+                        haveit=
+                        for x in $LDFLAGS $LIB[]NAME; do
+                          AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+                          if test "X$x" = "X-L$additional_libdir"; then
+                            haveit=yes
+                            break
+                          fi
+                        done
+                        if test -z "$haveit"; then
+                          if test -d "$additional_libdir"; then
+                            dnl Really add $additional_libdir to $LIBNAME.
+                            LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
+                          fi
+                        fi
+                        haveit=
+                        for x in $LDFLAGS $LTLIB[]NAME; do
+                          AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+                          if test "X$x" = "X-L$additional_libdir"; then
+                            haveit=yes
+                            break
+                          fi
+                        done
+                        if test -z "$haveit"; then
+                          if test -d "$additional_libdir"; then
+                            dnl Really add $additional_libdir to $LTLIBNAME.
+                            LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
+                          fi
+                        fi
+                      fi
+                    fi
+                    ;;
+                  -R*)
+                    dir=`echo "X$dep" | sed -e 's/^X-R//'`
+                    if test "$enable_rpath" != no; then
+                      dnl Potentially add DIR to rpathdirs.
+                      dnl The rpathdirs will be appended to $LIBNAME at the end.
+                      haveit=
+                      for x in $rpathdirs; do
+                        if test "X$x" = "X$dir"; then
+                          haveit=yes
+                          break
+                        fi
+                      done
+                      if test -z "$haveit"; then
+                        rpathdirs="$rpathdirs $dir"
+                      fi
+                      dnl Potentially add DIR to ltrpathdirs.
+                      dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
+                      haveit=
+                      for x in $ltrpathdirs; do
+                        if test "X$x" = "X$dir"; then
+                          haveit=yes
+                          break
+                        fi
+                      done
+                      if test -z "$haveit"; then
+                        ltrpathdirs="$ltrpathdirs $dir"
+                      fi
+                    fi
+                    ;;
+                  -l*)
+                    dnl Handle this in the next round.
+                    names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
+                    ;;
+                  *.la)
+                    dnl Handle this in the next round. Throw away the .la's
+                    dnl directory; it is already contained in a preceding -L
+                    dnl option.
+                    names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
+                    ;;
+                  *)
+                    dnl Most likely an immediate library name.
+                    LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
+                    LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
+                    ;;
+                esac
+              done
+            fi
+          else
+            dnl Didn't find the library; assume it is in the system directories
+            dnl known to the linker and runtime loader. (All the system
+            dnl directories known to the linker should also be known to the
+            dnl runtime loader, otherwise the system is severely misconfigured.)
+            LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
+            LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
+          fi
+        fi
+      fi
+    done
+  done
+  if test "X$rpathdirs" != "X"; then
+    if test -n "$hardcode_libdir_separator"; then
+      dnl Weird platform: only the last -rpath option counts, the user must
+      dnl pass all path elements in one option. We can arrange that for a
+      dnl single library, but not when more than one $LIBNAMEs are used.
+      alldirs=
+      for found_dir in $rpathdirs; do
+        alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
+      done
+      dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
+      acl_save_libdir="$libdir"
+      libdir="$alldirs"
+      eval flag=\"$hardcode_libdir_flag_spec\"
+      libdir="$acl_save_libdir"
+      LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
+    else
+      dnl The -rpath options are cumulative.
+      for found_dir in $rpathdirs; do
+        acl_save_libdir="$libdir"
+        libdir="$found_dir"
+        eval flag=\"$hardcode_libdir_flag_spec\"
+        libdir="$acl_save_libdir"
+        LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
+      done
+    fi
+  fi
+  if test "X$ltrpathdirs" != "X"; then
+    dnl When using libtool, the option that works for both libraries and
+    dnl executables is -R. The -R options are cumulative.
+    for found_dir in $ltrpathdirs; do
+      LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
+    done
+  fi
+])
+
+dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
+dnl unless already present in VAR.
+dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
+dnl contains two or three consecutive elements that belong together.
+AC_DEFUN([AC_LIB_APPENDTOVAR],
+[
+  for element in [$2]; do
+    haveit=
+    for x in $[$1]; do
+      AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+      if test "X$x" = "X$element"; then
+        haveit=yes
+        break
+      fi
+    done
+    if test -z "$haveit"; then
+      [$1]="${[$1]}${[$1]:+ }$element"
+    fi
+  done
+])
+
+dnl For those cases where a variable contains several -L and -l options
+dnl referring to unknown libraries and directories, this macro determines the
+dnl necessary additional linker options for the runtime path.
+dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL])
+dnl sets LDADDVAR to linker options needed together with LIBSVALUE.
+dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed,
+dnl otherwise linking without libtool is assumed.
+AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
+[
+  AC_REQUIRE([AC_LIB_RPATH])
+  AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
+  $1=
+  if test "$enable_rpath" != no; then
+    if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
+      dnl Use an explicit option to hardcode directories into the resulting
+      dnl binary.
+      rpathdirs=
+      next=
+      for opt in $2; do
+        if test -n "$next"; then
+          dir="$next"
+          dnl No need to hardcode the standard /usr/lib.
+          if test "X$dir" != "X/usr/$acl_libdirstem"; then
+            rpathdirs="$rpathdirs $dir"
+          fi
+          next=
+        else
+          case $opt in
+            -L) next=yes ;;
+            -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'`
+                 dnl No need to hardcode the standard /usr/lib.
+                 if test "X$dir" != "X/usr/$acl_libdirstem"; then
+                   rpathdirs="$rpathdirs $dir"
+                 fi
+                 next= ;;
+            *) next= ;;
+          esac
+        fi
+      done
+      if test "X$rpathdirs" != "X"; then
+        if test -n ""$3""; then
+          dnl libtool is used for linking. Use -R options.
+          for dir in $rpathdirs; do
+            $1="${$1}${$1:+ }-R$dir"
+          done
+        else
+          dnl The linker is used for linking directly.
+          if test -n "$hardcode_libdir_separator"; then
+            dnl Weird platform: only the last -rpath option counts, the user
+            dnl must pass all path elements in one option.
+            alldirs=
+            for dir in $rpathdirs; do
+              alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$dir"
+            done
+            acl_save_libdir="$libdir"
+            libdir="$alldirs"
+            eval flag=\"$hardcode_libdir_flag_spec\"
+            libdir="$acl_save_libdir"
+            $1="$flag"
+          else
+            dnl The -rpath options are cumulative.
+            for dir in $rpathdirs; do
+              acl_save_libdir="$libdir"
+              libdir="$dir"
+              eval flag=\"$hardcode_libdir_flag_spec\"
+              libdir="$acl_save_libdir"
+              $1="${$1}${$1:+ }$flag"
+            done
+          fi
+        fi
+      fi
+    fi
+  fi
+  AC_SUBST([$1])
+])
diff --git a/m4/lib-prefix.m4 b/m4/lib-prefix.m4
new file mode 100644 (file)
index 0000000..a8684e1
--- /dev/null
@@ -0,0 +1,185 @@
+# lib-prefix.m4 serial 5 (gettext-0.15)
+dnl Copyright (C) 2001-2005 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Bruno Haible.
+
+dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and
+dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't
+dnl require excessive bracketing.
+ifdef([AC_HELP_STRING],
+[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])],
+[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])])
+
+dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
+dnl to access previously installed libraries. The basic assumption is that
+dnl a user will want packages to use other packages he previously installed
+dnl with the same --prefix option.
+dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate
+dnl libraries, but is otherwise very convenient.
+AC_DEFUN([AC_LIB_PREFIX],
+[
+  AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
+  AC_REQUIRE([AC_PROG_CC])
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
+  AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+  dnl By default, look in $includedir and $libdir.
+  use_additional=yes
+  AC_LIB_WITH_FINAL_PREFIX([
+    eval additional_includedir=\"$includedir\"
+    eval additional_libdir=\"$libdir\"
+  ])
+  AC_LIB_ARG_WITH([lib-prefix],
+[  --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
+  --without-lib-prefix    don't search for libraries in includedir and libdir],
+[
+    if test "X$withval" = "Xno"; then
+      use_additional=no
+    else
+      if test "X$withval" = "X"; then
+        AC_LIB_WITH_FINAL_PREFIX([
+          eval additional_includedir=\"$includedir\"
+          eval additional_libdir=\"$libdir\"
+        ])
+      else
+        additional_includedir="$withval/include"
+        additional_libdir="$withval/$acl_libdirstem"
+      fi
+    fi
+])
+  if test $use_additional = yes; then
+    dnl Potentially add $additional_includedir to $CPPFLAGS.
+    dnl But don't add it
+    dnl   1. if it's the standard /usr/include,
+    dnl   2. if it's already present in $CPPFLAGS,
+    dnl   3. if it's /usr/local/include and we are using GCC on Linux,
+    dnl   4. if it doesn't exist as a directory.
+    if test "X$additional_includedir" != "X/usr/include"; then
+      haveit=
+      for x in $CPPFLAGS; do
+        AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+        if test "X$x" = "X-I$additional_includedir"; then
+          haveit=yes
+          break
+        fi
+      done
+      if test -z "$haveit"; then
+        if test "X$additional_includedir" = "X/usr/local/include"; then
+          if test -n "$GCC"; then
+            case $host_os in
+              linux* | gnu* | k*bsd*-gnu) haveit=yes;;
+            esac
+          fi
+        fi
+        if test -z "$haveit"; then
+          if test -d "$additional_includedir"; then
+            dnl Really add $additional_includedir to $CPPFLAGS.
+            CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir"
+          fi
+        fi
+      fi
+    fi
+    dnl Potentially add $additional_libdir to $LDFLAGS.
+    dnl But don't add it
+    dnl   1. if it's the standard /usr/lib,
+    dnl   2. if it's already present in $LDFLAGS,
+    dnl   3. if it's /usr/local/lib and we are using GCC on Linux,
+    dnl   4. if it doesn't exist as a directory.
+    if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
+      haveit=
+      for x in $LDFLAGS; do
+        AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+        if test "X$x" = "X-L$additional_libdir"; then
+          haveit=yes
+          break
+        fi
+      done
+      if test -z "$haveit"; then
+        if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
+          if test -n "$GCC"; then
+            case $host_os in
+              linux*) haveit=yes;;
+            esac
+          fi
+        fi
+        if test -z "$haveit"; then
+          if test -d "$additional_libdir"; then
+            dnl Really add $additional_libdir to $LDFLAGS.
+            LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir"
+          fi
+        fi
+      fi
+    fi
+  fi
+])
+
+dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix,
+dnl acl_final_exec_prefix, containing the values to which $prefix and
+dnl $exec_prefix will expand at the end of the configure script.
+AC_DEFUN([AC_LIB_PREPARE_PREFIX],
+[
+  dnl Unfortunately, prefix and exec_prefix get only finally determined
+  dnl at the end of configure.
+  if test "X$prefix" = "XNONE"; then
+    acl_final_prefix="$ac_default_prefix"
+  else
+    acl_final_prefix="$prefix"
+  fi
+  if test "X$exec_prefix" = "XNONE"; then
+    acl_final_exec_prefix='${prefix}'
+  else
+    acl_final_exec_prefix="$exec_prefix"
+  fi
+  acl_save_prefix="$prefix"
+  prefix="$acl_final_prefix"
+  eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
+  prefix="$acl_save_prefix"
+])
+
+dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the
+dnl variables prefix and exec_prefix bound to the values they will have
+dnl at the end of the configure script.
+AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
+[
+  acl_save_prefix="$prefix"
+  prefix="$acl_final_prefix"
+  acl_save_exec_prefix="$exec_prefix"
+  exec_prefix="$acl_final_exec_prefix"
+  $1
+  exec_prefix="$acl_save_exec_prefix"
+  prefix="$acl_save_prefix"
+])
+
+dnl AC_LIB_PREPARE_MULTILIB creates a variable acl_libdirstem, containing
+dnl the basename of the libdir, either "lib" or "lib64".
+AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
+[
+  dnl There is no formal standard regarding lib and lib64. The current
+  dnl practice is that on a system supporting 32-bit and 64-bit instruction
+  dnl sets or ABIs, 64-bit libraries go under $prefix/lib64 and 32-bit
+  dnl libraries go under $prefix/lib. We determine the compiler's default
+  dnl mode by looking at the compiler's library search path. If at least
+  dnl of its elements ends in /lib64 or points to a directory whose absolute
+  dnl pathname ends in /lib64, we assume a 64-bit ABI. Otherwise we use the
+  dnl default, namely "lib".
+  acl_libdirstem=lib
+  searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+  if test -n "$searchpath"; then
+    acl_save_IFS="${IFS=       }"; IFS=":"
+    for searchdir in $searchpath; do
+      if test -d "$searchdir"; then
+        case "$searchdir" in
+          */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
+          *) searchdir=`cd "$searchdir" && pwd`
+             case "$searchdir" in
+               */lib64 ) acl_libdirstem=lib64 ;;
+             esac ;;
+        esac
+      fi
+    done
+    IFS="$acl_save_IFS"
+  fi
+])
diff --git a/m4/nls.m4 b/m4/nls.m4
new file mode 100644 (file)
index 0000000..7967cc2
--- /dev/null
+++ b/m4/nls.m4
@@ -0,0 +1,31 @@
+# nls.m4 serial 3 (gettext-0.15)
+dnl Copyright (C) 1995-2003, 2005-2006 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+dnl
+dnl This file can can be used in projects which are not available under
+dnl the GNU General Public License or the GNU Library General Public
+dnl License but which still want to provide support for the GNU gettext
+dnl functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+
+dnl Authors:
+dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
+dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2003.
+
+AC_PREREQ(2.50)
+
+AC_DEFUN([AM_NLS],
+[
+  AC_MSG_CHECKING([whether NLS is requested])
+  dnl Default is enabled NLS
+  AC_ARG_ENABLE(nls,
+    [  --disable-nls           do not use Native Language Support],
+    USE_NLS=$enableval, USE_NLS=yes)
+  AC_MSG_RESULT($USE_NLS)
+  AC_SUBST(USE_NLS)
+])
diff --git a/m4/po.m4 b/m4/po.m4
new file mode 100644 (file)
index 0000000..00133ef
--- /dev/null
+++ b/m4/po.m4
@@ -0,0 +1,428 @@
+# po.m4 serial 13 (gettext-0.15)
+dnl Copyright (C) 1995-2006 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+dnl
+dnl This file can can be used in projects which are not available under
+dnl the GNU General Public License or the GNU Library General Public
+dnl License but which still want to provide support for the GNU gettext
+dnl functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+
+dnl Authors:
+dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
+dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2003.
+
+AC_PREREQ(2.50)
+
+dnl Checks for all prerequisites of the po subdirectory.
+AC_DEFUN([AM_PO_SUBDIRS],
+[
+  AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+  AC_REQUIRE([AC_PROG_INSTALL])dnl
+  AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake
+  AC_REQUIRE([AM_NLS])dnl
+
+  dnl Perform the following tests also if --disable-nls has been given,
+  dnl because they are needed for "make dist" to work.
+
+  dnl Search for GNU msgfmt in the PATH.
+  dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions.
+  dnl The second test excludes FreeBSD msgfmt.
+  AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
+    [$ac_dir/$ac_word --statistics /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 &&
+     (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
+    :)
+  AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+
+  dnl Test whether it is GNU msgfmt >= 0.15.
+changequote(,)dnl
+  case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in
+    '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;;
+    *) MSGFMT_015=$MSGFMT ;;
+  esac
+changequote([,])dnl
+  AC_SUBST([MSGFMT_015])
+changequote(,)dnl
+  case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in
+    '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;;
+    *) GMSGFMT_015=$GMSGFMT ;;
+  esac
+changequote([,])dnl
+  AC_SUBST([GMSGFMT_015])
+
+  dnl Search for GNU xgettext 0.12 or newer in the PATH.
+  dnl The first test excludes Solaris xgettext and early GNU xgettext versions.
+  dnl The second test excludes FreeBSD xgettext.
+  AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+    [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 &&
+     (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
+    :)
+  dnl Remove leftover from FreeBSD xgettext call.
+  rm -f messages.po
+
+  dnl Test whether it is GNU xgettext >= 0.15.
+changequote(,)dnl
+  case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in
+    '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;;
+    *) XGETTEXT_015=$XGETTEXT ;;
+  esac
+changequote([,])dnl
+  AC_SUBST([XGETTEXT_015])
+
+  dnl Search for GNU msgmerge 0.11 or newer in the PATH.
+  AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge,
+    [$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :)
+
+  dnl Installation directories.
+  dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we
+  dnl have to define it here, so that it can be used in po/Makefile.
+  test -n "$localedir" || localedir='${datadir}/locale'
+  AC_SUBST([localedir])
+
+  AC_CONFIG_COMMANDS([po-directories], [[
+    for ac_file in $CONFIG_FILES; do
+      # Support "outfile[:infile[:infile...]]"
+      case "$ac_file" in
+        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+      esac
+      # PO directories have a Makefile.in generated from Makefile.in.in.
+      case "$ac_file" in */Makefile.in)
+        # Adjust a relative srcdir.
+        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
+        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
+        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
+        # In autoconf-2.13 it is called $ac_given_srcdir.
+        # In autoconf-2.50 it is called $srcdir.
+        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
+        case "$ac_given_srcdir" in
+          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
+          /*) top_srcdir="$ac_given_srcdir" ;;
+          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
+        esac
+        # Treat a directory as a PO directory if and only if it has a
+        # POTFILES.in file. This allows packages to have multiple PO
+        # directories under different names or in different locations.
+        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
+          rm -f "$ac_dir/POTFILES"
+          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
+          cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[  ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
+          POMAKEFILEDEPS="POTFILES.in"
+          # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend
+          # on $ac_dir but don't depend on user-specified configuration
+          # parameters.
+          if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
+            # The LINGUAS file contains the set of available languages.
+            if test -n "$OBSOLETE_ALL_LINGUAS"; then
+              test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
+            fi
+            ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"`
+            # Hide the ALL_LINGUAS assigment from automake < 1.5.
+            eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
+            POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
+          else
+            # The set of available languages was given in configure.in.
+            # Hide the ALL_LINGUAS assigment from automake < 1.5.
+            eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS'
+          fi
+          # Compute POFILES
+          # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po)
+          # Compute UPDATEPOFILES
+          # as      $(foreach lang, $(ALL_LINGUAS), $(lang).po-update)
+          # Compute DUMMYPOFILES
+          # as      $(foreach lang, $(ALL_LINGUAS), $(lang).nop)
+          # Compute GMOFILES
+          # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo)
+          case "$ac_given_srcdir" in
+            .) srcdirpre= ;;
+            *) srcdirpre='$(srcdir)/' ;;
+          esac
+          POFILES=
+          UPDATEPOFILES=
+          DUMMYPOFILES=
+          GMOFILES=
+          for lang in $ALL_LINGUAS; do
+            POFILES="$POFILES $srcdirpre$lang.po"
+            UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
+            DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
+            GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
+          done
+          # CATALOGS depends on both $ac_dir and the user's LINGUAS
+          # environment variable.
+          INST_LINGUAS=
+          if test -n "$ALL_LINGUAS"; then
+            for presentlang in $ALL_LINGUAS; do
+              useit=no
+              if test "%UNSET%" != "$LINGUAS"; then
+                desiredlanguages="$LINGUAS"
+              else
+                desiredlanguages="$ALL_LINGUAS"
+              fi
+              for desiredlang in $desiredlanguages; do
+                # Use the presentlang catalog if desiredlang is
+                #   a. equal to presentlang, or
+                #   b. a variant of presentlang (because in this case,
+                #      presentlang can be used as a fallback for messages
+                #      which are not translated in the desiredlang catalog).
+                case "$desiredlang" in
+                  "$presentlang"*) useit=yes;;
+                esac
+              done
+              if test $useit = yes; then
+                INST_LINGUAS="$INST_LINGUAS $presentlang"
+              fi
+            done
+          fi
+          CATALOGS=
+          if test -n "$INST_LINGUAS"; then
+            for lang in $INST_LINGUAS; do
+              CATALOGS="$CATALOGS $lang.gmo"
+            done
+          fi
+          test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
+          sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
+          for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
+            if test -f "$f"; then
+              case "$f" in
+                *.orig | *.bak | *~) ;;
+                *) cat "$f" >> "$ac_dir/Makefile" ;;
+              esac
+            fi
+          done
+        fi
+        ;;
+      esac
+    done]],
+   [# Capture the value of obsolete ALL_LINGUAS because we need it to compute
+    # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it
+    # from automake < 1.5.
+    eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"'
+    # Capture the value of LINGUAS because we need it to compute CATALOGS.
+    LINGUAS="${LINGUAS-%UNSET%}"
+   ])
+])
+
+dnl Postprocesses a Makefile in a directory containing PO files.
+AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE],
+[
+  # When this code is run, in config.status, two variables have already been
+  # set:
+  # - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in,
+  # - LINGUAS is the value of the environment variable LINGUAS at configure
+  #   time.
+
+changequote(,)dnl
+  # Adjust a relative srcdir.
+  ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
+  ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
+  ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
+  # In autoconf-2.13 it is called $ac_given_srcdir.
+  # In autoconf-2.50 it is called $srcdir.
+  test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
+  case "$ac_given_srcdir" in
+    .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
+    /*) top_srcdir="$ac_given_srcdir" ;;
+    *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
+  esac
+
+  # Find a way to echo strings without interpreting backslash.
+  if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then
+    gt_echo='echo'
+  else
+    if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then
+      gt_echo='printf %s\n'
+    else
+      echo_func () {
+        cat <<EOT
+$*
+EOT
+      }
+      gt_echo='echo_func'
+    fi
+  fi
+
+  # A sed script that extracts the value of VARIABLE from a Makefile.
+  sed_x_variable='
+# Test if the hold space is empty.
+x
+s/P/P/
+x
+ta
+# Yes it was empty. Look if we have the expected variable definition.
+/^[     ]*VARIABLE[     ]*=/{
+  # Seen the first line of the variable definition.
+  s/^[  ]*VARIABLE[     ]*=//
+  ba
+}
+bd
+:a
+# Here we are processing a line from the variable definition.
+# Remove comment, more precisely replace it with a space.
+s/#.*$/ /
+# See if the line ends in a backslash.
+tb
+:b
+s/\\$//
+# Print the line, without the trailing backslash.
+p
+tc
+# There was no trailing backslash. The end of the variable definition is
+# reached. Clear the hold space.
+s/^.*$//
+x
+bd
+:c
+# A trailing backslash means that the variable definition continues in the
+# next line. Put a nonempty string into the hold space to indicate this.
+s/^.*$/P/
+x
+:d
+'
+changequote([,])dnl
+
+  # Set POTFILES to the value of the Makefile variable POTFILES.
+  sed_x_POTFILES=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/POTFILES/g'`
+  POTFILES=`sed -n -e "$sed_x_POTFILES" < "$ac_file"`
+  # Compute POTFILES_DEPS as
+  #   $(foreach file, $(POTFILES), $(top_srcdir)/$(file))
+  POTFILES_DEPS=
+  for file in $POTFILES; do
+    POTFILES_DEPS="$POTFILES_DEPS "'$(top_srcdir)/'"$file"
+  done
+  POMAKEFILEDEPS=""
+
+  if test -n "$OBSOLETE_ALL_LINGUAS"; then
+    test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
+  fi
+  if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
+    # The LINGUAS file contains the set of available languages.
+    ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"`
+    POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS"
+  else
+    # Set ALL_LINGUAS to the value of the Makefile variable LINGUAS.
+    sed_x_LINGUAS=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/LINGUAS/g'`
+    ALL_LINGUAS_=`sed -n -e "$sed_x_LINGUAS" < "$ac_file"`
+  fi
+  # Hide the ALL_LINGUAS assigment from automake < 1.5.
+  eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
+  # Compute POFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po)
+  # Compute UPDATEPOFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(lang).po-update)
+  # Compute DUMMYPOFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(lang).nop)
+  # Compute GMOFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo)
+  # Compute PROPERTIESFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).properties)
+  # Compute CLASSFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).class)
+  # Compute QMFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).qm)
+  # Compute MSGFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(frob $(lang)).msg)
+  # Compute RESOURCESDLLFILES
+  # as      $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(frob $(lang))/$(DOMAIN).resources.dll)
+  case "$ac_given_srcdir" in
+    .) srcdirpre= ;;
+    *) srcdirpre='$(srcdir)/' ;;
+  esac
+  POFILES=
+  UPDATEPOFILES=
+  DUMMYPOFILES=
+  GMOFILES=
+  PROPERTIESFILES=
+  CLASSFILES=
+  QMFILES=
+  MSGFILES=
+  RESOURCESDLLFILES=
+  for lang in $ALL_LINGUAS; do
+    POFILES="$POFILES $srcdirpre$lang.po"
+    UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
+    DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
+    GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
+    PROPERTIESFILES="$PROPERTIESFILES \$(top_srcdir)/\$(DOMAIN)_$lang.properties"
+    CLASSFILES="$CLASSFILES \$(top_srcdir)/\$(DOMAIN)_$lang.class"
+    QMFILES="$QMFILES $srcdirpre$lang.qm"
+    frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
+    MSGFILES="$MSGFILES $srcdirpre$frobbedlang.msg"
+    frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'`
+    RESOURCESDLLFILES="$RESOURCESDLLFILES $srcdirpre$frobbedlang/\$(DOMAIN).resources.dll"
+  done
+  # CATALOGS depends on both $ac_dir and the user's LINGUAS
+  # environment variable.
+  INST_LINGUAS=
+  if test -n "$ALL_LINGUAS"; then
+    for presentlang in $ALL_LINGUAS; do
+      useit=no
+      if test "%UNSET%" != "$LINGUAS"; then
+        desiredlanguages="$LINGUAS"
+      else
+        desiredlanguages="$ALL_LINGUAS"
+      fi
+      for desiredlang in $desiredlanguages; do
+        # Use the presentlang catalog if desiredlang is
+        #   a. equal to presentlang, or
+        #   b. a variant of presentlang (because in this case,
+        #      presentlang can be used as a fallback for messages
+        #      which are not translated in the desiredlang catalog).
+        case "$desiredlang" in
+          "$presentlang"*) useit=yes;;
+        esac
+      done
+      if test $useit = yes; then
+        INST_LINGUAS="$INST_LINGUAS $presentlang"
+      fi
+    done
+  fi
+  CATALOGS=
+  JAVACATALOGS=
+  QTCATALOGS=
+  TCLCATALOGS=
+  CSHARPCATALOGS=
+  if test -n "$INST_LINGUAS"; then
+    for lang in $INST_LINGUAS; do
+      CATALOGS="$CATALOGS $lang.gmo"
+      JAVACATALOGS="$JAVACATALOGS \$(DOMAIN)_$lang.properties"
+      QTCATALOGS="$QTCATALOGS $lang.qm"
+      frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
+      TCLCATALOGS="$TCLCATALOGS $frobbedlang.msg"
+      frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'`
+      CSHARPCATALOGS="$CSHARPCATALOGS $frobbedlang/\$(DOMAIN).resources.dll"
+    done
+  fi
+
+  sed -e "s|@POTFILES_DEPS@|$POTFILES_DEPS|g" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@PROPERTIESFILES@|$PROPERTIESFILES|g" -e "s|@CLASSFILES@|$CLASSFILES|g" -e "s|@QMFILES@|$QMFILES|g" -e "s|@MSGFILES@|$MSGFILES|g" -e "s|@RESOURCESDLLFILES@|$RESOURCESDLLFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@JAVACATALOGS@|$JAVACATALOGS|g" -e "s|@QTCATALOGS@|$QTCATALOGS|g" -e "s|@TCLCATALOGS@|$TCLCATALOGS|g" -e "s|@CSHARPCATALOGS@|$CSHARPCATALOGS|g" -e 's,^#distdir:,distdir:,' < "$ac_file" > "$ac_file.tmp"
+  if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then
+    # Add dependencies that cannot be formulated as a simple suffix rule.
+    for lang in $ALL_LINGUAS; do
+      frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'`
+      cat >> "$ac_file.tmp" <<EOF
+$frobbedlang.msg: $lang.po
+       @echo "\$(MSGFMT) -c --tcl -d \$(srcdir) -l $lang $srcdirpre$lang.po"; \
+       \$(MSGFMT) -c --tcl -d "\$(srcdir)" -l $lang $srcdirpre$lang.po || { rm -f "\$(srcdir)/$frobbedlang.msg"; exit 1; }
+EOF
+    done
+  fi
+  if grep -l '@CSHARPCATALOGS@' "$ac_file" > /dev/null; then
+    # Add dependencies that cannot be formulated as a simple suffix rule.
+    for lang in $ALL_LINGUAS; do
+      frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'`
+      cat >> "$ac_file.tmp" <<EOF
+$frobbedlang/\$(DOMAIN).resources.dll: $lang.po
+       @echo "\$(MSGFMT) -c --csharp -d \$(srcdir) -l $lang $srcdirpre$lang.po -r \$(DOMAIN)"; \
+       \$(MSGFMT) -c --csharp -d "\$(srcdir)" -l $lang $srcdirpre$lang.po -r "\$(DOMAIN)" || { rm -f "\$(srcdir)/$frobbedlang.msg"; exit 1; }
+EOF
+    done
+  fi
+  if test -n "$POMAKEFILEDEPS"; then
+    cat >> "$ac_file.tmp" <<EOF
+Makefile: $POMAKEFILEDEPS
+EOF
+  fi
+  mv "$ac_file.tmp" "$ac_file"
+])
diff --git a/m4/progtest.m4 b/m4/progtest.m4
new file mode 100644 (file)
index 0000000..a56365c
--- /dev/null
@@ -0,0 +1,92 @@
+# progtest.m4 serial 4 (gettext-0.14.2)
+dnl Copyright (C) 1996-2003, 2005 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+dnl
+dnl This file can can be used in projects which are not available under
+dnl the GNU General Public License or the GNU Library General Public
+dnl License but which still want to provide support for the GNU gettext
+dnl functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+
+dnl Authors:
+dnl   Ulrich Drepper <drepper@cygnus.com>, 1996.
+
+AC_PREREQ(2.50)
+
+# Search path for a program which passes the given test.
+
+dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
+dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
+AC_DEFUN([AM_PATH_PROG_WITH_TEST],
+[
+# Prepare PATH_SEPARATOR.
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+# Find out how to test for executable files. Don't use a zero-byte file,
+# as systems may use methods other than mode bits to determine executability.
+cat >conf$$.file <<_ASEOF
+#! /bin/sh
+exit 0
+_ASEOF
+chmod +x conf$$.file
+if test -x conf$$.file >/dev/null 2>&1; then
+  ac_executable_p="test -x"
+else
+  ac_executable_p="test -f"
+fi
+rm -f conf$$.file
+
+# Extract the first word of "$2", so it can be a program name with args.
+set dummy $2; ac_word=[$]2
+AC_MSG_CHECKING([for $ac_word])
+AC_CACHE_VAL(ac_cv_path_$1,
+[case "[$]$1" in
+  [[\\/]]* | ?:[[\\/]]*)
+    ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
+    ;;
+  *)
+    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
+    for ac_dir in ifelse([$5], , $PATH, [$5]); do
+      IFS="$ac_save_IFS"
+      test -z "$ac_dir" && ac_dir=.
+      for ac_exec_ext in '' $ac_executable_extensions; do
+        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
+          echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD
+          if [$3]; then
+            ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext"
+            break 2
+          fi
+        fi
+      done
+    done
+    IFS="$ac_save_IFS"
+dnl If no 4th arg is given, leave the cache variable unset,
+dnl so AC_PATH_PROGS will keep looking.
+ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
+])dnl
+    ;;
+esac])dnl
+$1="$ac_cv_path_$1"
+if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
+  AC_MSG_RESULT([$]$1)
+else
+  AC_MSG_RESULT(no)
+fi
+AC_SUBST($1)dnl
+])
index 8f4503b..46d54f8 100644 (file)
@@ -7,6 +7,7 @@
 #  are permitted in any medium without royalty provided the copyright
 #  notice and this notice are preserved.
 de
+el
 es
 fr
 hu
@@ -14,6 +15,7 @@ hr
 it
 lv
 nl
+pl
 pt_BR
 ru
 sl
index fa87f3d..f096074 100644 (file)
@@ -1,7 +1,9 @@
 src/cfg.c
 src/glade/psensor.glade
+src/glade/psensor-appindicator.glade
 src/glade/psensor-pref.glade
 src/glade/sensor-edit.glade
+src/graph.c
 src/lib/amd.c
 src/lib/hdd_atasmart.c
 src/lib/hdd_hddtemp.c
index d4be0af..d39c8d6 100644 (file)
Binary files a/po/de.gmo and b/po/de.gmo differ
index d93a482..e2355a4 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -5,10 +5,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: psensor 0.7.0.x\n"
+"Project-Id-Version: psensor 1.2.0\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
-"PO-Revision-Date: 2014-09-20 11:25+0000\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
+"PO-Revision-Date: 2016-08-24 23:30+0200\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: German\n"
 "Language: de\n"
@@ -18,20 +18,405 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
-#, fuzzy, c-format
+#: src/cfg.c:501
+#, c-format
 msgid "Failed to create the directory %s: %s"
-msgstr "Erzeugen des Webservers ist gescheitert."
+msgstr "Erzeugen des Ordners %s ist gescheitert: %s"
 
-#: src/cfg.c:557
-#, fuzzy, c-format
+#: src/cfg.c:548
+#, c-format
 msgid "Failed to load configuration file %s: %s"
-msgstr "Aktivieren der Sensorenprotokollierung ist gescheitert."
+msgstr "Laden der Konfigurationsdatei %s ist gescheitert: %s"
 
-#: src/cfg.c:580
-#, fuzzy, c-format
+#: src/cfg.c:573
+#, c-format
 msgid "Failed to save configuration file %s."
-msgstr "Aktivieren der Sensorenprotokollierung ist gescheitert."
+msgstr "Speichern der Konfigurationsdatei %s ist gescheitert."
+
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Info"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Einstellungen"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Beenden"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Sensoreinstellungen"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Temperaturüberwachung"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Hilfe"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Sensor"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Wert"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min."
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Max."
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Farbe"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Graph"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Anzeigen"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Rechts"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Links"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Oberseite"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Unterseite"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Einstellungen bearbeiten"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Keine Fensterdekorationen verwenden"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Fenster unterhalb anheften"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Menü aktivieren"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Wert im Unity Starter anzeigen"
+
+#: src/glade/psensor-pref.glade:190
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor wurde ohne Unterstützung für Unity Starter kompiliert"
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Temperatureinheit:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Position der Sensorentabelle:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Benutzeroberfläche"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Bei Benutzeranmeldung starten"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Fenster beim Programmstart ausblenden"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Fensterposition und -größe merken"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Programmstart"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Vordergrund:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Hintergrund:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Hintergrunddeckkraft:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Farben"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Überwachungszeitraum:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Aktualisierungsintervall:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Messungen"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min.</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Max.</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "Sekunde(n)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "Minute(n)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr "Sensorgraphen glätten"
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr "Sensorgraphen"
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Messintervall:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Sensorenprotokollierung aktivieren"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Sensorenprotokollierungsintervall:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Folgendes Script bei einem Alarm ausführen:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Sensoren"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr "Unterstützung für lm-sensors aktivieren"
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr "Unterstützung für NVCtrl (NVidia) aktivieren"
+
+#: src/glade/psensor-pref.glade:974
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor wurde ohne Unterstützung für NVCtrl kompiliert"
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr "Unterstützung für ATI ADL aktivieren"
+
+#: src/glade/psensor-pref.glade:993
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor wurde ohne Unterstützung für ATI ADL kompiliert"
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr "Unterstützung für gtop2 aktivieren"
+
+#: src/glade/psensor-pref.glade:1012
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor wurde ohne Unterstützung für gtop2 kompiliert"
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr "Unterstützung für den hddtemp Daemon aktivieren"
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr "Unterstützung für libatasmart aktivieren"
+
+#: src/glade/psensor-pref.glade:1049
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor wurde ohne Unterstützung für libatasmart kompiliert"
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr "Unterstützung für udisks2 aktivieren"
+
+#: src/glade/psensor-pref.glade:1068
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor wurde ohne Unterstützung für udisks2 kompiliert"
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr "Die Änderungen werden erst nach einem Neustart von psensor wirksam."
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr "Festplattenlaufwerk"
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr "Prozessor- und Arbeitsspeichernutzung"
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr "Grafikkarte mit proprietärem Treiber"
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr "Motherboard, Prozessor und Grafikkarte"
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr "Provider"
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Sensoreinstellungen bearbeiten"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Name"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Typ:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "N/V"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Chip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Name:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr "Label"
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Sensorgraphen darstellen"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Farbe:"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr "Sensor in der Sensorenliste anzeigen"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Benachrichtigungen aktivieren"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Obere Grenze:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Untere Grenze:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarm"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Sensor im Menü anzeigen"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor wurde ohne Unterstützung für AppIndicator kompiliert"
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr "Sensor in der Menüleiste anzeigen (experimentell)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Programm-Indikator"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr "Keine Graphen aktiviert"
 
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
@@ -59,11 +444,11 @@ msgstr "Anzahl der AMD/ATI-Adapter: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Anzahl der aktiven AMD/ATI-Adapter: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: sk_disk_open() gescheitert: %s."
@@ -83,37 +468,37 @@ msgstr "%s: Öffnen der Verbindung gescheitert."
 msgid "%s: wrong string: %s."
 msgstr "%s: Falsche Zeichenkette: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: Wert der Unterfunktion %s kann nicht ermittelt werden: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: Falscher Funktionstyp."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: Initialisierung gescheitert: %s."
@@ -139,48 +524,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Protokolldatei kann nicht geöffnet werden: %s"
 
-#: src/lib/nvidia.c:58
-#, fuzzy, c-format
+#: src/lib/nvidia.c:69
+#, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
-msgstr "Ermittlung der NVIDIA-Informationen gescheitert."
+msgstr "%s: Unbekannter NVIDIA Produktname der GPU %d"
 
-#: src/lib/nvidia.c:63
-#, fuzzy, c-format
+#: src/lib/nvidia.c:74
+#, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
-msgstr "Ermittlung der NVIDIA-Informationen gescheitert."
+msgstr "%s: Abrufen des NVIDIA Produktnamens der GPU %d gescheitert"
 
-#: src/lib/nvidia.c:226
-#, fuzzy, c-format
+#: src/lib/nvidia.c:240
+#, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
-msgstr "Ermittlung der NVIDIA-Informationen gescheitert."
+msgstr "%s: Abrufen der Messung vom Typ %x der NVIDIA GPU %d gescheitert"
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Verbindung zum X11-Server konnte nicht hergestellt werden."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Ermittlung der NVIDIA-Informationen gescheitert."
 
-#: src/lib/nvidia.c:370
-#, fuzzy, c-format
+#: src/lib/nvidia.c:394
+#, c-format
 msgid "%s: Failed to retrieve number of fans."
-msgstr "Ermittlung der NVIDIA-Informationen gescheitert."
+msgstr "%s: Abrufen der Lüfteranzahl gescheitert."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "U/min"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "N/V"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "HOME-Variable ist nicht festgelegt."
@@ -204,7 +585,7 @@ msgstr ""
 "Sensorprotokolldatei ist nicht geöffnet und kann deswegen nicht geschlossen "
 "werden."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -220,12 +601,12 @@ msgstr ""
 "weiterverbreiten.\n"
 "Sie wird OHNE JEGLICHE GEWÄHRLEISTUNG zur Verfügung gestellt.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
-msgstr "Aufruf: %s [OPTION] …\n"
+msgstr "Aufruf: %s [OPTION]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -233,11 +614,11 @@ msgstr ""
 "Psensor ist eine GTK+-Anwendung zur Überwachung von Hardware-Sensoren, "
 "inklusive Temperaturen und Lüftergeschwindigkeiten."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Optionen:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -245,7 +626,7 @@ msgstr ""
 "  -h, --help          Diese Hilfe anzeigen und beenden\n"
 "  -v, --version       Versionsinformationen anzeigen und beenden"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -253,73 +634,62 @@ msgstr ""
 "  -u, --url=URL       Die Adresse (URL) von psensor-server,\n"
 "                      Beispiel: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 "  -n, --new-instance  Erzeugung einer neuen Psensor-Anwendung erzwingen"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=STUFE   Fehlerdiagnosestufe festlegen, Ganzzahl zwischen 0 und "
 "3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Programmfehler melden an: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s-Website: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor wurde ohne Unterstützung für entfernte Sensoren kompiliert."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Fehlerdiagnosemodus wird aktiviert."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Rufen Sie »%s --help« auf, um weitere Informationen zu erhalten.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Es existiert bereits eine Psensor-Instanz."
 
-#: src/main.c:631
-#, fuzzy
+#: src/main.c:527
 msgid "Failed to create thread for monitoring sensors"
-msgstr "Erzeugen des Webservers ist gescheitert."
-
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Daniel Winzen https://launchpad.net/~q-d\n"
-"  Dennis Baudys https://launchpad.net/~thecondordb\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Michael Egger https://launchpad.net/~michael-egger\n"
-"  Veit https://launchpad.net/~shoutbox"
+msgstr "Erzeugung eines Threads zur Sensorenüberwachung fehlgeschlagen"
 
-#: src/rsensor.c:107
+#: src/rsensor.c:115
 #, c-format
-msgid "Fail to connect to: %s"
-msgstr "Herstellen der Verbindung gescheitert: %s"
+msgid "%s: Fail to connect to: %s"
+msgstr "%s: Herstellen der Verbindung mit %s gescheitert"
 
-#: src/rsensor.c:144
+#: src/rsensor.c:152
 #, c-format
-msgid "Invalid content: %s"
-msgstr "Ungültiger Inhalt: %s"
+msgid "%s: Invalid content: %s"
+msgstr "%s: Ungültiger Inhalt: %s"
 
-#: src/rsensor.c:184
+#: src/rsensor.c:192
 #, c-format
-msgid "Invalid JSON: %s"
-msgstr "Ungültiges JSON: %s"
+msgid "%s: Invalid JSON: %s"
+msgstr "%s: Ungültiges JSON: %s"
 
 #: src/server/server.c:58
 msgid "<html><body><p>Server stop requested</p></body></html>"
@@ -329,7 +699,7 @@ msgstr "<html><body><p>Anhalten des Servers angefordert</p></body></html>"
 msgid ""
 "<html><body><p>Page not found - Go to <a href='/'>Main page</a></p></body>"
 msgstr ""
-"<html><body><p>Seite nicht gefunden  Gehen Sie zurück zur <a "
+"<html><body><p>Seite nicht gefunden - Gehen Sie zurück zur <a "
 "href='/'>Startseite</a></p></body>"
 
 #: src/server/server.c:100
@@ -374,80 +744,100 @@ msgstr ""
 "  --sensor-log-interval=S Sensorenprotokollierungsintervall auf S (Sekunden) "
 "festlegen"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr "Zugriff auf Ressource verweigert, %s tatsächlicher Pfad ist %s"
+
+#: src/server/server.c:269
+#, c-format
+msgid "Cannot get real path of %s"
+msgstr "Tatsächlicher Pfad von %s kann nicht ermittelt werden"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP Abfrage: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Aktiviert den Fehlerdiagnosemodus: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
-msgstr ""
+msgstr "Webserver-Ordner existiert nicht.\n"
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Keine Sensoren erkannt."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Erzeugen des Webservers ist gescheitert."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
-msgstr "Web-Server wurde gestartet auf Port: %d"
+msgstr "Webserver wurde gestartet auf Port: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW-Ordner: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "Adresse: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Aktivieren der Sensorenprotokollierung ist gescheitert."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor ist eine GTK-Anwendung zur Überwachung von Hardware-Sensoren"
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
-msgstr "Copyright © 2010-2014jeanfi@gmail.com"
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
+msgstr "Copyright(c) 2010-2016 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Info zu Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Contributions:\n"
+"  Daniel Winzen https://launchpad.net/~q-d\n"
+"  Dennis Baudys https://launchpad.net/~thecondordb\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Michael Egger https://launchpad.net/~michael-egger\n"
+"  Veit https://launchpad.net/~shoutbox"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Psensor-Website"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Laden des Psensor-Symbols ist gescheitert."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
-msgstr ""
+msgstr "Verstecken"
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Einstellungen"
-
-#: src/ui_sensorlist.c:296
-#, fuzzy
+#: src/ui_sensorlist.c:303
 msgid "Select sensor color"
-msgstr "Wählen Sie eine Vordergrundfarbe"
+msgstr "Wählen Sie eine Sensorfarbe"
+
+#: src/ui_appindicator.c:148
+#, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Laden der Glade-Datei %s ist gescheitert: %s"
 
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
@@ -458,173 +848,13 @@ msgid "Temperature alert"
 msgstr "Temperaturalarm"
 
 #: src/ui_notify.c:79
-#, fuzzy
 msgid "Fan speed alert"
-msgstr "Lüfteralarm"
+msgstr "Lüftergeschwindigkeitsalarm"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Unbekannt"
 
-#~ msgid "About"
-#~ msgstr "Info"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Sensoreinstellungen"
-
-#~ msgid "Quit"
-#~ msgstr "Beenden"
-
-#~ msgid "Show"
-#~ msgstr "Anzeigen"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor – Temperaturüberwachung"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Hilfe"
-
-#~ msgid "Sensor"
-#~ msgstr "Sensor"
-
-#~ msgid "Value"
-#~ msgstr "Wert"
-
-#~ msgid "Min"
-#~ msgstr "Min."
-
-#~ msgid "Max"
-#~ msgstr "Max."
-
-#~ msgid "Color"
-#~ msgstr "Farbe"
-
-#~ msgid "Graph"
-#~ msgstr "Graph"
-
-#~ msgid "Left"
-#~ msgstr "links"
-
-#~ msgid "Top"
-#~ msgstr "Oberseite"
-
-#~ msgid "Bottom"
-#~ msgstr "Unterseite"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Einstellungen bearbeiten"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Keine Fensterdekorationen verwenden"
-
-#~ msgid "Keep window below"
-#~ msgstr "Fenster unterhalb anheften"
-
-#~ msgid "Enable menu"
-#~ msgstr "Menü aktivieren"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Wert im Starter von Unity anzeigen"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Temperatureinheit:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Position der Sensorentabelle:"
-
-#~ msgid "Interface"
-#~ msgstr "Benutzeroberfläche"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Fenster beim Programmstart ausblenden"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Fensterposition und -größe merken"
-
-#~ msgid "Foreground:"
-#~ msgstr "Vordergrund:"
-
-#~ msgid "Background:"
-#~ msgstr "Hintergrund:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Hintergrunddeckkraft:"
-
-#~ msgid "Colors"
-#~ msgstr "Farben"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Überwachungszeitraum:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Aktualisierungsintervall:"
-
-#~ msgid "Measures"
-#~ msgstr "Messungen"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min.</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Max.</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "Sekunde(n)"
-
-#~ msgid "minute(s)"
-#~ msgstr "Minute(n)"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Messintervall:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Sensorenprotokollierung aktivieren"
-
-#~ msgid "seconds(s)"
-#~ msgstr "Sekunde(n)"
-
-#~ msgid "Sensors"
-#~ msgstr "Sensoren"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Sensoreinstellungen bearbeiten"
-
-#~ msgid "Name"
-#~ msgstr "Name"
-
-#~ msgid "Type:"
-#~ msgstr "Typ:"
-
-#~ msgid "Chip:"
-#~ msgstr "Chip:"
-
-#~ msgid "Name:"
-#~ msgstr "Name:"
-
-#~ msgid "Id:"
-#~ msgstr "Id:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Sensorgraphen darstellen"
-
-#~ msgid "Color:"
-#~ msgstr "Farbe:"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Benachrichtigungen aktivieren"
-
-#~ msgid "High threshold:"
-#~ msgstr "Obere Grenze:"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Untere Grenze:"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarm"
-
 #~ msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
 #~ msgstr ""
 #~ "lmsensor: lmsensor_psensor_create gescheitert: Falscher Funktionstyp."
diff --git a/po/el.gmo b/po/el.gmo
new file mode 100644 (file)
index 0000000..68b9bbc
Binary files /dev/null and b/po/el.gmo differ
diff --git a/po/el.po b/po/el.po
new file mode 100644 (file)
index 0000000..fc5ff3f
--- /dev/null
+++ b/po/el.po
@@ -0,0 +1,821 @@
+# Greek translations for psensor package.
+# Copyright (C) 2016 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psensor package.
+#  <jeanfi@gmail.com>, 2016.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: psensor 1.2.0\n"
+"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
+"PO-Revision-Date: 2016-06-30 17:02+0200\n"
+"Last-Translator:  <jeanfi@gmail.com>\n"
+"Language-Team: Greek\n"
+"Language: el\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"
+
+#: src/cfg.c:501
+#, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr ""
+
+#: src/cfg.c:548
+#, c-format
+msgid "Failed to load configuration file %s: %s"
+msgstr ""
+
+#: src/cfg.c:573
+#, c-format
+msgid "Failed to save configuration file %s."
+msgstr ""
+
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr ""
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr ""
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr ""
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr ""
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr ""
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr ""
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr ""
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr ""
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr ""
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr ""
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr ""
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:190
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+msgid "Psensor has not been build with NVCtrl support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+msgid "Psensor has not been build with ATI ADL support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+msgid "Psensor has not been build with gtop2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+msgid "Psensor has not been build with libatasmart support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+msgid "Psensor has not been build with udisks2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr ""
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
+#: src/lib/amd.c:171
+msgid "AMD: cannot found ADL library."
+msgstr ""
+
+#: src/lib/amd.c:198
+msgid "AMD: missing ADL's API."
+msgstr ""
+
+#: src/lib/amd.c:208
+msgid "AMD: failed to initialize ADL."
+msgstr ""
+
+#: src/lib/amd.c:214
+msgid "AMD: cannot get the number of adapters."
+msgstr ""
+
+#: src/lib/amd.c:253
+#, c-format
+msgid "Number of AMD/ATI adapters: %d"
+msgstr ""
+
+#: src/lib/amd.c:254
+#, c-format
+msgid "Number of active AMD/ATI adapters: %d"
+msgstr ""
+
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
+msgid "Disk"
+msgstr ""
+
+#: src/lib/hdd_atasmart.c:153
+#, c-format
+msgid "%s: sk_disk_open() failure: %s."
+msgstr ""
+
+#: src/lib/hdd_hddtemp.c:62
+#, c-format
+msgid "%s: failed to open socket."
+msgstr ""
+
+#: src/lib/hdd_hddtemp.c:75
+#, c-format
+msgid "%s: failed to open connection."
+msgstr ""
+
+#: src/lib/hdd_hddtemp.c:190 src/lib/hdd_hddtemp.c:270
+#, c-format
+msgid "%s: wrong string: %s."
+msgstr ""
+
+#: src/lib/lmsensor.c:73
+#, c-format
+msgid "%s: Cannot get value of subfeature %s: %s."
+msgstr ""
+
+#: src/lib/lmsensor.c:174
+#, c-format
+msgid "%s: Wrong feature type."
+msgstr ""
+
+#: src/lib/lmsensor.c:203
+msgid "Intel CPU"
+msgstr ""
+
+#: src/lib/lmsensor.c:207
+msgid "AMD CPU"
+msgstr ""
+
+#: src/lib/lmsensor.c:209
+msgid "NVIDIA GPU"
+msgstr ""
+
+#: src/lib/lmsensor.c:211
+msgid "VIA CPU"
+msgstr ""
+
+#: src/lib/lmsensor.c:213
+msgid "ACPI"
+msgstr ""
+
+#: src/lib/lmsensor.c:245
+#, c-format
+msgid "%s: initialization failure: %s."
+msgstr ""
+
+#: src/lib/pgtop2.c:42
+msgid "CPU usage"
+msgstr ""
+
+#: src/lib/pgtop2.c:47
+msgid "CPU"
+msgstr ""
+
+#: src/lib/pgtop2.c:63
+msgid "free memory"
+msgstr ""
+
+#: src/lib/pgtop2.c:64
+msgid "memory"
+msgstr ""
+
+#: src/lib/plog.c:43
+#, c-format
+msgid "Cannot open log file: %s"
+msgstr ""
+
+#: src/lib/nvidia.c:69
+#, c-format
+msgid "%s: Unknown NVIDIA product name for GPU %d"
+msgstr ""
+
+#: src/lib/nvidia.c:74
+#, c-format
+msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
+msgstr ""
+
+#: src/lib/nvidia.c:240
+#, c-format
+msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
+msgstr ""
+
+#: src/lib/nvidia.c:317
+#, c-format
+msgid "%s: Cannot open connection to X11 server."
+msgstr ""
+
+#: src/lib/nvidia.c:325
+#, c-format
+msgid "%s: Failed to retrieve NVIDIA information."
+msgstr ""
+
+#: src/lib/nvidia.c:394
+#, c-format
+msgid "%s: Failed to retrieve number of fans."
+msgstr ""
+
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
+msgid "RPM"
+msgstr ""
+
+#: src/lib/psensor.c:428
+msgid "%"
+msgstr ""
+
+#: src/lib/slog.c:87
+msgid "HOME variable not set."
+msgstr ""
+
+#: src/lib/slog.c:96
+msgid "Sensor log file already open."
+msgstr ""
+
+#: src/lib/slog.c:105
+#, c-format
+msgid "Cannot open sensor log file: %s."
+msgstr ""
+
+#: src/lib/slog.c:136
+msgid "Sensor log file not open."
+msgstr ""
+
+#: src/lib/slog.c:192
+msgid "Sensor log not open, cannot close."
+msgstr ""
+
+#: src/main.c:61 src/server/server.c:88
+#, c-format
+msgid ""
+"Copyright (C) %s jeanfi@gmail.com\n"
+"License GPLv2: GNU GPL version 2 or later <http://www.gnu.org/licenses/old-"
+"licenses/gpl-2.0.html>\n"
+"This is free software: you are free to change and redistribute it.\n"
+"There is NO WARRANTY, to the extent permitted by law.\n"
+msgstr ""
+
+#: src/main.c:72 src/server/server.c:98
+#, c-format
+msgid "Usage: %s [OPTION]...\n"
+msgstr ""
+
+#: src/main.c:74
+msgid ""
+"Psensor is a GTK+ application for monitoring hardware sensors, including "
+"temperatures and fan speeds."
+msgstr ""
+
+#: src/main.c:78
+msgid "Options:"
+msgstr ""
+
+#: src/main.c:79
+msgid ""
+"  -h, --help          display this help and exit\n"
+"  -v, --version       display version information and exit"
+msgstr ""
+
+#: src/main.c:85
+msgid ""
+"  -u, --url=URL       the URL of the psensor-server,\n"
+"                      example: http://hostname:3131"
+msgstr ""
+
+#: src/main.c:88
+msgid "  -n, --new-instance  force the creation of a new Psensor application"
+msgstr ""
+
+#: src/main.c:91
+msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
+msgstr ""
+
+#: src/main.c:96 src/server/server.c:121
+#, c-format
+msgid "Report bugs to: %s\n"
+msgstr ""
+
+#: src/main.c:98 src/server/server.c:123
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: src/main.c:390
+msgid "Psensor has not been compiled with remote sensor support."
+msgstr ""
+
+#: src/main.c:460
+msgid "Enables debug mode."
+msgstr ""
+
+#: src/main.c:472 src/server/server.c:422
+#, c-format
+msgid "Try `%s --help' for more information.\n"
+msgstr ""
+
+#: src/main.c:485
+msgid "A Psensor instance already exists."
+msgstr ""
+
+#: src/main.c:527
+msgid "Failed to create thread for monitoring sensors"
+msgstr ""
+
+#: src/rsensor.c:115
+#, c-format
+msgid "%s: Fail to connect to: %s"
+msgstr ""
+
+#: src/rsensor.c:152
+#, c-format
+msgid "%s: Invalid content: %s"
+msgstr ""
+
+#: src/rsensor.c:192
+#, c-format
+msgid "%s: Invalid JSON: %s"
+msgstr ""
+
+#: src/server/server.c:58
+msgid "<html><body><p>Server stop requested</p></body></html>"
+msgstr ""
+
+#: src/server/server.c:64
+msgid ""
+"<html><body><p>Page not found - Go to <a href='/'>Main page</a></p></body>"
+msgstr ""
+
+#: src/server/server.c:100
+msgid ""
+"psensor-server is an HTTP server for monitoring hardware sensors remotely."
+msgstr ""
+
+#: src/server/server.c:105
+msgid ""
+"  -h, --help\t\tdisplay this help and exit\n"
+"  -v, --version\t\tdisplay version information and exit"
+msgstr ""
+
+#: src/server/server.c:109
+msgid ""
+"  -p,--port=PORT\twebserver port\n"
+"  -w,--wdir=DIR\t\tdirectory containing webserver pages"
+msgstr ""
+
+#: src/server/server.c:113
+msgid "  -d, --debug=LEVEL     set the debug level, integer between 0 and 3"
+msgstr ""
+
+#: src/server/server.c:115
+msgid "  -l, --log-file=PATH   set the log file to PATH"
+msgstr ""
+
+#: src/server/server.c:116
+msgid "  --sensor-log-file=PATH set the sensor log file to PATH"
+msgstr ""
+
+#: src/server/server.c:117
+msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
+msgstr ""
+
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, c-format
+msgid "Cannot get real path of %s"
+msgstr ""
+
+#: src/server/server.c:339
+#, c-format
+msgid "HTTP Request: %s"
+msgstr ""
+
+#: src/server/server.c:402
+#, c-format
+msgid "Enables debug mode: %d"
+msgstr ""
+
+#: src/server/server.c:431
+#, c-format
+msgid "Webserver directory does not exist.\n"
+msgstr ""
+
+#: src/server/server.c:452
+msgid "No sensors detected."
+msgstr ""
+
+#: src/server/server.c:459
+msgid "Failed to create Web server."
+msgstr ""
+
+#: src/server/server.c:463
+#, c-format
+msgid "Web server started on port: %d"
+msgstr ""
+
+#: src/server/server.c:464
+#, c-format
+msgid "WWW directory: %s"
+msgstr ""
+
+#: src/server/server.c:465
+#, c-format
+msgid "URL: http://localhost:%d"
+msgstr ""
+
+#: src/server/server.c:475
+msgid "Failed to activate logging of sensors."
+msgstr ""
+
+#: src/ui.c:213
+msgid "Psensor is a GTK+ application for monitoring hardware sensors"
+msgstr ""
+
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
+msgstr ""
+
+#: src/ui.c:222
+msgid "About Psensor"
+msgstr ""
+
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+
+#: src/ui.c:226
+msgid "Psensor Homepage"
+msgstr ""
+
+#: src/ui.c:363
+msgid "Failed to load Psensor icon."
+msgstr ""
+
+#: src/ui_sensorlist.c:259
+msgid "Hide"
+msgstr ""
+
+#: src/ui_sensorlist.c:303
+msgid "Select sensor color"
+msgstr ""
+
+#: src/ui_appindicator.c:148
+#, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr ""
+
+#: src/ui_notify.c:48
+msgid "gettimeofday failed."
+msgstr ""
+
+#: src/ui_notify.c:77
+msgid "Temperature alert"
+msgstr ""
+
+#: src/ui_notify.c:79
+msgid "Fan speed alert"
+msgstr ""
+
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
+msgid "Unknown"
+msgstr ""
index f60bb62..7e53918 100644 (file)
Binary files a/po/es.gmo and b/po/es.gmo differ
index d20a21e..4598a28 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-20 11:26+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -18,21 +18,415 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Fallo al crear el servidor Web"
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Error al activar el registro de sensores"
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, fuzzy, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Error al activar el registro de sensores"
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Acerca de"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Ajustes"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Salir"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Ajustes de los Sensores"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Monitor de temperatura"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Ayuda"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Sensor"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Valor"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Mín"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Máx"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Color"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Gráfica"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Mostrar"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Derecha"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Izquierda"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Arriba"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Abajo"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Editar Ajustes"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Ocultar el marco de la ventana"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Mantener debajo del resto de ventanas"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Activar menú"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Inicio retardado al abrir sesión"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Unidad de temperatura"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Ubicación de los valores"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Interfaz"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Ocultar la ventana de gráficas al iniciar sesión."
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Restaurar tamaño y posición de la ventana"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Escalas y cuadrícula"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Fondo de gráfica"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Opacidad del fondo:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Colores"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Intervalo de la gráfica"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Intervalo de actualización:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Medidas"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Mín</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Máx</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "segundo(s)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minuto(s)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Medir sensores cada:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Activar registro de sensores"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Intervalo de registro de sensores:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Sensores"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Editar Ajustes Sensores"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Nombre"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Tipo:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "No disponible"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Chip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Nombre:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Identificativo:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Representar el sensor en la gráfica"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Color:"
+
+#: src/glade/sensor-edit.glade:448
+#, fuzzy
+msgid "Display sensor in the list of sensors"
+msgstr "Mostrar sensor en el menú de aplicaciones"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Activar notificaciones en el escritorio"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Límite superior"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Límite inferior"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarma"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Mostrar sensor en el menú de aplicaciones"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
+
+#: src/glade/sensor-edit.glade:719
+#, fuzzy
+msgid "Display sensor in the label (experimental)"
+msgstr "Mostrar sensor en el menú de aplicaciones"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Indicador de aplicación"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: no se ha encontrado la librería ADL"
@@ -59,11 +453,11 @@ msgstr "Numero de adaptadores AMD/ATI: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Numero de adaptadores AMD/ATI: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: sk_disk_open() Error: %s"
@@ -83,37 +477,37 @@ msgstr "%s: fallo al establecer conexión"
 msgid "%s: wrong string: %s."
 msgstr "%s: argumento erróneo:%s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: imposible obtener el valor de subcaracterística %s:%s"
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: Fallo de inicialización:%s."
@@ -139,48 +533,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Imposible abrir el archivo de registro: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Error al obtener la información de NVIDIA"
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Error al obtener la información de NVIDIA"
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Error al obtener la información de NVIDIA"
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Imposible establecer conexión con el servidor X11."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Error al obtener la información de NVIDIA"
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Error al obtener la información de NVIDIA"
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "No disponible"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "La variable HOME no ha sido definida"
@@ -202,7 +592,7 @@ msgstr "No se abrió el archivo de registro."
 msgid "Sensor log not open, cannot close."
 msgstr "¡No existe archivo que cerrar!"
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -218,12 +608,12 @@ msgstr ""
 "apoyada por el autor. \n"
 "No existe NINGUNA GARANTÍA hasta donde la ley lo permita.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Uso: %s [OPTION]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -231,11 +621,11 @@ msgstr ""
 "Psensor es un programa GTK+ que muestra datos de temperatura y ventiladores "
 "a través de los sensores de su hardware."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Opciones"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -243,7 +633,7 @@ msgstr ""
 "  -h, --help         Muestra esta ayuda. \n"
 "  -v, --versión       Muestra información sobre la versión."
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -251,70 +641,61 @@ msgstr ""
 "  -u, --url=URL       La URL del servidor psensor,\n"
 "                      ejemplo: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr "  -n, --new-instance  Fuerza el inicio de otro Psensor paralelo"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=NIVEL   Establece el nivel de depuración con un valor entre 0 "
 "y 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Comunicar fallos: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s Página Oficial: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Activa el modo de depuración"
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Introducir `%s --ayuda' para obtener más información\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Ya existe un Psensor en ejecución."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Fallo al crear el servidor Web"
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Adolfo Jayme https://launchpad.net/~fitojb\n"
-"  Eduardo Alberto Calvo https://launchpad.net/~edu5800\n"
-"  Javier https://launchpad.net/~buik8roadmaster\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Error al conectar a:%s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Contenido no válido:%s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "JSON no válido:%s"
 
 #: src/server/server.c:58
@@ -369,83 +750,104 @@ msgstr "  --sensor-log-file=PATH establecer el archivo de registro en PATH"
 msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr "  --sensor-log-interval=S registrar sensores cada S (seconds)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Imposible abrir el archivo de registro: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "Petición HTTP:%s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Activa el modo de depuración:%d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "No se han detectado sensores."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Fallo al crear el servidor Web"
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Servidor web iniciado en el puerto:%d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "directorio WWW:%s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Error al activar el registro de sensores"
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr ""
 "Psensor es una aplicación GTK+ que recoge y muestra información de los "
 "sensores del hardware."
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Copyright(c) 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Sobre Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Adolfo Jayme https://launchpad.net/~fitojb\n"
+"  Eduardo Alberto Calvo https://launchpad.net/~edu5800\n"
+"  Javier https://launchpad.net/~buik8roadmaster\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Web de Psensor"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Error al cargar el icono de Psensor"
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Ajustes"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Seleccionar el color del primer plano"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Error al activar el registro de sensores"
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "Error en la adquisición del horario."
@@ -459,190 +861,10 @@ msgstr "Alarma por temperatura."
 msgid "Fan speed alert"
 msgstr "Alarma por parada de ventilador."
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Desconocido"
 
-#~ msgid "About"
-#~ msgstr "Acerca de"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Ajustes de los Sensores"
-
-#~ msgid "Quit"
-#~ msgstr "Salir"
-
-#~ msgid "Show"
-#~ msgstr "Mostrar"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Monitor de temperatura"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Ayuda"
-
-#~ msgid "Sensor"
-#~ msgstr "Sensor"
-
-#~ msgid "Value"
-#~ msgstr "Valor"
-
-#~ msgid "Min"
-#~ msgstr "Mín"
-
-#~ msgid "Max"
-#~ msgstr "Máx"
-
-#~ msgid "Color"
-#~ msgstr "Color"
-
-#~ msgid "Graph"
-#~ msgstr "Gráfica"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Derecha"
-
-#~ msgid "Left"
-#~ msgstr "Izquierda"
-
-#~ msgid "Top"
-#~ msgstr "Arriba"
-
-#~ msgid "Bottom"
-#~ msgstr "Abajo"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Editar Ajustes"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Ocultar el marco de la ventana"
-
-#~ msgid "Keep window below"
-#~ msgstr "Mantener debajo del resto de ventanas"
-
-#~ msgid "Enable menu"
-#~ msgstr "Activar menú"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Inicio retardado al abrir sesión"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Unidad de temperatura"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Ubicación de los valores"
-
-#~ msgid "Interface"
-#~ msgstr "Interfaz"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Ocultar la ventana de gráficas al iniciar sesión."
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Restaurar tamaño y posición de la ventana"
-
-#~ msgid "Foreground:"
-#~ msgstr "Escalas y cuadrícula"
-
-#~ msgid "Background:"
-#~ msgstr "Fondo de gráfica"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Opacidad del fondo:"
-
-#~ msgid "Colors"
-#~ msgstr "Colores"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Intervalo de la gráfica"
-
-#~ msgid "Update interval:"
-#~ msgstr "Intervalo de actualización:"
-
-#~ msgid "Measures"
-#~ msgstr "Medidas"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Mín</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Máx</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "segundo(s)"
-
-#~ msgid "minute(s)"
-#~ msgstr "minuto(s)"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Medir sensores cada:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Activar registro de sensores"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Intervalo de registro de sensores:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "segundo(s)"
-
-#~ msgid "Sensors"
-#~ msgstr "Sensores"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Editar Ajustes Sensores"
-
-#~ msgid "Name"
-#~ msgstr "Nombre"
-
-#~ msgid "Type:"
-#~ msgstr "Tipo:"
-
-#~ msgid "Chip:"
-#~ msgstr "Chip:"
-
-#~ msgid "Name:"
-#~ msgstr "Nombre:"
-
-#~ msgid "Id:"
-#~ msgstr "Identificativo:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Representar el sensor en la gráfica"
-
-#~ msgid "Color:"
-#~ msgstr "Color:"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Mostrar sensor en el menú de aplicaciones"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Activar notificaciones en el escritorio"
-
-#~ msgid "High threshold:"
-#~ msgstr "Límite superior"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Límite inferior"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarma"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Mostrar sensor en el menú de aplicaciones"
-
-#, fuzzy
-#~ msgid "Display sensor in the label (experimental)"
-#~ msgstr "Mostrar sensor en el menú de aplicaciones"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Indicador de aplicación"
-
 #~ msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
 #~ msgstr ""
 #~ "lmsensor: lmsensor_psensor_create Fallo: tipo de funcion equivocada."
index ce673d8..751bccc 100644 (file)
Binary files a/po/fr.gmo and b/po/fr.gmo differ
index 883127c..d5e47f2 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-21 09:39+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: French <>\n"
@@ -18,21 +18,420 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 09:40+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr ""
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr ""
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr ""
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "À propos"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Préférences"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Quitter"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Préférences des capteurs"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Surveillance des températures"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr ""
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Aide"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Capteur"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Valeur"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Max"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Couleur"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Graphe"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Afficher"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Droite"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Gauche"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Haut"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Bas"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Modifier les préférences"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Cacher les décorations de la fenêtre"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Garder la fenêtre en arrière-plan"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Activer le menu"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Activer le compteur du lanceur de Unity"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr ""
+"Psensor n'a pas été compilé avec le support de surveillance à distance."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Unité de température :"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Position de la table des capteurs :"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Interface"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Cacher la fenêtre au lancement"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Rétablir la position et la taille de la fenêtre"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Avant-plan :"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Arrière-plan :"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Opacité de l'arrière-plan :"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Couleurs"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Durée de surveillance :"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Intervalle de mise à jour :"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Mesures"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Max</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "seconde(s)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minutes(s)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Intervalle de mise à jour des mesures :"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Activer la journalisation des capteurs"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Interval de journallisation des capteurs :"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Capteurs"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr ""
+"Psensor n'a pas été compilé avec le support de surveillance à distance."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr ""
+"Psensor n'a pas été compilé avec le support de surveillance à distance."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr ""
+"Psensor n'a pas été compilé avec le support de surveillance à distance."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr ""
+"Psensor n'a pas été compilé avec le support de surveillance à distance."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr ""
+"Psensor n'a pas été compilé avec le support de surveillance à distance."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Préférences des capteurs"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Nom :"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Type :"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "N/A"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Puce :"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Nom :"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id :"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Dessiner la courbe du capteur"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Couleur :"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Activer les notifications du bureau"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Seuil supérieur :"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Seuil inférieur :"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarme"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Afficher le capteur dans le menu"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+"Psensor n'a pas été compilé avec le support de surveillance à distance."
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Indicateur d'application"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD : impossible de trouver la bibliothèque ADL."
@@ -59,11 +458,11 @@ msgstr ""
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr "Disque"
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s : échec de sk_disk_open() : %s."
@@ -83,37 +482,37 @@ msgstr "%s : échec de l'ouverture de la connexion."
 msgid "%s: wrong string: %s."
 msgstr "%s : mauvaise chaîne: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s : impossible de récupérer la valeur de la sous-fonction %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr "Processeur Intel"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr "Processeur graphique NVIDIA"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s : échec de l'initialisation: %s."
@@ -139,48 +538,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Impossible d'ouvrir le journal: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Échec de la récupération des information NVIDIA."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Échec de la récupération des information NVIDIA."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Échec de la récupération des information NVIDIA."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s : Impossible d'ouvrir la connexion au serveur X11."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s : Échec de la récupération des information NVIDIA."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Échec de la récupération des information NVIDIA."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "Tr/mn"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "N/A"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "Variable home non définie."
@@ -202,7 +597,7 @@ msgstr "Le journal des capteurs n'est pas ouvert."
 msgid "Sensor log not open, cannot close."
 msgstr "Le journal des capteurs n'est pas ouvert, il ne peut être fermé."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -219,12 +614,12 @@ msgstr ""
 "Ce logiciel n'est accompagné d'ABSOLUMENT AUCUNE GARANTIE, dans les limites\n"
 "autorisées par la loi.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Utilisation : %s [OPTION]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -232,11 +627,11 @@ msgstr ""
 "Psensor est une application GTK+ pour surveiller les capteurs thermiques et "
 "les vitesses de ventilateurs."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Options :"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -244,78 +639,70 @@ msgstr ""
 "  -h, --help          afficher cette aide et quitter\n"
 "  -v, --version       afficher les informations de version et quitter"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
 msgstr ""
 "  -u, --url=URL       l'URL de psensor-server, example: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 "  -n, --new-instance  forcer la création d'une nouvelle occurrence de "
 "l'application Psensor"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=LEVEL   assigner le niveau de débogage, nombre entier entre 0 "
 "et 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Signaler les bogues à: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Page d'accueil de %s : <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 "Psensor n'a pas été compilé avec le support de surveillance à distance."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Active le mode de débogage."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Essayez « %s --help » pour plus d'informations.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Une instance de Psensor existe déjà."
 
-#: src/main.c:631
+#: src/main.c:527
 msgid "Failed to create thread for monitoring sensors"
 msgstr ""
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Ubuntu-QC-1 https://launchpad.net/~aobreyss\n"
-"  londumas https://launchpad.net/~helion331990"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Échec de la connexion à : %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Contenu invalide : %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "JSON invalide : %s"
 
 #: src/server/server.c:58
@@ -372,82 +759,102 @@ msgstr ""
 "  --sensor-log-interval=S assigne l'intervalle de journalisation du capteur "
 "à S (secondes)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Impossible d'ouvrir le journal: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "Requête HTTP : %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Activation du mode de déboguage: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Aucun capteur détecté."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Échec de la création du serveur Web."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Le serveur Web a été démarré sur le port : %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW répertoire : %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL : http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Échec de l'activation de la journalisation des capteurs."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr ""
 "Psensor est une application GTK+ pour surveiller les capteurs thermiques et "
 "les ventilateurs."
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Copyright © 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "À propos de Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Ubuntu-QC-1 https://launchpad.net/~aobreyss\n"
+"  londumas https://launchpad.net/~helion331990"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Site internet de Psensor"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Échec du chargement de l’icône de Psensor."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Préférences"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 msgid "Select sensor color"
 msgstr ""
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Échec du chargement de l’icône de Psensor."
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "Échec de gettimeofday."
@@ -460,178 +867,9 @@ msgstr "Alerte thermique"
 msgid "Fan speed alert"
 msgstr "Alerte ventilateur"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Inconnu"
 
-#~ msgid "About"
-#~ msgstr "À propos"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Préférences des capteurs"
-
-#~ msgid "Quit"
-#~ msgstr "Quitter"
-
-#~ msgid "Show"
-#~ msgstr "Afficher"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Surveillance des températures"
-
-#~ msgid "_Help"
-#~ msgstr "_Aide"
-
-#~ msgid "Sensor"
-#~ msgstr "Capteur"
-
-#~ msgid "Value"
-#~ msgstr "Valeur"
-
-#~ msgid "Min"
-#~ msgstr "Min"
-
-#~ msgid "Max"
-#~ msgstr "Max"
-
-#~ msgid "Color"
-#~ msgstr "Couleur"
-
-#~ msgid "Graph"
-#~ msgstr "Graphe"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Droite"
-
-#~ msgid "Left"
-#~ msgstr "Gauche"
-
-#~ msgid "Top"
-#~ msgstr "Haut"
-
-#~ msgid "Bottom"
-#~ msgstr "Bas"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Modifier les préférences"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Cacher les décorations de la fenêtre"
-
-#~ msgid "Keep window below"
-#~ msgstr "Garder la fenêtre en arrière-plan"
-
-#~ msgid "Enable menu"
-#~ msgstr "Activer le menu"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Activer le compteur du lanceur de Unity"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Unité de température :"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Position de la table des capteurs :"
-
-#~ msgid "Interface"
-#~ msgstr "Interface"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Cacher la fenêtre au lancement"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Rétablir la position et la taille de la fenêtre"
-
-#~ msgid "Foreground:"
-#~ msgstr "Avant-plan :"
-
-#~ msgid "Background:"
-#~ msgstr "Arrière-plan :"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Opacité de l'arrière-plan :"
-
-#~ msgid "Colors"
-#~ msgstr "Couleurs"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Durée de surveillance :"
-
-#~ msgid "Update interval:"
-#~ msgstr "Intervalle de mise à jour :"
-
-#~ msgid "Measures"
-#~ msgstr "Mesures"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Max</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "seconde(s)"
-
-#~ msgid "minute(s)"
-#~ msgstr "minutes(s)"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Intervalle de mise à jour des mesures :"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Activer la journalisation des capteurs"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Interval de journallisation des capteurs :"
-
-#~ msgid "seconds(s)"
-#~ msgstr "seconde(s)"
-
-#~ msgid "Sensors"
-#~ msgstr "Capteurs"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Préférences des capteurs"
-
-#~ msgid "Name"
-#~ msgstr "Nom :"
-
-#~ msgid "Type:"
-#~ msgstr "Type :"
-
-#~ msgid "Chip:"
-#~ msgstr "Puce :"
-
-#~ msgid "Name:"
-#~ msgstr "Nom :"
-
-#~ msgid "Id:"
-#~ msgstr "Id :"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Dessiner la courbe du capteur"
-
-#~ msgid "Color:"
-#~ msgstr "Couleur :"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Activer les notifications du bureau"
-
-#~ msgid "High threshold:"
-#~ msgstr "Seuil supérieur :"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Seuil inférieur :"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarme"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Afficher le capteur dans le menu"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Indicateur d'application"
-
 #~ msgid "Sensor Information"
 #~ msgstr "Informations du capteur"
index 759a3d5..acc8408 100644 (file)
Binary files a/po/hr.gmo and b/po/hr.gmo differ
index e4e76e1..5e58c93 100644 (file)
--- a/po/hr.po
+++ b/po/hr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-21 06:25+0000\n"
 "Last-Translator: gogo <trebelnik2@gmail.com>\n"
 "Language-Team: Croatian <hr@li.org>\n"
@@ -18,21 +18,413 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Neuspjelo stvaranje direktorija %s: %s"
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Neuspjelo učitavanje datoteke podešavanja %s: %s"
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Neuspjelo spremanje datoteke podešavanja %s."
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "O programu"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Osobitosti"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Zatvori"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Osobitosti senzora"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Nadziratelj temperature"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Pomoć"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Senzor"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Vrijednost"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Maks"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Boja"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Grafikon"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Prikaži"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Desno"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Lijevo"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Vrh"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Dno"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Uredi osobitosti"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Sakrij ukras prozora"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Drži prozor ispod"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Omogući izbornik"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Omogući brojač Unity pokretača"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Celzijus"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Farenhajt"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Jedinica temperature:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Položaj okvira senzora:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Sučelje"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Pokreni pri pokretanju sesije"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Sakrij prozor pri pokretanju"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Vrati položaj i veličinu prozora"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Pokretanje"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Prednji plan:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Pozadina:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Prozirnost pozadine:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Boje"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Trajanje nadziranja:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Razdoblje ažuriranja:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Mjere"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Maks</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "sekunda(i)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minuta(e)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr "Zaglađene krivulje"
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr "Krivulje"
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Razdoblje ažuriranja mjera:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Omogući zapisivanje sensora"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Razdoblje zapisivanja senzora:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Skripta za izvršavanje kada se alarm upali"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Senzori"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr "Omogući podršku za lm-sensors"
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr "Omogući podršku za NVCtrl (NVidia)"
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr "Omogući podršku za ATI ADL"
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr "Omogući podršku za gtop2"
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr "Omogući podršku za hddtemp daemon"
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr "Omogući podršku za libatasmart"
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr "Omogući podršku za udisks2"
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr "Promjene će biti primjenjene nakon ponovnog pokretanja psensora."
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr "Čvrsti disk"
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr "Korištenje CPU-a i memorije"
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr "GPU s vlasničkim upravljačkim programima"
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr "Matična ploča, CPU i GPU"
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Uredi osobitosti senzora"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Naziv"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Vrsta:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "Nedostupno"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Čip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Naziv:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr "Pojedinosti"
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Iscrtavaj krivulju senzora"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Boja:"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr "Prikaži senzor u popisu senzora"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Uključi obavijesti radne površine"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Gornja granica:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr "0"
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Donja granica:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarm"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Prikaži senzor u izbrniku"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr "Prikaži senzor u oznaci (eksperimentalno)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Programičić pokazivača"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: nemogu pronaći ADL biblioteku."
@@ -59,11 +451,11 @@ msgstr "Broj AMD/ATI adaptera: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Broj aktivnih AMD/ATI adaptera: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr "Disk"
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: sk_disk_open() neuspjelo: %s."
@@ -83,37 +475,37 @@ msgstr "%s: neuspjelo otvaranje povezivanja."
 msgid "%s: wrong string: %s."
 msgstr "%s: pogrešan string: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, fuzzy, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: nemoguće dobivanje vrijednosti podznačajki %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: pogrešna vrsta značajki."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr "Intel CPU"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr "AMD CPU"
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr "NVIDIA GPU"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr "VIA CPU"
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr "ACPI"
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: neuspjeh pokretanja: %s."
@@ -139,48 +531,44 @@ msgstr "memorija"
 msgid "Cannot open log file: %s"
 msgstr "Nemoguće otvaranje datoteke: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "%s: Nepoznat naziv NVIDIA proizvoda za GPU %d"
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "%s: Neuspjelo čitanje naziva NVIDIA proizvoda za GPU %d"
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "%s: Neuspjelo čitanje mjernih jedinica %x za NVIDIA GPU %d"
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Nemoguće povezivanje s X11 poslužiteljem."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Neuspjelo primanje NVIDIA informacija."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "%s: NVIDIA: nuespjelo očitavanje broja ventilatora."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "Okr/min"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "Nedostupno"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "HOME varijabla nije postavljena."
@@ -202,7 +590,7 @@ msgstr "Datoteka zapisa senzora nije otvorena."
 msgid "Sensor log not open, cannot close."
 msgstr "Datoteka zapisa senzora nije otvorena, nemoguće zatvaranje."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -217,12 +605,12 @@ msgstr ""
 "Ovo je slobodan softver: slobodno ga možete mijenjati i redistribuirati.\n"
 "Ne postoji nikakvo JAMSTVO, propisano zakonom.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Upotreba: %s [MOGUĆNOST]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -230,11 +618,11 @@ msgstr ""
 "Psensor je GTK+ aplikacija za nadziranje hardverskih senzora, koja uključuje "
 "temperature i brzinu okretaja ventilatora."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Mogućnosti:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -242,7 +630,7 @@ msgstr ""
 "  -h, --help          prikaz pomoći\n"
 "  -v, --version       prikaz informacije inačice"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -250,67 +638,60 @@ msgstr ""
 "  -u, --url=URL       URL psensor-poslužitelja,\n"
 "                      npr: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr "  -n, --new-instance  prisili stvaranje nove Psensor aplikacije"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=LEVEL   postavi razinu otklanjanja greške, cijeli broj između "
 "0 i 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Prijavi grešku na: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s početna stranica: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor nije kompajliran s udaljenom podrškom senzora."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Omogućava način otklanjanja greške."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Pokušajte `%s --help` za više informacija.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Psensor primjerak je već pokrenut."
 
-#: src/main.c:631
+#: src/main.c:527
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Neuspjelo stvaranje niza za nadziranje senzora"
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  gogo https://launchpad.net/~trebelnik-stefina"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Neuspjelo povezivanje s: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Nevaljan sadržaj: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "Nevaljan JSON: %s"
 
 #: src/server/server.c:58
@@ -366,80 +747,99 @@ msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 "  --sensor-log-interval=S postavite trajanje zapisa senzora u S (sekunde)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Nemoguće otvaranje datoteke: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP Zahtjev: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Omogućuje način otklanjanja greške: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Nema otkrivenih senzora."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Neuspjelo stvaranje Web poslužitelja."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Web poslužitelj pokrenut na ulazu: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW direktorij: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Neuspjelo aktiviranje zapisivanja senzora."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor je GTK+ aplikacija za nadziranje senzora hardvera."
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Autorsko pravo(c) 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "O Psensoru"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  gogo https://launchpad.net/~trebelnik-stefina"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Psensor web stranica"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Neuspjelo učitavanje ikone Psensora."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr "Sakrij"
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Osobitosti"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 msgid "Select sensor color"
 msgstr "Odaberi boju senzora"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Neuspjelo učitavanje datoteke podešavanja %s: %s"
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "dobivanje-vremena-dana neuspjelo."
@@ -452,250 +852,6 @@ msgstr "Upozorenje temperature"
 msgid "Fan speed alert"
 msgstr "Upozorenje brzine ventilatora"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Nepoznato"
-
-#~ msgid "About"
-#~ msgstr "O programu"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Osobitosti senzora"
-
-#~ msgid "Quit"
-#~ msgstr "Zatvori"
-
-#~ msgid "Show"
-#~ msgstr "Prikaži"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Nadziratelj temperature"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Pomoć"
-
-#~ msgid "Sensor"
-#~ msgstr "Senzor"
-
-#~ msgid "Value"
-#~ msgstr "Vrijednost"
-
-#~ msgid "Min"
-#~ msgstr "Min"
-
-#~ msgid "Max"
-#~ msgstr "Maks"
-
-#~ msgid "Color"
-#~ msgstr "Boja"
-
-#~ msgid "Graph"
-#~ msgstr "Grafikon"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Desno"
-
-#~ msgid "Left"
-#~ msgstr "Lijevo"
-
-#~ msgid "Top"
-#~ msgstr "Vrh"
-
-#~ msgid "Bottom"
-#~ msgstr "Dno"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Uredi osobitosti"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Sakrij ukras prozora"
-
-#~ msgid "Keep window below"
-#~ msgstr "Drži prozor ispod"
-
-#~ msgid "Enable menu"
-#~ msgstr "Omogući izbornik"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Omogući brojač Unity pokretača"
-
-#~ msgid "Celsius"
-#~ msgstr "Celzijus"
-
-#~ msgid "Fahrenheit"
-#~ msgstr "Farenhajt"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Jedinica temperature:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Položaj okvira senzora:"
-
-#~ msgid "Interface"
-#~ msgstr "Sučelje"
-
-#~ msgid "Launch on session startup"
-#~ msgstr "Pokreni pri pokretanju sesije"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Sakrij prozor pri pokretanju"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Vrati položaj i veličinu prozora"
-
-#~ msgid "Startup"
-#~ msgstr "Pokretanje"
-
-#~ msgid "Foreground:"
-#~ msgstr "Prednji plan:"
-
-#~ msgid "Background:"
-#~ msgstr "Pozadina:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Prozirnost pozadine:"
-
-#~ msgid "Colors"
-#~ msgstr "Boje"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Trajanje nadziranja:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Razdoblje ažuriranja:"
-
-#~ msgid "Measures"
-#~ msgstr "Mjere"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Maks</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "sekunda(i)"
-
-#~ msgid "minute(s)"
-#~ msgstr "minuta(e)"
-
-#~ msgid "Smooth curves"
-#~ msgstr "Zaglađene krivulje"
-
-#~ msgid "Curves"
-#~ msgstr "Krivulje"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Razdoblje ažuriranja mjera:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Omogući zapisivanje sensora"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Razdoblje zapisivanja senzora:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "sekunda(i)"
-
-#~ msgid "Script executed when an alarm is raised:"
-#~ msgstr "Skripta za izvršavanje kada se alarm upali"
-
-#~ msgid "Sensors"
-#~ msgstr "Senzori"
-
-#~ msgid "Enable support of lm-sensors"
-#~ msgstr "Omogući podršku za lm-sensors"
-
-#~ msgid "Enable support of NVCtrl (NVidia)"
-#~ msgstr "Omogući podršku za NVCtrl (NVidia)"
-
-#~ msgid "Enable support of ATI ADL"
-#~ msgstr "Omogući podršku za ATI ADL"
-
-#~ msgid "Enable support of gtop2"
-#~ msgstr "Omogući podršku za gtop2"
-
-#~ msgid "Enable support of hddtemp daemon"
-#~ msgstr "Omogući podršku za hddtemp daemon"
-
-#~ msgid "Enable support of libatasmart"
-#~ msgstr "Omogući podršku za libatasmart"
-
-#~ msgid "Enable support of udisks2"
-#~ msgstr "Omogući podršku za udisks2"
-
-#~ msgid "The changes are applied after the restart of psensor."
-#~ msgstr "Promjene će biti primjenjene nakon ponovnog pokretanja psensora."
-
-#~ msgid "Hard disk drive"
-#~ msgstr "Čvrsti disk"
-
-#~ msgid "CPU and memory usage"
-#~ msgstr "Korištenje CPU-a i memorije"
-
-#~ msgid "GPU with proprietary driver"
-#~ msgstr "GPU s vlasničkim upravljačkim programima"
-
-#~ msgid "Motherboard, CPU and GPU"
-#~ msgstr "Matična ploča, CPU i GPU"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Uredi osobitosti senzora"
-
-#~ msgid "Name"
-#~ msgstr "Naziv"
-
-#~ msgid "Type:"
-#~ msgstr "Vrsta:"
-
-#~ msgid "Chip:"
-#~ msgstr "Čip:"
-
-#~ msgid "Name:"
-#~ msgstr "Naziv:"
-
-#~ msgid "Id:"
-#~ msgstr "Id:"
-
-#~ msgid "Details"
-#~ msgstr "Pojedinosti"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Iscrtavaj krivulju senzora"
-
-#~ msgid "Color:"
-#~ msgstr "Boja:"
-
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Prikaži senzor u popisu senzora"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Uključi obavijesti radne površine"
-
-#~ msgid "High threshold:"
-#~ msgstr "Gornja granica:"
-
-#~ msgid "0"
-#~ msgstr "0"
-
-#~ msgid "-1"
-#~ msgstr "-1"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Donja granica:"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarm"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Prikaži senzor u izbrniku"
-
-#~ msgid "Display sensor in the label (experimental)"
-#~ msgstr "Prikaži senzor u oznaci (eksperimentalno)"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Programičić pokazivača"
index fbf58b5..9c036ad 100644 (file)
Binary files a/po/hu.gmo and b/po/hu.gmo differ
index 576c37d..f222aaa 100644 (file)
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-20 11:26+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Hungarian <gnome-hu-list-request@gnome.org>\n"
@@ -19,21 +19,413 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Nem sikerült a mappa létrehozása: %s - %s"
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Nem sikerült a konfigurációs fájlt beolvasni: %s"
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Nem sikerült a konfigurációs fájlt elmenteni: %s"
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Névjegy"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Beállítások"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Kilépés"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Érzékelő beállításai"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - hőmérsékletfigyelő"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Súgó"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Érzékelő"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Érték"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Minimum"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Maximum"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Szín"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Grafikon"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Megjelenítés"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Jobbra"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Balra"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Felül"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Alul"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Beállítások szerkesztése"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Ablakdíszítés elrejtése"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Ablak alul tartása"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Menü engedélyezése"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Unity indítón lévő számláló engedélyezése"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Celsius"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Fahrenheit"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Hőmérséklet mértékegysége:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Érzékelőtábla pozíciója:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Felület"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Indítás a munkamenettel"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Ablak elrejtése induláskor"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Ablak pozíciójának és méretének visszaállítása"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Indítás"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Előtér:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Háttér:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Háttér átlátszósága:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Színek"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Figyelés hossza:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Frissítési időköz:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Mérések"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Max</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "másodperc"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "perc"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Mérések frissítési időköze:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Érzékelők naplózásának engedélyezése"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Naplózás időköze:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Parancsfájl futtatás riasztáskor:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Érzékelők"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Érzékelő beállításainak szerkesztése"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Név"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Típus:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "---"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Chip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Név:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Azonosító:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Érzékelő görbéjének rajzolása"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Szín:"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr "Érzékelő megjelenítése az érzékelők listáján"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Asztali értesítések bekapcsolása"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Felső küszöbérték:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Alsó küszöbérték:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Riasztás"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Érzékelők megjelenítése az alkalmazásmenüben"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr "Érzékelők megjelenítése a címkén (fejlesztés alatt)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Alkalmazás Indikátor"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: Nem sikerült betölteni az ADL programkönyvtárat."
@@ -60,11 +452,11 @@ msgstr "ADM/ATI adapterek száma: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Aktív ADM/ATI adapterek száma: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr "Lemez"
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, fuzzy, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: sk_disk_open() hiba: %s."
@@ -84,37 +476,37 @@ msgstr "%s: a kapcsolat megnyitása nem sikerült."
 msgid "%s: wrong string: %s."
 msgstr "%s: rossz karakterlánc: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: alfunkció értékének lekérdezése meghiúsult %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: rossz funkciótípus."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr "Intel processzor"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr "AMD processzor"
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr "NVIDIA videokártya"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr "VIA processzor"
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: előkészítési hiba: %s."
@@ -140,48 +532,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "A naplófájl megnyitása sikertelen: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "NVIDIA információinak lekérése meghiúsult."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "NVIDIA információinak lekérése meghiúsult."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "NVIDIA információinak lekérése meghiúsult."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Nem lehet létrehozni a kapcsolatot az X11 kiszolgálóval."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: NVIDIA információinak lekérése meghiúsult."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "NVIDIA információinak lekérése meghiúsult."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "---"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "HOME változó nincs beállítva."
@@ -203,7 +591,7 @@ msgstr "Az érzékelő naplófájlja nincs nyitva."
 msgid "Sensor log not open, cannot close."
 msgstr "Az érzékelő naplófájlja nincs nyitva, nem lehet bezárni."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -218,12 +606,12 @@ msgstr ""
 "Ez egy szabad szoftver: szabadon terjesztheti és/vagy módosíthatja\n"
 "NINCS GARANCIA, a jogszabályok által megengedett mértékben.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Használat: %s [KAPCSOLÓK]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -231,11 +619,11 @@ msgstr ""
 "A Psensor egy GTK+ alkalmazás a hardver érzékelőinek figyelésére, beleértve "
 "a hőmérsékleteket és a ventilátor sebességét."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Kapcsolók:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -243,7 +631,7 @@ msgstr ""
 "  -h, --help          ezen súgó megjelenítése, majd kilépés\n"
 "  -v, --version         verzióinformációk megjelenítése, majd kilépés"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -251,69 +639,60 @@ msgstr ""
 "  -u, --url=URL       a psensor-server URL-címe,\n"
 "                      például: http://gepnev:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr "  -n, --new-instance  új Psensor alkalmazás indításának kényszerítése"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=LEVEL   hibakeresési szint beállítása, egész 0 és 3 között"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "A talált hibákat itt jelentse be: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s honlap: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Hibakeresési mód engedélyezése."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "További információkért adja ki a „%s --help” parancsot.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "A Psensors egy példánya már létezik."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Nem sikerült a mappa létrehozása: %s - %s"
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Bence Lukács https://launchpad.net/~lukacs-bence1\n"
-"  Gabor Kelemen https://launchpad.net/~kelemeng\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Richard Somlói https://launchpad.net/~ricsipontaz"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Nem sikerül kapcsolódni a következőhöz: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Érvénytelen tartalom: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "Érvénytelen JSON: %s"
 
 #: src/server/server.c:58
@@ -370,81 +749,102 @@ msgstr ""
 "  --sensor-log-interval=S érzékelő naplózási gyakoriságának beállítása S "
 "másodpercre"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "A naplófájl megnyitása sikertelen: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP-kérés: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Hibakeresési mód engedélyezése: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Nem találhatók érzékelők."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Nem sikerült létrehozni a webkiszolgálót."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "A webkiszolgáló elindult ezen a porton: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW könyvtár: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Érzékelők naplózásának aktiválása meghiúsult."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "A Psensor egy GTK+ alkalmazás a hardver érzékelőinek figyelésére"
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Copyright(c) 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "A Psensor névjegye"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Bence Lukács https://launchpad.net/~lukacs-bence1\n"
+"  Gabor Kelemen https://launchpad.net/~kelemeng\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Richard Somlói https://launchpad.net/~ricsipontaz"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "A Psensor honlapja"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Nem sikerült betölteni a Psensor ikonját."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Beállítások"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Előtérszín kiválasztása"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Nem sikerült a konfigurációs fájlt beolvasni: %s"
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "gettimeofday meghiúsult."
@@ -458,206 +858,10 @@ msgstr "Hőmérséklet riasztás"
 msgid "Fan speed alert"
 msgstr "Ventilátor riasztás"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Ismeretlen"
 
-#~ msgid "About"
-#~ msgstr "Névjegy"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Érzékelő beállításai"
-
-#~ msgid "Quit"
-#~ msgstr "Kilépés"
-
-#~ msgid "Show"
-#~ msgstr "Megjelenítés"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - hőmérsékletfigyelő"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Súgó"
-
-#~ msgid "Sensor"
-#~ msgstr "Érzékelő"
-
-#~ msgid "Value"
-#~ msgstr "Érték"
-
-#~ msgid "Min"
-#~ msgstr "Minimum"
-
-#~ msgid "Max"
-#~ msgstr "Maximum"
-
-#~ msgid "Color"
-#~ msgstr "Szín"
-
-#~ msgid "Graph"
-#~ msgstr "Grafikon"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Jobbra"
-
-#~ msgid "Left"
-#~ msgstr "Balra"
-
-#~ msgid "Top"
-#~ msgstr "Felül"
-
-#~ msgid "Bottom"
-#~ msgstr "Alul"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Beállítások szerkesztése"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Ablakdíszítés elrejtése"
-
-#~ msgid "Keep window below"
-#~ msgstr "Ablak alul tartása"
-
-#~ msgid "Enable menu"
-#~ msgstr "Menü engedélyezése"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Unity indítón lévő számláló engedélyezése"
-
-#~ msgid "Celsius"
-#~ msgstr "Celsius"
-
-#~ msgid "Fahrenheit"
-#~ msgstr "Fahrenheit"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Hőmérséklet mértékegysége:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Érzékelőtábla pozíciója:"
-
-#~ msgid "Interface"
-#~ msgstr "Felület"
-
-#~ msgid "Launch on session startup"
-#~ msgstr "Indítás a munkamenettel"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Ablak elrejtése induláskor"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Ablak pozíciójának és méretének visszaállítása"
-
-#~ msgid "Startup"
-#~ msgstr "Indítás"
-
-#~ msgid "Foreground:"
-#~ msgstr "Előtér:"
-
-#~ msgid "Background:"
-#~ msgstr "Háttér:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Háttér átlátszósága:"
-
-#~ msgid "Colors"
-#~ msgstr "Színek"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Figyelés hossza:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Frissítési időköz:"
-
-#~ msgid "Measures"
-#~ msgstr "Mérések"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Max</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "másodperc"
-
-#~ msgid "minute(s)"
-#~ msgstr "perc"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Mérések frissítési időköze:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Érzékelők naplózásának engedélyezése"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Naplózás időköze:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "másodperc"
-
-#~ msgid "Script executed when an alarm is raised:"
-#~ msgstr "Parancsfájl futtatás riasztáskor:"
-
-#~ msgid "Sensors"
-#~ msgstr "Érzékelők"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Érzékelő beállításainak szerkesztése"
-
-#~ msgid "Name"
-#~ msgstr "Név"
-
-#~ msgid "Type:"
-#~ msgstr "Típus:"
-
-#~ msgid "Chip:"
-#~ msgstr "Chip:"
-
-#~ msgid "Name:"
-#~ msgstr "Név:"
-
-#~ msgid "Id:"
-#~ msgstr "Azonosító:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Érzékelő görbéjének rajzolása"
-
-#~ msgid "Color:"
-#~ msgstr "Szín:"
-
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Érzékelő megjelenítése az érzékelők listáján"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Asztali értesítések bekapcsolása"
-
-#~ msgid "High threshold:"
-#~ msgstr "Felső küszöbérték:"
-
-#~ msgid "-1"
-#~ msgstr "-1"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Alsó küszöbérték:"
-
-#~ msgid "Alarm"
-#~ msgstr "Riasztás"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Érzékelők megjelenítése az alkalmazásmenüben"
-
-#~ msgid "Display sensor in the label (experimental)"
-#~ msgstr "Érzékelők megjelenítése a címkén (fejlesztés alatt)"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Alkalmazás Indikátor"
-
 #~ msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
 #~ msgstr "lmsensor: lmsensor_psensor_create hiba: rossz funkciótípus."
 
index 8bf6096..d43394d 100644 (file)
Binary files a/po/it.gmo and b/po/it.gmo differ
index 1923f94..eee8cce 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-20 11:24+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Italian\n"
@@ -18,21 +18,414 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Impossibile creare il Web server."
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Attivazione registro dei sensori fallita."
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, fuzzy, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Attivazione registro dei sensori fallita."
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Informazioni su..."
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Preferenze"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Esci"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Preferenze Sensore"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Monitor temperatura"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Aiuto"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Sensore"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Valore"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Minimo"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Massimo"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Colore"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Grafico"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Mostra"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Destra"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Sinistra"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "In Alto"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "In Basso"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Modifica le preferenze"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Nascondi le decorazioni della finestra"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Mantieni la finestra sotto"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Abilita il menù"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Abilita contatore nel Launcher Unity"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Celsius"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Fahrenheit"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Unità di misura della temperatura"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Posizione della tabella dei sensori"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Interfaccia"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Lancia all'avvio"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Nascondi la finestra all'avvio"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Ripristina posizione e dimensione della finestra"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Avvio"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Primo piano:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Sfondo:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Opacità dello sfondo:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Colori"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Durata del monitoraggio:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Intervallo di aggiornamento:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Misure"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Minimo</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Massimo</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "secondo/i"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minuto/i"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Intervallo di aggiornamento delle misure"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Abilita registrazione sensori"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Intervallo registrazione sensori:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Script eseguito quando un allarme viene attivato:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Sensori"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Modifica preferenze del sensore"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Nome"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Tipo:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "N/A"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Processore:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Nome:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Disegna curva"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Colore:"
+
+#: src/glade/sensor-edit.glade:448
+#, fuzzy
+msgid "Display sensor in the list of sensors"
+msgstr "Mostra sensore nel menu"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Attiva le notifiche sul desktop"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Soglia verso l'alto"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Soglia verso il basso"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Avviso"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Mostra sensore nel menu"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Indicatore Applicazione"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: impossibile trovare la libreria ADL"
@@ -59,11 +452,11 @@ msgstr ""
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr "Disco"
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: errore sk_disk_open(): %s."
@@ -83,37 +476,37 @@ msgstr "%s: impossibile aprire la connessione."
 msgid "%s: wrong string: %s."
 msgstr "%s: errore di stringa: %s"
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: impossibile rilevare il valore della sotto funzione %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: tipo di funzione errata."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr "CPU Intel"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr "CPU AMD"
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr "CPU NVIDIA"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr "CPU VIA"
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, fuzzy, c-format
 msgid "%s: initialization failure: %s."
 msgstr "lmsensor: inizializzazione fallita: %s"
@@ -139,48 +532,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Impossibile aprire il file di log: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Impossibile recuperare informazioni da NVIDIA"
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Impossibile recuperare informazioni da NVIDIA"
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Impossibile recuperare informazioni da NVIDIA"
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Impossibile connettersi al server X11."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Impossibile recuperare informazioni da NVIDIA"
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Impossibile recuperare informazioni da NVIDIA"
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "N/A"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "Variabile HOME non impostata."
@@ -202,7 +591,7 @@ msgstr "File di registazione sensori non aperto."
 msgid "Sensor log not open, cannot close."
 msgstr "Registro sensori non aperto, impossibile chiuderlo."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -217,12 +606,12 @@ msgstr ""
 "Questo è software libero: sei libero di modificarlo e redistribuirlo.\n"
 "NON esiste GARANZIA, per gli scopi permessi dalla legge.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Uso: %s [OPZIONE]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -230,11 +619,11 @@ msgstr ""
 "Psensor è un'applicazione GTK+ per monitorare i sensori dell'hardware, "
 "incluse temperature e velocità delle ventole."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Opzioni:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -242,7 +631,7 @@ msgstr ""
 "  -h, --help mostra questo help ed esce\n"
 "  -v, --version mostra le informazioni sulla versione ed esce"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -250,70 +639,61 @@ msgstr ""
 "  -u, --url=URL URL del server psensor,\n"
 "                      esempio: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 "  -n, --new-instance forza la creazione di una nuova applicazione Psensor"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=LEVEL imposta il livello di debug, un intero compreso tra 0 e 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Segnalare i bug a: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s home page: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Abilita la modalità debug."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Usare '%s --help' per maggiori informazioni.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Esiste già un'istanza di Psensor"
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Impossibile creare il Web server."
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Andrea Bernini https://launchpad.net/~andrea-bernini\n"
-"  Diego Pierotto https://launchpad.net/~gringo\n"
-"  Gabriele https://launchpad.net/~deepdown23\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Impossibile connettersi a: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Conenuto non valido: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "JSON non valido: %s"
 
 #: src/server/server.c:58
@@ -370,81 +750,102 @@ msgstr ""
 "  --sensor-log-interval=S imposta l'intervallo del registro di sensori come "
 "S (secondi)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Impossibile aprire il file di log: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP Request: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Abilita modalità di debug: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Nessun sensore rilevato."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Impossibile creare il Web server."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Web server inizializzato sulla porta: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW directory: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Attivazione registro dei sensori fallita."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor è un'applicazione GTK+ per monitorare i sensori hardware"
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Copyright(c) 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Informazioni su Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Andrea Bernini https://launchpad.net/~andrea-bernini\n"
+"  Diego Pierotto https://launchpad.net/~gringo\n"
+"  Gabriele https://launchpad.net/~deepdown23\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Psensor Homepage"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Impossibile caricare l'icona di Psensor."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Preferenze"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Colore di primo piano:"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Attivazione registro dei sensori fallita."
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "gettimeofday fallito."
@@ -458,204 +859,10 @@ msgstr "Allarme temperatura"
 msgid "Fan speed alert"
 msgstr "Allarme ventola"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Sconosciuto"
 
-#~ msgid "About"
-#~ msgstr "Informazioni su..."
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Preferenze Sensore"
-
-#~ msgid "Quit"
-#~ msgstr "Esci"
-
-#~ msgid "Show"
-#~ msgstr "Mostra"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Monitor temperatura"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Aiuto"
-
-#~ msgid "Sensor"
-#~ msgstr "Sensore"
-
-#~ msgid "Value"
-#~ msgstr "Valore"
-
-#~ msgid "Min"
-#~ msgstr "Minimo"
-
-#~ msgid "Max"
-#~ msgstr "Massimo"
-
-#~ msgid "Color"
-#~ msgstr "Colore"
-
-#~ msgid "Graph"
-#~ msgstr "Grafico"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Destra"
-
-#~ msgid "Left"
-#~ msgstr "Sinistra"
-
-#~ msgid "Top"
-#~ msgstr "In Alto"
-
-#~ msgid "Bottom"
-#~ msgstr "In Basso"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Modifica le preferenze"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Nascondi le decorazioni della finestra"
-
-#~ msgid "Keep window below"
-#~ msgstr "Mantieni la finestra sotto"
-
-#~ msgid "Enable menu"
-#~ msgstr "Abilita il menù"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Abilita contatore nel Launcher Unity"
-
-#~ msgid "Celsius"
-#~ msgstr "Celsius"
-
-#~ msgid "Fahrenheit"
-#~ msgstr "Fahrenheit"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Unità di misura della temperatura"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Posizione della tabella dei sensori"
-
-#~ msgid "Interface"
-#~ msgstr "Interfaccia"
-
-#~ msgid "Launch on session startup"
-#~ msgstr "Lancia all'avvio"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Nascondi la finestra all'avvio"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Ripristina posizione e dimensione della finestra"
-
-#~ msgid "Startup"
-#~ msgstr "Avvio"
-
-#~ msgid "Foreground:"
-#~ msgstr "Primo piano:"
-
-#~ msgid "Background:"
-#~ msgstr "Sfondo:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Opacità dello sfondo:"
-
-#~ msgid "Colors"
-#~ msgstr "Colori"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Durata del monitoraggio:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Intervallo di aggiornamento:"
-
-#~ msgid "Measures"
-#~ msgstr "Misure"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Minimo</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Massimo</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "secondo/i"
-
-#~ msgid "minute(s)"
-#~ msgstr "minuto/i"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Intervallo di aggiornamento delle misure"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Abilita registrazione sensori"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Intervallo registrazione sensori:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "secondo(i)"
-
-#~ msgid "Script executed when an alarm is raised:"
-#~ msgstr "Script eseguito quando un allarme viene attivato:"
-
-#~ msgid "Sensors"
-#~ msgstr "Sensori"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Modifica preferenze del sensore"
-
-#~ msgid "Name"
-#~ msgstr "Nome"
-
-#~ msgid "Type:"
-#~ msgstr "Tipo:"
-
-#~ msgid "Chip:"
-#~ msgstr "Processore:"
-
-#~ msgid "Name:"
-#~ msgstr "Nome:"
-
-#~ msgid "Id:"
-#~ msgstr "Id:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Disegna curva"
-
-#~ msgid "Color:"
-#~ msgstr "Colore:"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Mostra sensore nel menu"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Attiva le notifiche sul desktop"
-
-#~ msgid "High threshold:"
-#~ msgstr "Soglia verso l'alto"
-
-#~ msgid "-1"
-#~ msgstr "-1"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Soglia verso il basso"
-
-#~ msgid "Alarm"
-#~ msgstr "Avviso"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Mostra sensore nel menu"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Indicatore Applicazione"
-
 #~ msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
 #~ msgstr "lmsensor: lmsensor_psensor_create fallito: tipo di funzione errata."
 
index 2e7248c..dd09b60 100644 (file)
Binary files a/po/lv.gmo and b/po/lv.gmo differ
index 54ee3d9..791a3f1 100644 (file)
--- a/po/lv.po
+++ b/po/lv.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-20 11:26+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Latvian <lv@li.org>\n"
@@ -18,21 +18,415 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Neizdevās izveidot tīmekļa serveri."
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Neizdevās aktivizēt sensoru žurnalēšanu."
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, fuzzy, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Neizdevās aktivizēt sensoru žurnalēšanu."
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Par"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Iestatījumi"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Iziet"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Sensoru iestatījumi"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - temperatūras pārraugs"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Palīdzība"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Sensors"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Vērtība"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min."
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Maks."
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Krāsa"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Grafiks"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Rādīt"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Pa labi"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Pa kreisi"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Augšā"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Lejā"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Rediģēt iestatījumus"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Slēpt loga apdari"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Turēt logu apakšā"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Aktivizēt izvēlni"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Aktivizēt Unity palaidēja skaitītāju"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Celsijs"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Fārenheits"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Temperatūras mērvienība:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Sensoru tabulas novietojums:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Saskarne"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Palaist pieteicoties sistēmā"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Slēpt logu pieteicoties sistēmā"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Atjaunot loga pozīciju un izmēru"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Palaišana"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Priekšplāns:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Fons:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Fona necaurspīdība:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Krāsas"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Pārraudzības ilgums:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Atjaunināšanas intervāls:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Mērījumi"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min.</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Maks.</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "sekunde(s)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minūte(s)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Mērījumu atjaunināšanas intervāls:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Aktivizēt sensora žurnalēšanu"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Sensoru žurnalēšanas intervāls:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Skrips izpildīts, kad trauksme ir aktivizēta:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Sensori"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Rediģēt sensoru iestatījumus"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Nosaukums"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Tips:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "N/P"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Mikroshēma:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Nosaukums:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Zīmēt sensora līkni"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Krāsa:"
+
+#: src/glade/sensor-edit.glade:448
+#, fuzzy
+msgid "Display sensor in the list of sensors"
+msgstr "Rādīt sensoru aplikāciju indikatora izvēlnē"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Aktivizēt darbvirsmas paziņojumus"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Augsts slieksnis:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Zems slieksnis:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Trauksme"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Rādīt sensoru aplikāciju indikatora izvēlnē"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
+
+#: src/glade/sensor-edit.glade:719
+#, fuzzy
+msgid "Display sensor in the label (experimental)"
+msgstr "Attēlot sensoru etiķetē (eksperimentāls)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Aplikāciju indikators"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: nevar atrast ADL bibliotēku."
@@ -59,11 +453,11 @@ msgstr "AMD/ATI adapteru skaits: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Aktīvo AMD/ATI adapteru skaits: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr "Disks"
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, fuzzy, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "atasmart: sk_disk_open() atteice: %s."
@@ -83,37 +477,37 @@ msgstr "%s: neizdevās atvērt savienojumu."
 msgid "%s: wrong string: %s."
 msgstr "%s: nepareiza virkne: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: nevar iegūt vērtību no apakšīpašības %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: nepareis īpašības tips."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr "Intel CPU"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr "AMD CPU"
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr "NVIDIA GPU"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr "VIA CPU"
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: inicializācijas kļūda: %s."
@@ -139,48 +533,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Nevar atvērt žurnāla failu: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Neizdevās saņemt NVIDIA informāciju."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Neizdevās saņemt NVIDIA informāciju."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Neizdevās saņemt NVIDIA informāciju."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Nevar atvērt savienojumu ar X11 server."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Neizdevās saņemt NVIDIA informāciju."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Neizdevās saņemt NVIDIA informāciju."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "N/P"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "HOME mainīgais nav iestatīts."
@@ -202,7 +592,7 @@ msgstr "Sensora žurnāla fails nav atvērts."
 msgid "Sensor log not open, cannot close."
 msgstr "Sensora žurnāls nav atvērts, nevar aizvērt."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -212,12 +602,12 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Lietošana: %s [OPCIJAS]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -225,11 +615,11 @@ msgstr ""
 "Psensor ir GTK+ lietotne aparatūras sensoru pārraudzībai, ieskaitot "
 "temperatūras un ventilatoru ātrumus."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Opcijas:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -237,7 +627,7 @@ msgstr ""
 "  -h, --help          rādīt šo palīdzību un iziet\n"
 "  -v, --version       rādīt versijas informāciju un iziet"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -245,66 +635,59 @@ msgstr ""
 "  -u, --url=SAITE       psensor-server adrese,\n"
 "                      piemērs: http://saimniekdatoravārds:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr "  -n, --new-instance  piespiest izveidot jaunu Psensor lietotni"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr "  -d, --debug=LĪMENIS   iestatīt atkļūdošanas līmeni, starp 0 un 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Ziņojiet kļūdas uz: %s.\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s mājas lapa: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Aktivizēt atkļūdošanas režīmu."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Mēģiniet `%s --help', lai iegūtu vairāk informācijas.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Psensor instance jau eksistē."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Neizdevās izveidot tīmekļa serveri."
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  tuxmaniack https://launchpad.net/~tuxmaniack"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Neizdevās savienoties ar: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Nederīgs saturs: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "Nederīgs JSON: %s"
 
 #: src/server/server.c:58
@@ -359,84 +742,102 @@ msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 "  --sensor-log-interval=S iestata sensora žurnāla intervālu uz S (sekundēm)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Nevar atvērt žurnāla failu: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP pieprasījums: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Aktivizē atkļūdošanas režīmu: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Sensori nav atklāti."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Neizdevās izveidot tīmekļa serveri."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Tīmekļa serveris sākts uz porta: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW mape: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "Saite: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Neizdevās aktivizēt sensoru žurnalēšanu."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor ir GTK+ lietotne aparatūras sensoru pārraudzībai"
 
-#: src/ui.c:90
+#: src/ui.c:216
 #, fuzzy
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 "Autortiesības(c) 2010-2014\n"
 "jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Par Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  tuxmaniack https://launchpad.net/~tuxmaniack"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Psensor mājas lapa"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Neizdevās ielādēt Psensor ikonu."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Iestatījumi"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Izvēlieties priekšplāna krāsu"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Neizdevās aktivizēt sensoru žurnalēšanu."
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "gettimeofday neizdevās."
@@ -450,208 +851,10 @@ msgstr "Temperatūras trauksme"
 msgid "Fan speed alert"
 msgstr "Ventilatora trauksme"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Nezināms"
 
-#~ msgid "About"
-#~ msgstr "Par"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Sensoru iestatījumi"
-
-#~ msgid "Quit"
-#~ msgstr "Iziet"
-
-#~ msgid "Show"
-#~ msgstr "Rādīt"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - temperatūras pārraugs"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Palīdzība"
-
-#~ msgid "Sensor"
-#~ msgstr "Sensors"
-
-#~ msgid "Value"
-#~ msgstr "Vērtība"
-
-#~ msgid "Min"
-#~ msgstr "Min."
-
-#~ msgid "Max"
-#~ msgstr "Maks."
-
-#~ msgid "Color"
-#~ msgstr "Krāsa"
-
-#~ msgid "Graph"
-#~ msgstr "Grafiks"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Pa labi"
-
-#~ msgid "Left"
-#~ msgstr "Pa kreisi"
-
-#~ msgid "Top"
-#~ msgstr "Augšā"
-
-#~ msgid "Bottom"
-#~ msgstr "Lejā"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Rediģēt iestatījumus"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Slēpt loga apdari"
-
-#~ msgid "Keep window below"
-#~ msgstr "Turēt logu apakšā"
-
-#~ msgid "Enable menu"
-#~ msgstr "Aktivizēt izvēlni"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Aktivizēt Unity palaidēja skaitītāju"
-
-#~ msgid "Celsius"
-#~ msgstr "Celsijs"
-
-#~ msgid "Fahrenheit"
-#~ msgstr "Fārenheits"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Temperatūras mērvienība:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Sensoru tabulas novietojums:"
-
-#~ msgid "Interface"
-#~ msgstr "Saskarne"
-
-#~ msgid "Launch on session startup"
-#~ msgstr "Palaist pieteicoties sistēmā"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Slēpt logu pieteicoties sistēmā"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Atjaunot loga pozīciju un izmēru"
-
-#~ msgid "Startup"
-#~ msgstr "Palaišana"
-
-#~ msgid "Foreground:"
-#~ msgstr "Priekšplāns:"
-
-#~ msgid "Background:"
-#~ msgstr "Fons:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Fona necaurspīdība:"
-
-#~ msgid "Colors"
-#~ msgstr "Krāsas"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Pārraudzības ilgums:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Atjaunināšanas intervāls:"
-
-#~ msgid "Measures"
-#~ msgstr "Mērījumi"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min.</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Maks.</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "sekunde(s)"
-
-#~ msgid "minute(s)"
-#~ msgstr "minūte(s)"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Mērījumu atjaunināšanas intervāls:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Aktivizēt sensora žurnalēšanu"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Sensoru žurnalēšanas intervāls:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "sekunde(s)"
-
-#~ msgid "Script executed when an alarm is raised:"
-#~ msgstr "Skrips izpildīts, kad trauksme ir aktivizēta:"
-
-#~ msgid "Sensors"
-#~ msgstr "Sensori"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Rediģēt sensoru iestatījumus"
-
-#~ msgid "Name"
-#~ msgstr "Nosaukums"
-
-#~ msgid "Type:"
-#~ msgstr "Tips:"
-
-#~ msgid "Chip:"
-#~ msgstr "Mikroshēma:"
-
-#~ msgid "Name:"
-#~ msgstr "Nosaukums:"
-
-#~ msgid "Id:"
-#~ msgstr "Id:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Zīmēt sensora līkni"
-
-#~ msgid "Color:"
-#~ msgstr "Krāsa:"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Rādīt sensoru aplikāciju indikatora izvēlnē"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Aktivizēt darbvirsmas paziņojumus"
-
-#~ msgid "High threshold:"
-#~ msgstr "Augsts slieksnis:"
-
-#~ msgid "-1"
-#~ msgstr "-1"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Zems slieksnis:"
-
-#~ msgid "Alarm"
-#~ msgstr "Trauksme"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Rādīt sensoru aplikāciju indikatora izvēlnē"
-
-#, fuzzy
-#~ msgid "Display sensor in the label (experimental)"
-#~ msgstr "Attēlot sensoru etiķetē (eksperimentāls)"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Aplikāciju indikators"
-
 #~ msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
 #~ msgstr "lmsensor: lmsensor_psensor_create atteice: nepareis īpašības tips."
 
index b1a54d2..d10d005 100644 (file)
Binary files a/po/nl.gmo and b/po/nl.gmo differ
index 12551d6..f58e03d 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-20 11:25+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Dutch <nl@li.org>\n"
@@ -18,21 +18,423 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Kon geen webserver maken."
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Kon logboeken bijhouden niet inschakelen voor sensoren."
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, fuzzy, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Kon logboeken bijhouden niet inschakelen voor sensoren."
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Over"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Voorkeuren"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Afsluiten"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Sensorvoorkeuren"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Temperatuurbewaker"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Hulp"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Sensor"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Waarde"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Max"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Kleur"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Grafiek"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Tonen"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Voorkeuren bewerken"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Vensteromlijsting verbergen"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Houd venster eronder"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Menu inschakelen"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Teller voor Unity-starter inschakelen"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr ""
+"Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Temperatuureenheid:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Positie van sensorentabel:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Bedieningsschil"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Venster bij opstarten verbergen"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Vensterpositie en -grootte herstellen"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Voorgrond:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Achtergrond:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Ondoorzichtigheid van achtergrond:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Kleuren"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Duur van bewaking:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Tussenpoze voor bijwerken:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Metingen"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Max</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "seconde(n)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minu(u)t(en)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Tussenpoze voor bijwerken van meting:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Logboeken bijhouden inschakelen voor sensoren"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Tussenpoze voor bijhouden van logboeken voor sensoren:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Script dat wordt uitgevoerd wanneer er een alarm plaatsvindt:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Sensoren"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr ""
+"Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr ""
+"Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr ""
+"Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr ""
+"Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr ""
+"Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Sensorvoorkeuren bewerken"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Naam"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Soort:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "N.v.t."
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Chip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Naam:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Sensor-curve tekenen"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Kleur:"
+
+#: src/glade/sensor-edit.glade:448
+#, fuzzy
+msgid "Display sensor in the list of sensors"
+msgstr "Sensor tonen in het menu van de Toepassingsindicator"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Bureaubladmeldingen inschakelen"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Drempel voor hoog:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Drempel voor laag:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarm"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Sensor tonen in het menu van de Toepassingsindicator"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+"Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
+
+#: src/glade/sensor-edit.glade:719
+#, fuzzy
+msgid "Display sensor in the label (experimental)"
+msgstr "Sensor tonen in het menu van de Toepassingsindicator"
+
+#: src/glade/sensor-edit.glade:752
+#, fuzzy
+msgid "Application Indicator"
+msgstr "Ubuntu Toepassingsindicator"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: kan ADL-bibliotheekbestand niet vinden"
@@ -59,11 +461,11 @@ msgstr "Aantal AMD/ATI-videokaarten: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Aantal actieve AMD/ATI-videokaarten: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, fuzzy, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "atasmart: sk_disk_open() mislukking: %s."
@@ -83,37 +485,37 @@ msgstr "%s: kon verbinding niet openen."
 msgid "%s: wrong string: %s."
 msgstr "%s: verkeerde tekenreeks: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: kan waarde van subfunctie %s niet bepalen: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: verkeerd functietype."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: opstartfout: %s."
@@ -139,48 +541,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Kan logboekbestand niet openen: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Kon Nvidia-informatie niet ophalen."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Kon Nvidia-informatie niet ophalen."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Kon Nvidia-informatie niet ophalen."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Kan verbinding met X11-server niet openen."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Kon Nvidia-informatie niet ophalen."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Kon Nvidia-informatie niet ophalen."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "N.v.t."
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "Variabele voor HOME niet ingesteld."
@@ -202,7 +600,7 @@ msgstr "Logboekbestand van sensor niet geopend."
 msgid "Sensor log not open, cannot close."
 msgstr "Logboekbestand van sensor niet geopend, kan niet sluiten."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -217,12 +615,12 @@ msgstr ""
 "Dit is vrije programmatuur: u mag hem wijzigen en doorgeven.\n"
 "Er zit geen garantie op, voor zover de wet dat toestaat.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Gebruik: %s [OPTIE]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -230,11 +628,11 @@ msgstr ""
 "Psensor is een GTK+ toepassing voor het bewaken van apparatuursensoren, "
 "inclusief temperaturen en ventilatorsnelheden."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Opties:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -242,7 +640,7 @@ msgstr ""
 "  -h, --help          toon deze hulpinformatie en sluit af\n"
 "  -v, --version       toon versie-informatie en sluit af"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -250,69 +648,62 @@ msgstr ""
 "  -u, --url=URL       het webadres van de psensor-server,\n"
 "                      voorbeeld: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 "  -n, --new-instance  forceer het aanmaken van een nieuwe Psensor-toepassing"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=LEVEL   stel het foutopsporingsniveau in, integer tussen 0 en 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Meld fouten aan: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Webpagina van %s: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 "Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Schakelt foutopsporingsmodus in."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Probeer '%s --help' voor meer informatie.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Er bestaat reeds een instantie van Psensor."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Kon geen webserver maken."
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Pjotr12345 https://launchpad.net/~computertip"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Kon niet verbinden met: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Ongeldige inhoud: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "Ongeldige JSON: %s"
 
 #: src/server/server.c:58
@@ -369,81 +760,100 @@ msgstr ""
 "  --sensor-log-interval=S stel de tussenpoze voor het sensorlogboek in op S "
 "(seconden)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Kan logboekbestand niet openen: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP-verzoek: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Schakelt foutopsporingsmodus in: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Geen sensoren bespeurd."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Kon geen webserver maken."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Webserver gestart op poort: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW-map: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Kon logboeken bijhouden niet inschakelen voor sensoren."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor is een GTK+ toepassing voor het bewaken van apparatuursensoren"
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Auteursrecht(c) 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Over Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Pjotr12345 https://launchpad.net/~computertip"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Thuispagina van Psensor"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Kon pictogram van Psensor niet laden."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Voorkeuren"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Kies voorgrondkleur"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Kon logboeken bijhouden niet inschakelen voor sensoren."
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "gettimeofday (tijdbepaling) is mislukt."
@@ -457,181 +867,10 @@ msgstr "Temperatuurwaarschuwing"
 msgid "Fan speed alert"
 msgstr "Ventilatorwaarschuwing"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Onbekend"
 
-#~ msgid "About"
-#~ msgstr "Over"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Sensorvoorkeuren"
-
-#~ msgid "Quit"
-#~ msgstr "Afsluiten"
-
-#~ msgid "Show"
-#~ msgstr "Tonen"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Temperatuurbewaker"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Hulp"
-
-#~ msgid "Sensor"
-#~ msgstr "Sensor"
-
-#~ msgid "Value"
-#~ msgstr "Waarde"
-
-#~ msgid "Min"
-#~ msgstr "Min"
-
-#~ msgid "Max"
-#~ msgstr "Max"
-
-#~ msgid "Color"
-#~ msgstr "Kleur"
-
-#~ msgid "Graph"
-#~ msgstr "Grafiek"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Voorkeuren bewerken"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Vensteromlijsting verbergen"
-
-#~ msgid "Keep window below"
-#~ msgstr "Houd venster eronder"
-
-#~ msgid "Enable menu"
-#~ msgstr "Menu inschakelen"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Teller voor Unity-starter inschakelen"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Temperatuureenheid:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Positie van sensorentabel:"
-
-#~ msgid "Interface"
-#~ msgstr "Bedieningsschil"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Venster bij opstarten verbergen"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Vensterpositie en -grootte herstellen"
-
-#~ msgid "Foreground:"
-#~ msgstr "Voorgrond:"
-
-#~ msgid "Background:"
-#~ msgstr "Achtergrond:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Ondoorzichtigheid van achtergrond:"
-
-#~ msgid "Colors"
-#~ msgstr "Kleuren"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Duur van bewaking:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Tussenpoze voor bijwerken:"
-
-#~ msgid "Measures"
-#~ msgstr "Metingen"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Max</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "seconde(n)"
-
-#~ msgid "minute(s)"
-#~ msgstr "minu(u)t(en)"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Tussenpoze voor bijwerken van meting:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Logboeken bijhouden inschakelen voor sensoren"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Tussenpoze voor bijhouden van logboeken voor sensoren:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "seconden(s)"
-
-#~ msgid "Script executed when an alarm is raised:"
-#~ msgstr "Script dat wordt uitgevoerd wanneer er een alarm plaatsvindt:"
-
-#~ msgid "Sensors"
-#~ msgstr "Sensoren"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Sensorvoorkeuren bewerken"
-
-#~ msgid "Name"
-#~ msgstr "Naam"
-
-#~ msgid "Type:"
-#~ msgstr "Soort:"
-
-#~ msgid "Chip:"
-#~ msgstr "Chip:"
-
-#~ msgid "Name:"
-#~ msgstr "Naam:"
-
-#~ msgid "Id:"
-#~ msgstr "Id:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Sensor-curve tekenen"
-
-#~ msgid "Color:"
-#~ msgstr "Kleur:"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Sensor tonen in het menu van de Toepassingsindicator"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Bureaubladmeldingen inschakelen"
-
-#~ msgid "High threshold:"
-#~ msgstr "Drempel voor hoog:"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Drempel voor laag:"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarm"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Sensor tonen in het menu van de Toepassingsindicator"
-
-#, fuzzy
-#~ msgid "Display sensor in the label (experimental)"
-#~ msgstr "Sensor tonen in het menu van de Toepassingsindicator"
-
-#, fuzzy
-#~ msgid "Application Indicator"
-#~ msgstr "Ubuntu Toepassingsindicator"
-
 #~ msgid "Sensor Information"
 #~ msgstr "Sensorinformatie"
 
diff --git a/po/pl.gmo b/po/pl.gmo
new file mode 100644 (file)
index 0000000..dd9c042
Binary files /dev/null and b/po/pl.gmo differ
diff --git a/po/pl.po b/po/pl.po
new file mode 100644 (file)
index 0000000..370aff9
--- /dev/null
+++ b/po/pl.po
@@ -0,0 +1,849 @@
+# Polish translations for psensor package.
+# Copyright (C) 2016 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psensor package.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
+# Translators:
+# hawkeye116477 <hawkeye116477@gmail.com>, 2016.
+msgid ""
+msgstr ""
+"Project-Id-Version: psensor 1.2.0\n"
+"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
+"PO-Revision-Date: 2016-08-25 11:09+0200\n"
+"Last-Translator: hawkeye116477 <hawkeye116477@gmail.com>\n"
+"Language-Team: Polish\n"
+"Language: pl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: src/cfg.c:501
+#, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Nie powiodło się utworzenie katalogu %s: %s"
+
+#: src/cfg.c:548
+#, c-format
+msgid "Failed to load configuration file %s: %s"
+msgstr "Nie powiodło się załadowanie pliku konfiguracyjnego %s: %s"
+
+#: src/cfg.c:573
+#, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Nie powiodło się zapisanie pliku konfiguracyjnego %s."
+
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "O programie"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Preferencje"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Zamknij"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Preferencje czujników"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - kontroler temperatury"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "Pomoc"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Czujnik"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Wartość"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Max"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Kolor"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Wykres"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Pokaż"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Prawo"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Lewo"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Góra"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Dół"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Edycja preferencji"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Ukryj dekorację okna"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Utrzymaj okno poniżej"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Włącz menu"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Włącz licznik Unity Launcher"
+
+#: src/glade/psensor-pref.glade:190
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor nie został zbudowany z obsługą Unity Launcher"
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Celsjusz"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Fahrenheit"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Jednostka temperatury:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Pozycja tabeli czujników:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Interfejs"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Uruchom przy starcie sesji"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Ukryj okno przy starcie"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Przywróć pozycję i rozmiar okna"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Uruchamianie"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Pierwszy plan:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Tło:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Nieprzezroczystość tła:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Kolory"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Czas trwania monitorowania:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Częstość aktualizacji:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Pomiary"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Max</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "sekund(y)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minut(y)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr "Gładkie krzywe"
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr "Krzywe"
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Częstość aktualizacji pomiarów:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Włącz logowanie czujników"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Częstość logowania czujników:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Wykonywany skrypt, gdy podniesiony jest alarm:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Czujniki"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr "Włącz obsługę lm-sensors"
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr "Włącz obsługę NVCtrl (NVidia)"
+
+#: src/glade/psensor-pref.glade:974
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor nie został zbudowany z obsługą NVCtrl"
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr "Włącz obsługę ATI ADL"
+
+#: src/glade/psensor-pref.glade:993
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor nie został zbudowany z obsługą ATI ADL"
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr "Włącz obsługę gtop2"
+
+#: src/glade/psensor-pref.glade:1012
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor nie został zbudowany z obsługą gtop2"
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr "Włącz obsługę demona hddtemp"
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr "Włącz obsługę libatasmart"
+
+#: src/glade/psensor-pref.glade:1049
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor nie został zbudowany z obsługą libatasmart "
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr "Włącz obsługę udisks2"
+
+#: src/glade/psensor-pref.glade:1068
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor nie został zbudowany z obsługą udisks2"
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr "Zmiany zostaną zatwierdzone po restarcie programu psensor"
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr "Dysk twardy"
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr "Wykorzystanie pamięci i procesora"
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr "GPU z własnościowym sterownikiem"
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr "Płyta główna, procesor (CPU) i procesor graficzny (GPU)"
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr "Dostawcy"
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Edycja preferencji czujników"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Nazwa"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Typ:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "Niedostępne"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Chip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Nazwa:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr "Min:"
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr "Max:"
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr "etykieta"
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr "Szczegóły"
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Narysuj krzywą czujnika"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Kolor:"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr "Wyświetl czujnik na liście czujników"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Aktywuj powiadomienia na pulpicie"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Wysoki próg:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr "0"
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Niski próg:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarm"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Wyświetl czujnik w menu"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+"Psensor nie został zbudowany z obsługą wskaźnika aplikacji (AppIndicator)"
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr "Wyświetl czujnik w etykiecie (eksperymentalne)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Wskaźnik aplikacji"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr "Brak wykresów"
+
+#: src/lib/amd.c:171
+msgid "AMD: cannot found ADL library."
+msgstr "AMD: nie można znaleźć biblioteki ADL."
+
+#: src/lib/amd.c:198
+msgid "AMD: missing ADL's API."
+msgstr "AMD: brakuje API ADL."
+
+#: src/lib/amd.c:208
+msgid "AMD: failed to initialize ADL."
+msgstr "AMD: nie powiodła się inicjalizacja ADL."
+
+#: src/lib/amd.c:214
+msgid "AMD: cannot get the number of adapters."
+msgstr "AMD: nie można uzyskać ilości kart."
+
+#: src/lib/amd.c:253
+#, c-format
+msgid "Number of AMD/ATI adapters: %d"
+msgstr "Ilość kart AMD/ATI: %d"
+
+#: src/lib/amd.c:254
+#, c-format
+msgid "Number of active AMD/ATI adapters: %d"
+msgstr "Ilość aktywnych kart AMD/ATI: %d"
+
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
+msgid "Disk"
+msgstr "Dysk"
+
+#: src/lib/hdd_atasmart.c:153
+#, c-format
+msgid "%s: sk_disk_open() failure: %s."
+msgstr "%s: sk_disk_open() niepowodzenie: %s."
+
+#: src/lib/hdd_hddtemp.c:62
+#, c-format
+msgid "%s: failed to open socket."
+msgstr "%s: nie udało się otworzyć gniazdo."
+
+#: src/lib/hdd_hddtemp.c:75
+#, c-format
+msgid "%s: failed to open connection."
+msgstr "%s: nie udało się otworzyć połączenie."
+
+#: src/lib/hdd_hddtemp.c:190 src/lib/hdd_hddtemp.c:270
+#, c-format
+msgid "%s: wrong string: %s."
+msgstr "%s: błędne wyrażenie: %s."
+
+#: src/lib/lmsensor.c:73
+#, c-format
+msgid "%s: Cannot get value of subfeature %s: %s."
+msgstr "%s: Nie można uzyskać wartości podfunkcji %s: %s."
+
+#: src/lib/lmsensor.c:174
+#, c-format
+msgid "%s: Wrong feature type."
+msgstr "%s: Błędny typ funkcji."
+
+#: src/lib/lmsensor.c:203
+msgid "Intel CPU"
+msgstr "Procesor Intel"
+
+#: src/lib/lmsensor.c:207
+msgid "AMD CPU"
+msgstr "Procesor AMD"
+
+#: src/lib/lmsensor.c:209
+msgid "NVIDIA GPU"
+msgstr "GPU NVIDIA"
+
+#: src/lib/lmsensor.c:211
+msgid "VIA CPU"
+msgstr "Procesor VIA"
+
+#: src/lib/lmsensor.c:213
+msgid "ACPI"
+msgstr "ACPI"
+
+#: src/lib/lmsensor.c:245
+#, c-format
+msgid "%s: initialization failure: %s."
+msgstr "%s: nie powodzenie inicjalizacji: %s."
+
+#: src/lib/pgtop2.c:42
+msgid "CPU usage"
+msgstr "Wykorzystanie procesora"
+
+#: src/lib/pgtop2.c:47
+msgid "CPU"
+msgstr "Procesor"
+
+#: src/lib/pgtop2.c:63
+msgid "free memory"
+msgstr "wolna pamięć"
+
+#: src/lib/pgtop2.c:64
+msgid "memory"
+msgstr "pamięć"
+
+#: src/lib/plog.c:43
+#, c-format
+msgid "Cannot open log file: %s"
+msgstr "Nie można otworzyć pliku dziennika: %s"
+
+#: src/lib/nvidia.c:69
+#, c-format
+msgid "%s: Unknown NVIDIA product name for GPU %d"
+msgstr "%s: Nieznana nazwa produktu NVIDIA dla GPU %d"
+
+#: src/lib/nvidia.c:74
+#, c-format
+msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
+msgstr "%s: Nie powiodło się uzyskanie nazwy produktu NVIDIA dla GPU %d"
+
+#: src/lib/nvidia.c:240
+#, c-format
+msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
+msgstr "%s: Nie powiodło się uzyskanie pomiarów typu %x dla GPU NVIDIA %d"
+
+#: src/lib/nvidia.c:317
+#, c-format
+msgid "%s: Cannot open connection to X11 server."
+msgstr "%s: Nie można otworzyć połączenia do serwera X11."
+
+#: src/lib/nvidia.c:325
+#, c-format
+msgid "%s: Failed to retrieve NVIDIA information."
+msgstr "%s: Nie powiodło się uzyskanie informacji NVIDIA."
+
+#: src/lib/nvidia.c:394
+#, c-format
+msgid "%s: Failed to retrieve number of fans."
+msgstr "%s: Nie powiodło się uzyskanie ilości wentylatorów."
+
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
+msgid "RPM"
+msgstr "obr./min"
+
+#: src/lib/psensor.c:428
+msgid "%"
+msgstr "%"
+
+#: src/lib/slog.c:87
+msgid "HOME variable not set."
+msgstr "Zmienna HOME nie jest ustawiona."
+
+#: src/lib/slog.c:96
+msgid "Sensor log file already open."
+msgstr "Plik dziennika czujnika jest już otwarty."
+
+#: src/lib/slog.c:105
+#, c-format
+msgid "Cannot open sensor log file: %s."
+msgstr "Nie można otworzyć pliku dziennika czujnika: %s."
+
+#: src/lib/slog.c:136
+msgid "Sensor log file not open."
+msgstr "Plik dziennika czujnika nie otwarty."
+
+#: src/lib/slog.c:192
+msgid "Sensor log not open, cannot close."
+msgstr "Plik dziennika czujnika nie otwarty, nie można zamknąć."
+
+#: src/main.c:61 src/server/server.c:88
+#, c-format
+msgid ""
+"Copyright (C) %s jeanfi@gmail.com\n"
+"License GPLv2: GNU GPL version 2 or later <http://www.gnu.org/licenses/old-"
+"licenses/gpl-2.0.html>\n"
+"This is free software: you are free to change and redistribute it.\n"
+"There is NO WARRANTY, to the extent permitted by law.\n"
+msgstr ""
+"Copyright (C) %s jeanfi@gmail.com\n"
+"Licencja GPLv2: GNU GPL wersja 2 lub nowsza <http://www.gnu.org/licenses/old-"
+"licenses/gpl-2.0.html>\n"
+"To jest wolne oprogramowanie: możesz je dowolnie modyfikować i "
+"rozpowszechniać.\n"
+"NIE MA GWARANCJI w zakresie dozwolonym przez prawo.\n"
+
+#: src/main.c:72 src/server/server.c:98
+#, c-format
+msgid "Usage: %s [OPTION]...\n"
+msgstr "Użycie: %s [OPCJA]...\n"
+
+#: src/main.c:74
+msgid ""
+"Psensor is a GTK+ application for monitoring hardware sensors, including "
+"temperatures and fan speeds."
+msgstr ""
+"Psensor jest aplikacją GTK+ do monitorowania czujników sprzętowych, w tym "
+"temperatury i prędkości wentylatorów."
+
+#: src/main.c:78
+msgid "Options:"
+msgstr "Opcje:"
+
+#: src/main.c:79
+msgid ""
+"  -h, --help          display this help and exit\n"
+"  -v, --version       display version information and exit"
+msgstr ""
+"  -h, --help          wyświetl pomoc i wyjdź\n"
+"  -v, --version       wyświetl informacje o wersji i wyjdź"
+
+#: src/main.c:85
+msgid ""
+"  -u, --url=URL       the URL of the psensor-server,\n"
+"                      example: http://hostname:3131"
+msgstr ""
+"  -u, --url=URL       adres URL serwera psensor,\n"
+"                      przykład: http://nazwahosta:3131"
+
+#: src/main.c:88
+msgid "  -n, --new-instance  force the creation of a new Psensor application"
+msgstr "  -n, --new-instance  wymuś utworzenie nowej aplikacji Psensor"
+
+#: src/main.c:91
+msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
+msgstr ""
+"  -d, --debug=POZIOM  ustaw poziom debugowania, liczbę całkowitą od 0 do 3"
+
+#: src/main.c:96 src/server/server.c:121
+#, c-format
+msgid "Report bugs to: %s\n"
+msgstr "Zgłoś błędy do: %s\n"
+
+#: src/main.c:98 src/server/server.c:123
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr "Strona internetowa %s: <%s>\n"
+
+#: src/main.c:390
+msgid "Psensor has not been compiled with remote sensor support."
+msgstr "Psensor nie został skompilowany z obsługą zdalnego czujnika."
+
+#: src/main.c:460
+msgid "Enables debug mode."
+msgstr "Włącza tryb debugowania."
+
+#: src/main.c:472 src/server/server.c:422
+#, c-format
+msgid "Try `%s --help' for more information.\n"
+msgstr "Spróbuj `%s --help', aby uzyskać więcej informacji.\n"
+
+#: src/main.c:485
+msgid "A Psensor instance already exists."
+msgstr "Instancja Psensor już istnieje."
+
+#: src/main.c:527
+msgid "Failed to create thread for monitoring sensors"
+msgstr "Nie powiodło się utworzenie wątku do monitorowania czujników"
+
+#: src/rsensor.c:115
+#, c-format
+msgid "%s: Fail to connect to: %s"
+msgstr "%s: Nie udało się połączyć: %s"
+
+#: src/rsensor.c:152
+#, c-format
+msgid "%s: Invalid content: %s"
+msgstr "%s: Nieprawidłowa zawartość: %s"
+
+#: src/rsensor.c:192
+#, c-format
+msgid "%s: Invalid JSON: %s"
+msgstr "%s: Nieprawidłowy JSON: %s"
+
+#: src/server/server.c:58
+msgid "<html><body><p>Server stop requested</p></body></html>"
+msgstr "<html><body><p>Żądano zatrzymania serwera</p></body></html>"
+
+#: src/server/server.c:64
+msgid ""
+"<html><body><p>Page not found - Go to <a href='/'>Main page</a></p></body>"
+msgstr ""
+"<html><body><p>Strona nie znaleziona - Przejdź do <a href='/'>strony "
+"głównej</a></p></body>"
+
+#: src/server/server.c:100
+msgid ""
+"psensor-server is an HTTP server for monitoring hardware sensors remotely."
+msgstr ""
+"psensor-server jest serwerem HTTP do zdalnego monitorowania czujników "
+"sprzętowych."
+
+#: src/server/server.c:105
+msgid ""
+"  -h, --help\t\tdisplay this help and exit\n"
+"  -v, --version\t\tdisplay version information and exit"
+msgstr ""
+"  -h, --help\t\twyświetl pomoc i wyjdź\n"
+"  -v, --version\t\twyświetl informacje o wersji i wyjdź"
+
+#: src/server/server.c:109
+msgid ""
+"  -p,--port=PORT\twebserver port\n"
+"  -w,--wdir=DIR\t\tdirectory containing webserver pages"
+msgstr ""
+"  -p,--port=PORT\tport serwera sieciowego\n"
+"  -w,--wdir=KATALOG\t\tkatalog zawierający strony serwera sieciowego"
+
+#: src/server/server.c:113
+msgid "  -d, --debug=LEVEL     set the debug level, integer between 0 and 3"
+msgstr "  -d, --debug=POZIOM  ustaw poziom debugowania, liczba całkowita 0-3"
+
+#: src/server/server.c:115
+msgid "  -l, --log-file=PATH   set the log file to PATH"
+msgstr "  -l, --log-file=ŚCIEŻKA   ustaw ŚCIEŻKĘ do pliku dziennika"
+
+#: src/server/server.c:116
+msgid "  --sensor-log-file=PATH set the sensor log file to PATH"
+msgstr "  --sensor-log-file=ŚCIEŻKA ustaw ŚCIEŻKĘ do pliku dziennika"
+
+#: src/server/server.c:117
+msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
+msgstr ""
+"  --sensor-log-interval=S ustaw częstość logowania czujników na S (sekund)"
+
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, c-format
+msgid "Cannot get real path of %s"
+msgstr "Nie można uzyskać prawdziwej ścieżki %s"
+
+#: src/server/server.c:339
+#, c-format
+msgid "HTTP Request: %s"
+msgstr "Żądanie HTTP: %s"
+
+#: src/server/server.c:402
+#, c-format
+msgid "Enables debug mode: %d"
+msgstr "Włącza tryb debugowania: %d"
+
+#: src/server/server.c:431
+#, c-format
+msgid "Webserver directory does not exist.\n"
+msgstr "Ścieżka serwera sieciowego nie istnieje.\n"
+
+#: src/server/server.c:452
+msgid "No sensors detected."
+msgstr "Brak czujników."
+
+#: src/server/server.c:459
+msgid "Failed to create Web server."
+msgstr "Nie powiodło się utworzenie serwera sieciowego."
+
+#: src/server/server.c:463
+#, c-format
+msgid "Web server started on port: %d"
+msgstr "Serwer sieciowy uruchomiony pod portem: %d"
+
+#: src/server/server.c:464
+#, c-format
+msgid "WWW directory: %s"
+msgstr "Katalog WWW: %s"
+
+#: src/server/server.c:465
+#, c-format
+msgid "URL: http://localhost:%d"
+msgstr "Adres URL: http://localhost:%d"
+
+#: src/server/server.c:475
+msgid "Failed to activate logging of sensors."
+msgstr "Nie powiodło się włączenie logowania czujników."
+
+#: src/ui.c:213
+msgid "Psensor is a GTK+ application for monitoring hardware sensors"
+msgstr "Psensor jest aplikacją GTK+ do monitorowania czujników sprzętowych"
+
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
+msgstr "Copyright(c) 2010-2016 jeanfi@gmail.com"
+
+#: src/ui.c:222
+msgid "About Psensor"
+msgstr "O programie Psensor"
+
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Contributions:\n"
+"  hawkeye116477"
+
+#: src/ui.c:226
+msgid "Psensor Homepage"
+msgstr "Strona internetowa programu Psensor"
+
+#: src/ui.c:363
+msgid "Failed to load Psensor icon."
+msgstr "Nie powiodło się załadowanie ikony programu Psensor"
+
+#: src/ui_sensorlist.c:259
+msgid "Hide"
+msgstr "Ukryj"
+
+#: src/ui_sensorlist.c:303
+msgid "Select sensor color"
+msgstr "Wybierz kolor czujnika"
+
+#: src/ui_appindicator.c:148
+#, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Nie powiodło się załadowanie pliku glade %s: %s"
+
+#: src/ui_notify.c:48
+msgid "gettimeofday failed."
+msgstr "gettimeofday nie powiodło się."
+
+#: src/ui_notify.c:77
+msgid "Temperature alert"
+msgstr "Alarm temperatury"
+
+#: src/ui_notify.c:79
+msgid "Fan speed alert"
+msgstr "Alarm prędkości wentylatora"
+
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
+msgid "Unknown"
+msgstr "Nieznany"
+
+#~ msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#~ msgstr "Copyright(c) 2010-2014 jeanfi@gmail.com"
index c3e440c..2f9efd0 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,21 +17,406 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr ""
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr ""
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr ""
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr ""
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr ""
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr ""
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr ""
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr ""
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr ""
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr ""
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr ""
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr ""
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr ""
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr ""
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:190
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+msgid "Psensor has not been build with NVCtrl support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+msgid "Psensor has not been build with ATI ADL support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+msgid "Psensor has not been build with gtop2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+msgid "Psensor has not been build with libatasmart support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+msgid "Psensor has not been build with udisks2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr ""
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr ""
@@ -58,11 +443,11 @@ msgstr ""
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr ""
@@ -82,37 +467,37 @@ msgstr ""
 msgid "%s: wrong string: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr ""
@@ -138,48 +523,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr ""
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr ""
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr ""
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr ""
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr ""
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr ""
@@ -201,7 +582,7 @@ msgstr ""
 msgid "Sensor log not open, cannot close."
 msgstr ""
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -211,89 +592,85 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr ""
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
 msgstr ""
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr ""
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
 msgstr ""
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
 msgstr ""
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr ""
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr ""
 
-#: src/main.c:631
+#: src/main.c:527
 msgid "Failed to create thread for monitoring sensors"
 msgstr ""
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-
-#: src/rsensor.c:107
+#: src/rsensor.c:115
 #, c-format
-msgid "Fail to connect to: %s"
+msgid "%s: Fail to connect to: %s"
 msgstr ""
 
-#: src/rsensor.c:144
+#: src/rsensor.c:152
 #, c-format
-msgid "Invalid content: %s"
+msgid "%s: Invalid content: %s"
 msgstr ""
 
-#: src/rsensor.c:184
+#: src/rsensor.c:192
 #, c-format
-msgid "Invalid JSON: %s"
+msgid "%s: Invalid JSON: %s"
 msgstr ""
 
 #: src/server/server.c:58
@@ -338,78 +715,93 @@ msgstr ""
 msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, c-format
+msgid "Cannot get real path of %s"
+msgstr ""
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr ""
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr ""
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr ""
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr ""
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr ""
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr ""
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr ""
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr ""
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr ""
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr ""
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr ""
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr ""
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
+#: src/ui_sensorlist.c:303
+msgid "Select sensor color"
 msgstr ""
 
-#: src/ui_sensorlist.c:296
-msgid "Select sensor color"
+#: src/ui_appindicator.c:148
+#, c-format
+msgid "Failed to load glade file %s: %s"
 msgstr ""
 
 #: src/ui_notify.c:48
@@ -424,6 +816,6 @@ msgstr ""
 msgid "Fan speed alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr ""
index f975504..41210dc 100644 (file)
Binary files a/po/pt_BR.gmo and b/po/pt_BR.gmo differ
index 42c720c..b76875d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-11 21:22+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Brazilian Portuguese\n"
@@ -18,21 +18,406 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Falhou ao criar servidor web."
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Falhou ao criar servidor web."
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr ""
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Sobre"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Preferências"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Sair"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Preferências de sensores"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Monitor de temperatura"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "Ajuda"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Sensor"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Valor"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Max"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Cor"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Grafo"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Mostrar"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Editar Preferências"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Ocultar decoração da janela"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Manter janela abaixo"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Habilitar menu"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:190
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Unidade de temperatura:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Posição da tabela de sensores:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Interface"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Ocultar janela na inicialização"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Restaurar posição e tamanho da janela"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Primeiro plano:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Plano de fundo:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Opacidade do plano de fundo:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Cores"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Duração do monitoramento:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Intervalo de atualização:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Medidas"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Max</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "segundo(s)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minuto(s)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Intervalo de atualização das medições:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Habilitar registro (log) de sensores"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Intervalo de registro dos sensores:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Sensores"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+msgid "Psensor has not been build with NVCtrl support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+msgid "Psensor has not been build with ATI ADL support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+msgid "Psensor has not been build with gtop2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+msgid "Psensor has not been build with libatasmart support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+msgid "Psensor has not been build with udisks2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Editar preferências do sensor"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Nome"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Tipo:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "N/D"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Chip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Nome:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "ID:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Desenhar curva do sensor"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Cor:"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Ativar notificações de desktop"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Limite superior:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Limite inferior:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarme"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr ""
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: não foi possível encontrar a biblioteca ADL."
@@ -59,11 +444,11 @@ msgstr "Número de adaptadores AMD/ATI: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Número de adaptadores AMD/ATI ativos: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: falha em sk_disk_open(): %s."
@@ -83,37 +468,37 @@ msgstr "%s: falha em abrir conexão."
 msgid "%s: wrong string: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: não foi possível obter valor do sub-recurso %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: falha na inicialização: %s."
@@ -139,48 +524,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Não é possível abrir arquivo de log: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Falha ao recuperar informações de NVIDIA."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Falha ao recuperar informações de NVIDIA."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Falha ao recuperar informações de NVIDIA."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Não é possível abrir conexão com o servidor X11."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Falha ao recuperar informações de NVIDIA."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Falha ao recuperar informações de NVIDIA."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "N/D"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "Variável HOME não configurada."
@@ -202,7 +583,7 @@ msgstr "Arquivo de registros do sensor não foi aberto."
 msgid "Sensor log not open, cannot close."
 msgstr ""
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -212,12 +593,12 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Uso: %s [OPÇÃO]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -225,11 +606,11 @@ msgstr ""
 "Psensor é um aplicativo GTK+ para monitoramento de sensores de hardware, "
 "incluindo temperatura e velocidade de ventoinhas."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Opções:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -237,7 +618,7 @@ msgstr ""
 "  -h, --help          exibir esta ajuda e sair\n"
 "  -v, --version       exibir informação de versão e sair"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -245,69 +626,59 @@ msgstr ""
 "  -u, --url=URL       a URL  do psensor-server,\n"
 "                      exemplo: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Relatar falhas para: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Página inicial de %s: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Ativar o modo de depuração"
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Utilize `%s --help' para mais informações.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Uma instancia de Psensor já existe."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Falhou ao criar servidor web."
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Celio Alves https://launchpad.net/~celio.alves\n"
-"  Daniel Serafim https://launchpad.net/~daniel-serafim\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  MestreLion https://launchpad.net/~mestrelion\n"
-"  Rafael Neri https://launchpad.net/~rafepel"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Falha ao conectar: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Conteúdo inválido: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "JSON inválido: %s"
 
 #: src/server/server.c:58
@@ -356,81 +727,103 @@ msgstr ""
 msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Não é possível abrir arquivo de log: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "Requisição HTTP: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Habilita modo de depuração: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Nenhum sensor detectado"
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Falhou ao criar servidor web."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Servidor web iniciado na porta: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "Diretório WWW: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr ""
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor é uma aplicação GTK+ para monitorar sensores de hardware"
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Copyright(c) 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Sobre o Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Celio Alves https://launchpad.net/~celio.alves\n"
+"  Daniel Serafim https://launchpad.net/~daniel-serafim\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  MestreLion https://launchpad.net/~mestrelion\n"
+"  Rafael Neri https://launchpad.net/~rafepel"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Site do Psensor"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Falha ao carregar o ícone do Psensor."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Preferências"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Selecionar cor do primeiro plano"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Falhou ao criar servidor web."
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "falha em gettimeofday."
@@ -444,159 +837,9 @@ msgstr "Alerta de temperatura"
 msgid "Fan speed alert"
 msgstr "Alenta do ventilador"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Desconhecido"
 
-#~ msgid "About"
-#~ msgstr "Sobre"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Preferências de sensores"
-
-#~ msgid "Quit"
-#~ msgstr "Sair"
-
-#~ msgid "Show"
-#~ msgstr "Mostrar"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Monitor de temperatura"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "Ajuda"
-
-#~ msgid "Sensor"
-#~ msgstr "Sensor"
-
-#~ msgid "Value"
-#~ msgstr "Valor"
-
-#~ msgid "Min"
-#~ msgstr "Min"
-
-#~ msgid "Max"
-#~ msgstr "Max"
-
-#~ msgid "Color"
-#~ msgstr "Cor"
-
-#~ msgid "Graph"
-#~ msgstr "Grafo"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Editar Preferências"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Ocultar decoração da janela"
-
-#~ msgid "Keep window below"
-#~ msgstr "Manter janela abaixo"
-
-#~ msgid "Enable menu"
-#~ msgstr "Habilitar menu"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Unidade de temperatura:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Posição da tabela de sensores:"
-
-#~ msgid "Interface"
-#~ msgstr "Interface"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Ocultar janela na inicialização"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Restaurar posição e tamanho da janela"
-
-#~ msgid "Foreground:"
-#~ msgstr "Primeiro plano:"
-
-#~ msgid "Background:"
-#~ msgstr "Plano de fundo:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Opacidade do plano de fundo:"
-
-#~ msgid "Colors"
-#~ msgstr "Cores"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Duração do monitoramento:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Intervalo de atualização:"
-
-#~ msgid "Measures"
-#~ msgstr "Medidas"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Max</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "segundo(s)"
-
-#~ msgid "minute(s)"
-#~ msgstr "minuto(s)"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Intervalo de atualização das medições:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Habilitar registro (log) de sensores"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Intervalo de registro dos sensores:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "segundo(s)"
-
-#~ msgid "Sensors"
-#~ msgstr "Sensores"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Editar preferências do sensor"
-
-#~ msgid "Name"
-#~ msgstr "Nome"
-
-#~ msgid "Type:"
-#~ msgstr "Tipo:"
-
-#~ msgid "Chip:"
-#~ msgstr "Chip:"
-
-#~ msgid "Name:"
-#~ msgstr "Nome:"
-
-#~ msgid "Id:"
-#~ msgstr "ID:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Desenhar curva do sensor"
-
-#~ msgid "Color:"
-#~ msgstr "Cor:"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Ativar notificações de desktop"
-
-#~ msgid "High threshold:"
-#~ msgstr "Limite superior:"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Limite inferior:"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarme"
-
 #~ msgid "Sensor Information"
 #~ msgstr "Informações do sensor"
index b86f053..6f9228f 100644 (file)
Binary files a/po/ru.gmo and b/po/ru.gmo differ
index 045dffc..0d06e12 100644 (file)
--- a/po/ru.po
+++ b/po/ru.po
 # Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
 # Translators:
 # Dmitry Serov, 2014
+# Grigorii Chirkov <ridgentsailor TYPE_AT_HERE gmail AND_DOT_HERE com>, 2016.
 msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
-"PO-Revision-Date: 2014-09-11 21:23+0000\n"
-"Last-Translator: Jean-Philippe Orsini <Unknown>\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
+"PO-Revision-Date: 2016-02-07 23:08+0300\n"
+"Last-Translator: Grigorii Chirkov <ridgentsailor TYPE_AT_HERE gmail "
+"AND_DOT_HERE com>\n"
 "Language-Team: Russian\n"
 "Language: ru\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
-"X-Generator: Launchpad (build 17196)\n"
+"X-Generator: Poedit 1.8.4\n"
 
-#: src/cfg.c:510
-#, fuzzy, c-format
+#: src/cfg.c:501
+#, c-format
 msgid "Failed to create the directory %s: %s"
-msgstr "Ð\9dе Ñ\83далоÑ\81Ñ\8c Ñ\81оздаÑ\82Ñ\8c Ð²ÐµÐ±-Ñ\81еÑ\80веÑ\80."
+msgstr "Ð\9dе Ñ\83далоÑ\81Ñ\8c Ñ\81оздаÑ\82Ñ\8c ÐºÐ°Ñ\82алог %s: %s"
 
-#: src/cfg.c:557
-#, fuzzy, c-format
+#: src/cfg.c:548
+#, c-format
 msgid "Failed to load configuration file %s: %s"
-msgstr "Ð\9dе Ñ\83далоÑ\81Ñ\8c Ð²ÐºÐ»Ñ\8eÑ\87иÑ\82Ñ\8c Ð¶Ñ\83Ñ\80налиÑ\80ование Ð´Ð°Ñ\82Ñ\87иков."
+msgstr "Ð\9dе Ñ\83далоÑ\81Ñ\8c Ð·Ð°Ð³Ñ\80Ñ\83зиÑ\82Ñ\8c Ñ\84айл ÐºÐ¾Ð½Ñ\84игÑ\83Ñ\80аÑ\86ии %s: %s"
 
-#: src/cfg.c:580
-#, fuzzy, c-format
+#: src/cfg.c:573
+#, c-format
 msgid "Failed to save configuration file %s."
-msgstr "Не удалось включить журналирование датчиков."
+msgstr "Не удалось сохранить файл конфигурации %s."
+
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "О программе"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Параметры"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Выход"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Параметры датчиков"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - монитор температуры"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Справка"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Датчик"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Значение"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Мин."
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Макс."
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Цвет"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Диаграмма"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Показать"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Справа"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Слева"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Сверху"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Снизу"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Изменить параметры"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Скрывать рамку окна"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Удерживать окно под другими"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Включить меню"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Включить счетчик в панели запуска Unity"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor не был собран с поддержкой удалённых датчиков."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Цельсия"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Фаренгейта"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Единицы измерения температуры:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Положение таблицы датчиков:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Внешний вид"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Запускать автоматически при старте сессии"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Скрывать окно при запуске"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Восстанавливать положение и размер окна"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Автозапуск"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Передний план:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Фон:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Непрозрачность фона:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Цвета"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Время мониторинга:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Интервал обновления:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Замеры"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Мин.</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Макс.</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "сек."
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "мин."
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr "Сглаживать графики"
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr "Графики"
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Интервал обновления замеров:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Вести журнал событий датчиков"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Интервал ведения журнала событий датчиков:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Скрипт, выполняемый при выдаче уведомления:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Датчики"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr "Включить поддержку lm-sensors"
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr "Включить поддержку NVCtrl (NVidia)"
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor не был собран с поддержкой удалённых датчиков."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr "Включить поддержку ATI ADL"
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor не был собран с поддержкой удалённых датчиков."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr "Включить поддержку gtop2"
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor не был собран с поддержкой удалённых датчиков."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr "Включить поддержку демона hddtemp"
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr "Включить поддержку libatasmart"
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor не был собран с поддержкой удалённых датчиков."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr "Включить поддержку udisks2"
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor не был собран с поддержкой удалённых датчиков."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr "Изменения будут применены после перезапуска psensor."
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr "Жесткий диск"
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr "Использование ЦП и ОЗУ"
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr "ГП (проприетарный драйвер)"
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr "Материнская плата, ЦП и ГП"
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr "Поддержка"
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Изменить параметры датчика"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Название"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Тип:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "Н/Д"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Микросхема:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Название:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Идентификатор:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr "Подробности"
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Рисовать график датчика"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Цвет:"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr "Показать датчик в списке датчиков"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Включить уведомления"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Высший порог:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr "0"
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Низший порог:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Уведомление"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Показать датчик в индикаторе меню приложений"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor не был собран с поддержкой удалённых датчиков."
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr "Показать датчик в области уведомлений (экспериментально)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Индикатор приложения"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
 
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
@@ -53,21 +447,21 @@ msgstr "AMD: ошибка определения количества адапт
 #: src/lib/amd.c:253
 #, c-format
 msgid "Number of AMD/ATI adapters: %d"
-msgstr ""
+msgstr "Количество адаптеров AMD/ATI: %d"
 
 #: src/lib/amd.c:254
 #, c-format
 msgid "Number of active AMD/ATI adapters: %d"
-msgstr ""
+msgstr "Количество активных адаптеров AMD/ATI: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
-msgstr ""
+msgstr "Диск"
 
-#: src/lib/hdd_atasmart.c:141
-#, fuzzy, c-format
+#: src/lib/hdd_atasmart.c:153
+#, c-format
 msgid "%s: sk_disk_open() failure: %s."
-msgstr "atasmart: ошибка sk_disk_open(): %s."
+msgstr "%s: ошибка sk_disk_open(): %s."
 
 #: src/lib/hdd_hddtemp.c:62
 #, c-format
@@ -84,104 +478,100 @@ msgstr "%s: не удалось открыть соединение."
 msgid "%s: wrong string: %s."
 msgstr "%s: неправильная строка: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
-msgstr ""
+msgstr "%s: Не удалось получить значение подмодуля %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
-msgstr ""
+msgstr "%s: Неверный тип модуля."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
-msgstr ""
+msgstr "ЦП Intel"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
-msgstr ""
+msgstr "ЦП AMD"
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
-msgstr ""
+msgstr "ГП NVIDIA"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
-msgstr ""
+msgstr "ЦП VIA"
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
-msgstr ""
+msgstr "ACPI"
 
-#: src/lib/lmsensor.c:201
-#, fuzzy, c-format
+#: src/lib/lmsensor.c:245
+#, c-format
 msgid "%s: initialization failure: %s."
-msgstr "lmsensor: ошибка инициализации: %s."
+msgstr "%s: ошибка инициализации: %s."
 
 #: src/lib/pgtop2.c:42
 msgid "CPU usage"
-msgstr ""
+msgstr "Загрузка ЦП"
 
 #: src/lib/pgtop2.c:47
 msgid "CPU"
-msgstr ""
+msgstr "ЦП"
 
 #: src/lib/pgtop2.c:63
 msgid "free memory"
-msgstr ""
+msgstr "Использование ОЗУ"
 
 #: src/lib/pgtop2.c:64
 msgid "memory"
-msgstr ""
+msgstr "ОЗУ"
 
 #: src/lib/plog.c:43
 #, c-format
 msgid "Cannot open log file: %s"
 msgstr "Ошибка открытия файла журнала: %s"
 
-#: src/lib/nvidia.c:58
-#, fuzzy, c-format
+#: src/lib/nvidia.c:69
+#, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
-msgstr "Не удалось получить информацию NVIDIA."
+msgstr "%s: Неизвестное название продукта ГП NVIDIA %d"
 
-#: src/lib/nvidia.c:63
-#, fuzzy, c-format
+#: src/lib/nvidia.c:74
+#, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
-msgstr "Не удалось получить информацию NVIDIA."
+msgstr "%s: Не удалось получить информацию о названии продукта ГП NVIDIA %d"
 
-#: src/lib/nvidia.c:226
-#, fuzzy, c-format
+#: src/lib/nvidia.c:240
+#, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
-msgstr "Не удалось получить информацию NVIDIA."
+msgstr "%s: Не удалось получить информацию о типе %x ГП NVIDIA %d"
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Ошибка открытия соединения к серверу X11."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Не удалось получить информацию NVIDIA."
 
-#: src/lib/nvidia.c:370
-#, fuzzy, c-format
+#: src/lib/nvidia.c:394
+#, c-format
 msgid "%s: Failed to retrieve number of fans."
-msgstr "Не удалось получить информацию NVIDIA."
+msgstr "%s: Не удалось получить информацию о количестве вентиляторов."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "об/мин"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "Н/Д"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "Переменная HOME не установлена."
@@ -203,7 +593,7 @@ msgstr "Файл журнала датчика не открыт."
 msgid "Sensor log not open, cannot close."
 msgstr "Файл журнала датчика не открыт, не удалось закрыть."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -212,13 +602,20 @@ msgid ""
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
+"Copyright (C) %s jeanfi@gmail.com\n"
+"Лицензия GPLv2: GNU GPL версии 2 или выше <http://www.gnu.org/licenses/old-"
+"licenses/gpl-2.0.html>\n"
+"Это свободное программное обеспечение, вы можете модифицировать и "
+"распространять его.\n"
+"На него не предоставляется никаких гарантий в мере, предусмотренной "
+"законодательством.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Использование: %s [КЛЮЧ]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -226,11 +623,11 @@ msgstr ""
 "Psensor — это GTK+ приложение для мониторинга аппаратных датчиков, включая "
 "температуру и скорость вентилятора."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Опции:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -238,77 +635,68 @@ msgstr ""
 "  -h, --help          показать эту справку и выйти\n"
 "  -v, --version      показать версию и выйти"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
 msgstr ""
 "  -u, --url=URL       URL psensor-сервера, пример: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 "  -n, --new-instance  принудительно запускает новую копию программы Psensor"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr "  -d, --debug=УРОВЕНЬ   установить уровень отладки, целое между 0 и 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Сообщайте об ошибках на: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s домашняя страница: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor не был собран с поддержкой удалённых датчиков."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Включает режим отладки."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Попробуйте `%s --help' для дополнительной информации.↵\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Копия Psensor уже запущена."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Не удалось создать веб-сервер."
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Dmitry Serov https://launchpad.net/~dmitri-s93\n"
-"  Eugene Marshal https://launchpad.net/~lowrider\n"
-"  Ilya Volchanetskiy https://launchpad.net/~volchanetskiy\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi"
-
-#: src/rsensor.c:107
+#: src/rsensor.c:115
 #, c-format
-msgid "Fail to connect to: %s"
-msgstr "Ошибка подключения к: %s"
+msgid "%s: Fail to connect to: %s"
+msgstr "%s: Ошибка подключения к: %s"
 
-#: src/rsensor.c:144
+#: src/rsensor.c:152
 #, c-format
-msgid "Invalid content: %s"
-msgstr "Неправильное содержимое: %s"
+msgid "%s: Invalid content: %s"
+msgstr "%s: Неправильное содержимое: %s"
 
-#: src/rsensor.c:184
+#: src/rsensor.c:192
 #, c-format
-msgid "Invalid JSON: %s"
-msgstr "Неправильный JSON: %s"
+msgid "%s: Invalid JSON: %s"
+msgstr "%s: Неправильный JSON: %s"
 
 #: src/server/server.c:58
 msgid "<html><body><p>Server stop requested</p></body></html>"
@@ -362,80 +750,100 @@ msgstr ""
 "  --sensor-log-interval=ПЕРИОД установить ПЕРИОД журналирования датчиков (в "
 "секундах)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Ошибка открытия файла журнала: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP запрос: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Включает режим отладки: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Датчики не обнаружены."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Не удалось создать веб-сервер."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Веб-сервер запущен на порту: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW-каталог: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Не удалось включить журналирование датчиков."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
-msgstr "Psensor — это  GTK+ приложения для мониторинга аппаратных сенсоров"
+msgstr "Psensor — это приложение GTK+ для мониторинга аппаратных сенсоров"
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "О Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Contributions:\n"
+"  Dmitry Serov https://launchpad.net/~dmitri-s93\n"
+"  Eugene Marshal https://launchpad.net/~lowrider\n"
+"  Ilya Volchanetskiy https://launchpad.net/~volchanetskiy\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Grigorii Chirkov"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Домашняя страница Psensor"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Не удалось загрузить значок Psensor."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
-msgstr ""
-
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Параметры"
+msgstr "Скрыть"
 
-#: src/ui_sensorlist.c:296
-#, fuzzy
+#: src/ui_sensorlist.c:303
 msgid "Select sensor color"
-msgstr "Выберите цвет переднего плана"
+msgstr "Выбор цвета датчика"
+
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Не удалось включить журналирование датчиков."
 
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
@@ -446,173 +854,12 @@ msgid "Temperature alert"
 msgstr "Уведомление температуры"
 
 #: src/ui_notify.c:79
-#, fuzzy
 msgid "Fan speed alert"
 msgstr "Уведомление вентилятора"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
-msgstr ""
-
-#~ msgid "About"
-#~ msgstr "О программе"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Параметры датчиков"
-
-#~ msgid "Quit"
-#~ msgstr "Выход"
-
-#~ msgid "Show"
-#~ msgstr "Показать"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - монитор температуры"
-
-#~ msgid "_Help"
-#~ msgstr "_Справка"
-
-#~ msgid "Sensor"
-#~ msgstr "Датчик"
-
-#~ msgid "Value"
-#~ msgstr "Значение"
-
-#~ msgid "Min"
-#~ msgstr "Мин."
-
-#~ msgid "Max"
-#~ msgstr "Макс."
-
-#~ msgid "Color"
-#~ msgstr "Цвет"
-
-#~ msgid "Graph"
-#~ msgstr "Диаграмма"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Изменить параметры"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Спрятать рамку окна"
-
-#~ msgid "Keep window below"
-#~ msgstr "Держать окно позади"
-
-#~ msgid "Enable menu"
-#~ msgstr "Включить меню"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Включить счётчик в панеле запуска Unity"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Единица измерения температуры:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Положение таблицы датчиков:"
-
-#~ msgid "Interface"
-#~ msgstr "Внешний вид"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Скрыть окно при запуске"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Восстанавливать положение и размер окна"
-
-#~ msgid "Foreground:"
-#~ msgstr "Передний план:"
-
-#~ msgid "Background:"
-#~ msgstr "Фон:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Непрозрачность фона:"
-
-#~ msgid "Colors"
-#~ msgstr "Цвета"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Время мониторинга:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Интервал обновления:"
-
-#~ msgid "Measures"
-#~ msgstr "Замеры"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Мин.</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Макс.</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "сек."
-
-#~ msgid "minute(s)"
-#~ msgstr "мин."
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Интервал обновления замеров:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Вести журнал событий датчиков"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Интервал ведения журнала событий датчиков:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "секунд(с)"
-
-#~ msgid "Sensors"
-#~ msgstr "Датчики"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Изменить параметры датчика"
-
-#~ msgid "Name"
-#~ msgstr "Название"
-
-#~ msgid "Type:"
-#~ msgstr "Тип:"
-
-#~ msgid "Chip:"
-#~ msgstr "Микросхема:"
-
-#~ msgid "Name:"
-#~ msgstr "Название:"
-
-#~ msgid "Id:"
-#~ msgstr "Идентификатор:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Рисовать график датчика"
-
-#~ msgid "Color:"
-#~ msgstr "Цвет:"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Показать датчик в индикаторе меню приложений"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Включить уведомления"
-
-#~ msgid "High threshold:"
-#~ msgstr "Высший порог:"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Нижний порог:"
-
-#~ msgid "Alarm"
-#~ msgstr "Уведомление"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Показать датчик в индикаторе меню приложений"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Индикатор приложения"
+msgstr "Неизвестно"
 
 #~ msgid "Sensor Information"
 #~ msgstr "Информация датчика"
index 3c9daee..b1886df 100644 (file)
Binary files a/po/sl.gmo and b/po/sl.gmo differ
index a89974c..bd3188f 100644 (file)
--- a/po/sl.po
+++ b/po/sl.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-11 21:22+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Slovenian <sl@li.org>\n"
@@ -18,21 +18,406 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr ""
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr ""
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr ""
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr ""
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr ""
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr ""
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr ""
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr ""
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr ""
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr ""
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr ""
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr ""
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr ""
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr ""
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:190
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+msgid "Psensor has not been build with NVCtrl support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+msgid "Psensor has not been build with ATI ADL support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+msgid "Psensor has not been build with gtop2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+msgid "Psensor has not been build with libatasmart support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+msgid "Psensor has not been build with udisks2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr ""
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr ""
@@ -59,11 +444,11 @@ msgstr ""
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr ""
@@ -83,37 +468,37 @@ msgstr ""
 msgid "%s: wrong string: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr ""
@@ -139,48 +524,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr ""
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr ""
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr ""
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr ""
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr ""
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr ""
@@ -202,7 +583,7 @@ msgstr ""
 msgid "Sensor log not open, cannot close."
 msgstr ""
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -212,92 +593,85 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr ""
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
 msgstr ""
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr ""
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
 msgstr ""
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
 msgstr ""
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr ""
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr ""
 
-#: src/main.c:631
+#: src/main.c:527
 msgid "Failed to create thread for monitoring sensors"
 msgstr ""
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Sasa Batistic https://launchpad.net/~sasa-batistic"
-
-#: src/rsensor.c:107
+#: src/rsensor.c:115
 #, c-format
-msgid "Fail to connect to: %s"
+msgid "%s: Fail to connect to: %s"
 msgstr ""
 
-#: src/rsensor.c:144
+#: src/rsensor.c:152
 #, c-format
-msgid "Invalid content: %s"
+msgid "%s: Invalid content: %s"
 msgstr ""
 
-#: src/rsensor.c:184
+#: src/rsensor.c:192
 #, c-format
-msgid "Invalid JSON: %s"
+msgid "%s: Invalid JSON: %s"
 msgstr ""
 
 #: src/server/server.c:58
@@ -342,78 +716,96 @@ msgstr ""
 msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, c-format
+msgid "Cannot get real path of %s"
+msgstr ""
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr ""
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr ""
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr ""
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr ""
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr ""
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr ""
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr ""
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr ""
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr ""
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr ""
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Sasa Batistic https://launchpad.net/~sasa-batistic"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr ""
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr ""
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
+#: src/ui_sensorlist.c:303
+msgid "Select sensor color"
 msgstr ""
 
-#: src/ui_sensorlist.c:296
-msgid "Select sensor color"
+#: src/ui_appindicator.c:148
+#, c-format
+msgid "Failed to load glade file %s: %s"
 msgstr ""
 
 #: src/ui_notify.c:48
@@ -428,6 +820,6 @@ msgstr ""
 msgid "Fan speed alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr ""
index 2ba6b94..901cfa9 100644 (file)
Binary files a/po/sr.gmo and b/po/sr.gmo differ
index f461392..c665c4c 100644 (file)
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-11 21:25+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Serbian <sr@li.org>\n"
@@ -18,21 +18,406 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr ""
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr ""
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr ""
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "О програму"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Поставке"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Изађи"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr ""
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr ""
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr ""
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Сензор"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr ""
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Најмање"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Највише"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "У боји"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr ""
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Укључено"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:190
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "У боји"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Сензор"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+msgid "Psensor has not been build with NVCtrl support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+msgid "Psensor has not been build with ATI ADL support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+msgid "Psensor has not been build with gtop2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+msgid "Psensor has not been build with libatasmart support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+msgid "Psensor has not been build with udisks2 support"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "Недоступно"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+msgid "Psensor has not been build with AppIndicator support"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr ""
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr ""
@@ -59,11 +444,11 @@ msgstr ""
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr ""
@@ -83,37 +468,37 @@ msgstr ""
 msgid "%s: wrong string: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr ""
@@ -139,48 +524,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr ""
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr ""
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr ""
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr ""
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr ""
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "Недоступно"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr ""
@@ -202,7 +583,7 @@ msgstr ""
 msgid "Sensor log not open, cannot close."
 msgstr ""
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -212,92 +593,85 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Употреба: %s [ОПЦИЈА]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
 msgstr ""
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Опције:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
 msgstr ""
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
 msgstr ""
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Пријавите грешку на: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s матична страна: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Покушајте„%s --help“ за више информација.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr ""
 
-#: src/main.c:631
+#: src/main.c:527
 msgid "Failed to create thread for monitoring sensors"
 msgstr ""
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Мирослав Николић https://launchpad.net/~lipek"
-
-#: src/rsensor.c:107
+#: src/rsensor.c:115
 #, c-format
-msgid "Fail to connect to: %s"
+msgid "%s: Fail to connect to: %s"
 msgstr ""
 
-#: src/rsensor.c:144
+#: src/rsensor.c:152
 #, c-format
-msgid "Invalid content: %s"
+msgid "%s: Invalid content: %s"
 msgstr ""
 
-#: src/rsensor.c:184
+#: src/rsensor.c:192
 #, c-format
-msgid "Invalid JSON: %s"
+msgid "%s: Invalid JSON: %s"
 msgstr ""
 
 #: src/server/server.c:58
@@ -342,81 +716,99 @@ msgstr ""
 msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, c-format
+msgid "Cannot get real path of %s"
+msgstr ""
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr ""
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr ""
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr ""
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr ""
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr ""
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr ""
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr ""
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr ""
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr ""
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "О Псензору"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Мирослав Николић https://launchpad.net/~lipek"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Матична страница Псензора"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr ""
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Поставке"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Одаберите боју текста"
 
+#: src/ui_appindicator.c:148
+#, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr ""
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr ""
@@ -429,37 +821,10 @@ msgstr ""
 msgid "Fan speed alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr ""
 
-#~ msgid "About"
-#~ msgstr "О програму"
-
-#~ msgid "Quit"
-#~ msgstr "Изађи"
-
-#~ msgid "Sensor"
-#~ msgstr "Сензор"
-
-#~ msgid "Min"
-#~ msgstr "Најмање"
-
-#~ msgid "Max"
-#~ msgstr "Највише"
-
-#~ msgid "Color"
-#~ msgstr "У боји"
-
-#~ msgid "Enable menu"
-#~ msgstr "Укључено"
-
-#~ msgid "Colors"
-#~ msgstr "У боји"
-
-#~ msgid "Sensors"
-#~ msgstr "Сензор"
-
 #~ msgid "_Preferences"
 #~ msgstr "_Поставке"
 
index 813faf7..e39bc2e 100644 (file)
Binary files a/po/sv.gmo and b/po/sv.gmo differ
index 2b393ad..0f39603 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 1.0.0.0\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-20 11:26+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Swedish\n"
@@ -21,21 +21,414 @@ msgstr ""
 "X-Generator: Launchpad (build 17196)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Misslyckades med att skapa katalogen %s: %s"
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Misslyckades med att tolka konfigurationsfilen: %s"
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Misslyckades med att spara konfigurationsfilen %s."
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Om"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Inställningar"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Avsluta"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Sensorinställningar"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Temperaturövervakare"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Hjälp"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Sensor"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Värde"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Min"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Max"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Färg"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Graf"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Visa"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Höger"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Vänster"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Toppen"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Botten"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Redigera inställningar"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Göm fönsterdekoration"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Håll fönster under"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Aktivera meny"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Aktivera räknare för Unity-programstartare"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Celsius"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Fahrenheit"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Temperaturenhet:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Sensortabellens position:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Gränssnitt"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Starta vid sessionsuppstart"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Göm fönster vid uppstart"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Återställ fönsterposition och storlek"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Uppstart"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Förgrund:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Bakgrund:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Bakgrundsgenomskinlighet:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Färger"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Övervakningstid:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Uppdateringsintervall:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Mätningar"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Min</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Max</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "sekund(er)"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "minut(er)"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Uppdateringsintervall för mätning:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Aktivera sensorlogging"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Loggintervall för sensor:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Skript att köra vid alarm:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Sensorer"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Redigera sensorinställningar"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Namn"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Typ:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "Ej tillgänglig"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Chip:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Namn:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Id:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Rita sensorkurva"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Färg:"
+
+#: src/glade/sensor-edit.glade:448
+#, fuzzy
+msgid "Display sensor in the list of sensors"
+msgstr "Visa sensor i meny"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Aktivera skrivbordsnotifiering"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Högt tröskelvärde:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Lågt tröskelvärde:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarm"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Visa sensor i meny"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr "Visa sensor i etiketten (experimentell)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Programindikator"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: kan inte hitta ADL-bibliotek."
@@ -62,11 +455,11 @@ msgstr "Antal AMD/ATI-adaptrar: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Antal aktiva AMD/ATI-adaptrar: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr "Disk"
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: sk_disk_open()-fel: %s."
@@ -86,37 +479,37 @@ msgstr "%s: misslyckades med att öppna anslutning."
 msgid "%s: wrong string: %s."
 msgstr "%s: fel sträng: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: kan inte hämta värdet för underegenskap %s: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: fel egenskapstyp."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr "Intel CPU"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr "AMD CPU"
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr "NVIDIA GPU"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr "VIA CPU"
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: initialiseringsfel: %s."
@@ -142,48 +535,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Kan inte öppna loggfil: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Misslyckades med att hämta NVIDIA-information."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Misslyckades med att hämta NVIDIA-information."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Misslyckades med att hämta NVIDIA-information."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Kan inte öppna anslutning till X11-server."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Misslyckades med att hämta NVIDIA-information."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Misslyckades med att hämta NVIDIA-information."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "Ej tillgänglig"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "HOME-variabel inte inställd."
@@ -205,7 +594,7 @@ msgstr "Sensorloggfil ej öppen."
 msgid "Sensor log not open, cannot close."
 msgstr "Sensorloggfil ej öppen, kan inte stänga."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -220,12 +609,12 @@ msgstr ""
 "Det här är fri programvara: Du kan fritt modifiera den och distribuera den\n"
 "Det finns INGEN GARANTI i den omfattning som medges av gällande lag.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Användning: %s [FLAGGA]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -233,11 +622,11 @@ msgstr ""
 "Psensor är ett GTK+-program för att övervaka hårdvarusensorer, inklusive "
 "temperaturer och fläkthastigheter."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Alternativ:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -245,7 +634,7 @@ msgstr ""
 "  -h, --help          visa denna hjälp och avsluta\n"
 "  -v, --version      visa versionsinformation och avsluta"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -253,67 +642,60 @@ msgstr ""
 "  -u, --url=URL       URL för psensor-server,\n"
 "                      exempelvis: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr "  -n, --new-instance  tvinga fram att skapa ett nytt Psensor-program"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=LEVEL   ställ in felsökningsnivå, heltal mellan nivå 0 och 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Rapportera fel till: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s webbplats <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Aktivera felsökningsläge."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Prova`%s --help' för mer information.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Det finns redan en Psensor-instans."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Misslyckades med att skapa katalogen %s: %s"
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Josef Andersson https://launchpad.net/~northar"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Misslyckades med att ansluta till: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Ogiltigt innehåll: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "Ogiltig JSON: %s"
 
 #: src/server/server.c:58
@@ -366,84 +748,102 @@ msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 "  --sensor-log-interval=S ställ in loggintervall för sensor till S (sekunder)"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Kan inte öppna loggfil: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP-begäran: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Aktiverar felsökningsläge: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Inga sensorer hittades."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Misslyckades med att skapa webbserver."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Webbserver startade på port: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW-katalog: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Misslyckades med att aktivera sensorloggning."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor är ett GTK+-program för att övervaka hårdvarusensorer"
 
-#: src/ui.c:90
+#: src/ui.c:216
 #, fuzzy
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 "Copyright(c) 2010-2014\n"
 "jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Om Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Josef Andersson https://launchpad.net/~northar"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Psensor-webbplats"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Misslyckades med att läsa in Psensor-ikon."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Inställningar"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Välj förgrundsfärg"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Misslyckades med att tolka konfigurationsfilen: %s"
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "gettimeofday misslyckades."
@@ -457,207 +857,10 @@ msgstr "Temperaturlarm"
 msgid "Fan speed alert"
 msgstr "Fläktlarm"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Okänd"
 
-#~ msgid "About"
-#~ msgstr "Om"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Sensorinställningar"
-
-#~ msgid "Quit"
-#~ msgstr "Avsluta"
-
-#~ msgid "Show"
-#~ msgstr "Visa"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Temperaturövervakare"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Hjälp"
-
-#~ msgid "Sensor"
-#~ msgstr "Sensor"
-
-#~ msgid "Value"
-#~ msgstr "Värde"
-
-#~ msgid "Min"
-#~ msgstr "Min"
-
-#~ msgid "Max"
-#~ msgstr "Max"
-
-#~ msgid "Color"
-#~ msgstr "Färg"
-
-#~ msgid "Graph"
-#~ msgstr "Graf"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Höger"
-
-#~ msgid "Left"
-#~ msgstr "Vänster"
-
-#~ msgid "Top"
-#~ msgstr "Toppen"
-
-#~ msgid "Bottom"
-#~ msgstr "Botten"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Redigera inställningar"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Göm fönsterdekoration"
-
-#~ msgid "Keep window below"
-#~ msgstr "Håll fönster under"
-
-#~ msgid "Enable menu"
-#~ msgstr "Aktivera meny"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Aktivera räknare för Unity-programstartare"
-
-#~ msgid "Celsius"
-#~ msgstr "Celsius"
-
-#~ msgid "Fahrenheit"
-#~ msgstr "Fahrenheit"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Temperaturenhet:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Sensortabellens position:"
-
-#~ msgid "Interface"
-#~ msgstr "Gränssnitt"
-
-#~ msgid "Launch on session startup"
-#~ msgstr "Starta vid sessionsuppstart"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Göm fönster vid uppstart"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Återställ fönsterposition och storlek"
-
-#~ msgid "Startup"
-#~ msgstr "Uppstart"
-
-#~ msgid "Foreground:"
-#~ msgstr "Förgrund:"
-
-#~ msgid "Background:"
-#~ msgstr "Bakgrund:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Bakgrundsgenomskinlighet:"
-
-#~ msgid "Colors"
-#~ msgstr "Färger"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Övervakningstid:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Uppdateringsintervall:"
-
-#~ msgid "Measures"
-#~ msgstr "Mätningar"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Min</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Max</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "sekund(er)"
-
-#~ msgid "minute(s)"
-#~ msgstr "minut(er)"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Uppdateringsintervall för mätning:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Aktivera sensorlogging"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Loggintervall för sensor:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "sekund(er)"
-
-#~ msgid "Script executed when an alarm is raised:"
-#~ msgstr "Skript att köra vid alarm:"
-
-#~ msgid "Sensors"
-#~ msgstr "Sensorer"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Redigera sensorinställningar"
-
-#~ msgid "Name"
-#~ msgstr "Namn"
-
-#~ msgid "Type:"
-#~ msgstr "Typ:"
-
-#~ msgid "Chip:"
-#~ msgstr "Chip:"
-
-#~ msgid "Name:"
-#~ msgstr "Namn:"
-
-#~ msgid "Id:"
-#~ msgstr "Id:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Rita sensorkurva"
-
-#~ msgid "Color:"
-#~ msgstr "Färg:"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Visa sensor i meny"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Aktivera skrivbordsnotifiering"
-
-#~ msgid "High threshold:"
-#~ msgstr "Högt tröskelvärde:"
-
-#~ msgid "-1"
-#~ msgstr "-1"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Lågt tröskelvärde:"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarm"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Visa sensor i meny"
-
-#~ msgid "Display sensor in the label (experimental)"
-#~ msgstr "Visa sensor i etiketten (experimentell)"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Programindikator"
-
 #~ msgid ""
 #~ "NVIDIA proprietary driver not used or cannot retrieve NVIDIA GPU "
 #~ "temperature."
index f1f2b1f..fbe0ec8 100644 (file)
Binary files a/po/tr.gmo and b/po/tr.gmo differ
index 2f77e97..6782f0c 100644 (file)
--- a/po/tr.po
+++ b/po/tr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-20 11:27+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Turkish <tr@li.org>\n"
@@ -18,21 +18,415 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Web sunucusu oluşturulamadı."
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Algılayıcıların günlük kaydı etkinleştirilemedi."
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, fuzzy, c-format
 msgid "Failed to save configuration file %s."
 msgstr "Algılayıcıların günlük kaydı etkinleştirilemedi."
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Hakkında"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Tercihler"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Çıkış"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Algılayıcı Tercihleri"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - Sıcaklık Gözlemleyici"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr "_Psensor"
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Yardım"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Algılayıcı"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Değer"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Asgari"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Azami"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Renk"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Grafik"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Göster"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr "Sağ"
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "Sol"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "Üstte"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "Alt"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Tercihleri Düzenle"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Pencere çubuğunu gizle"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Pencereyi aşağıda tut"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Menüyü etkinleştir"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Unity Başlatıcı sayacını etkinleştir"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr "Celsius"
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr "Fahrenhayt"
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Sıcaklık birimi:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Gözlemleyici tablosunun konumu:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Arayüz"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr "Oturum başlangıcında başlat"
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Başlangıçta pencereyi gizle"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Pencere konumunu ve boyutunu yeniden yükle"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr "Başlangıç"
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Önplan:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Arkaplan:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Arkaplan saydamlığı:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Renk"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Gözlemleme süresi:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Güncelleme aralığı:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Ölçümler"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Asgari</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Azami</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "saniye"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "dakika"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Ölçüm güncelleştirme aralığı:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "Algılayıcı günlük kaydını etkinleştir"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr "Algılayıcı günlük kaydı aralığı:"
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr "Alarm çaldığında betik çalıştırılır:"
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Algılayıcılar"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Algılayıcı Tercihlerini Düzenle"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr "Ad"
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Tür:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "Bilinmeyen"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "Yonga:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "İsim:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Kimlik:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Algılayıcı eğrisini çiz"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Renk :"
+
+#: src/glade/sensor-edit.glade:448
+#, fuzzy
+msgid "Display sensor in the list of sensors"
+msgstr "Algılayıcıları menüde göster"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Masaüstü bildirimlerini etkinleştir"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Yüksek eşik:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr "-1"
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Düşük eşik:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Alarm"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "Algılayıcıları menüde göster"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
+
+#: src/glade/sensor-edit.glade:719
+#, fuzzy
+msgid "Display sensor in the label (experimental)"
+msgstr "Etikette algılayıcı göster (deneysel)"
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr "Uygulama Göstergesi"
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD:  ADL kütüphanesi bulunamadı."
@@ -59,11 +453,11 @@ msgstr "AMD/ATI bağdaştırıcı sayısı: %d"
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr "Etkin AMD/ATI bağdaştırıcı sayısı: %d"
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr "Disk"
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s: sk_disk_open() hatası: %s."
@@ -83,37 +477,37 @@ msgstr "%s: bağlantı açılamadı."
 msgid "%s: wrong string: %s."
 msgstr "%s: yanlış dizi: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s: %s alt özelliğinin değeri alınamıyor: %s."
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr "%s: yanlış özellik tipi."
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr "İntel işlemci"
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr "AMD işlemci"
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr "NVIDIA Ekran Kartı"
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr "VIA İşlemci"
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s: başlatma hatası: %s."
@@ -139,48 +533,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Günlükleme dosyası açılamadı: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "NVIDIA bilgisi alınamıyor."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "NVIDIA bilgisi alınamıyor."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "NVIDIA bilgisi alınamıyor."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: X11 sunucusu bağlantısı açılamıyor."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: NVIDIA bilgisi alınamıyor."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "NVIDIA bilgisi alınamıyor."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "Bilinmeyen"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "HOME değişkeni ayarlanmamış."
@@ -202,7 +592,7 @@ msgstr "Algılayıcı günlük kaydı dosyası açık değil."
 msgid "Sensor log not open, cannot close."
 msgstr "Algılayıcı günlük kaydı açık değil, kapatılamıyor."
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -217,12 +607,12 @@ msgstr ""
 "Bu bir özgür yazılımdır: değiştirmekte ve yeniden dağıtmakta özgürsünüz.\n"
 "Yasaların izin verdiği çerçevede hiçbir garantisi YOKTUR.\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Kullanım: %s [SEÇENEK]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
@@ -230,11 +620,11 @@ msgstr ""
 "Psensor, sıcaklık ve fan hızı da dahil olmak üzere donanım algılayıcılarını "
 "gözlemleyen bir GTK+ uygulamasıdır."
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Seçenekler:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -242,7 +632,7 @@ msgstr ""
 "  -h, --help          yardımı göster ve çık\n"
 "  -v, --version       sürüm bilgisini göster ve çık"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -250,69 +640,61 @@ msgstr ""
 "  -u, --url=URL       psensor sunucusunun bağlantısı,\n"
 "                      example: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr ""
 "  -n, --new-instance  yeni bir Psensor uygulaması oluşturulmasını zorla"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr ""
 "  -d, --debug=LEVEL   hata ayıklama seviyesin ayarla, 0 ve 3 arasında tamsayı"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Hataları rapor et:%s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s ana sayfa: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Hata ayıklama modunu etkinleştirir."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Daha fazla bilgi için `%s --help' yazın.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "Bir Psensor örneği zaten mevcut."
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Web sunucusu oluşturulamadı."
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  zeugma https://launchpad.net/~sunder67\n"
-"  İbrahim Çelik https://launchpad.net/~ibrahimcelik89"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Şuna bağlanamadı: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "Geçersiz içerik: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "Geçersiz JSON: %s"
 
 #: src/server/server.c:58
@@ -370,82 +752,102 @@ msgstr ""
 "  --sensor-log-interval=S algılayıcı günlük kaydı aralığını S (saniye) "
 "olarak ayarla"
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Günlükleme dosyası açılamadı: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP İsteği: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "Hata ayıklama modunu etkinleştirir: %d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Hiçbir algılayıcı bulunamadı."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Web sunucusu oluşturulamadı."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "Web sunucusu şu noktadan başlatıldı: %d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW dizini: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "Algılayıcıların günlük kaydı etkinleştirilemedi."
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr ""
 "Psensor, donanım algılayıcılarının gözlenmesi amaçlı bir GTK+ uygulamasıdır"
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+#, fuzzy
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr "Telif Hakkı(c) 2010-2014 jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Psensor Hakkında"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  zeugma https://launchpad.net/~sunder67\n"
+"  İbrahim Çelik https://launchpad.net/~ibrahimcelik89"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Psensor Anasayfası"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Psensor simgesi yüklenemedi."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Tercihler"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Önplan rengini seçin"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Algılayıcıların günlük kaydı etkinleştirilemedi."
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "gettimeofday başarısız."
@@ -459,208 +861,10 @@ msgstr "Sıcaklık uyarısı"
 msgid "Fan speed alert"
 msgstr "Fan uyarısı"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "Bilinmeyen"
 
-#~ msgid "About"
-#~ msgstr "Hakkında"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Algılayıcı Tercihleri"
-
-#~ msgid "Quit"
-#~ msgstr "Çıkış"
-
-#~ msgid "Show"
-#~ msgstr "Göster"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - Sıcaklık Gözlemleyici"
-
-#~ msgid "_Psensor"
-#~ msgstr "_Psensor"
-
-#~ msgid "_Help"
-#~ msgstr "_Yardım"
-
-#~ msgid "Sensor"
-#~ msgstr "Algılayıcı"
-
-#~ msgid "Value"
-#~ msgstr "Değer"
-
-#~ msgid "Min"
-#~ msgstr "Asgari"
-
-#~ msgid "Max"
-#~ msgstr "Azami"
-
-#~ msgid "Color"
-#~ msgstr "Renk"
-
-#~ msgid "Graph"
-#~ msgstr "Grafik"
-
-#~ msgctxt "psensor"
-#~ msgid "Right"
-#~ msgstr "Sağ"
-
-#~ msgid "Left"
-#~ msgstr "Sol"
-
-#~ msgid "Top"
-#~ msgstr "Üstte"
-
-#~ msgid "Bottom"
-#~ msgstr "Alt"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Tercihleri Düzenle"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Pencere çubuğunu gizle"
-
-#~ msgid "Keep window below"
-#~ msgstr "Pencereyi aşağıda tut"
-
-#~ msgid "Enable menu"
-#~ msgstr "Menüyü etkinleştir"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Unity Başlatıcı sayacını etkinleştir"
-
-#~ msgid "Celsius"
-#~ msgstr "Celsius"
-
-#~ msgid "Fahrenheit"
-#~ msgstr "Fahrenhayt"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Sıcaklık birimi:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Gözlemleyici tablosunun konumu:"
-
-#~ msgid "Interface"
-#~ msgstr "Arayüz"
-
-#~ msgid "Launch on session startup"
-#~ msgstr "Oturum başlangıcında başlat"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Başlangıçta pencereyi gizle"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Pencere konumunu ve boyutunu yeniden yükle"
-
-#~ msgid "Startup"
-#~ msgstr "Başlangıç"
-
-#~ msgid "Foreground:"
-#~ msgstr "Önplan:"
-
-#~ msgid "Background:"
-#~ msgstr "Arkaplan:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Arkaplan saydamlığı:"
-
-#~ msgid "Colors"
-#~ msgstr "Renk"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Gözlemleme süresi:"
-
-#~ msgid "Update interval:"
-#~ msgstr "Güncelleme aralığı:"
-
-#~ msgid "Measures"
-#~ msgstr "Ölçümler"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Asgari</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Azami</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "saniye"
-
-#~ msgid "minute(s)"
-#~ msgstr "dakika"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Ölçüm güncelleştirme aralığı:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "Algılayıcı günlük kaydını etkinleştir"
-
-#~ msgid "Sensors logging interval:"
-#~ msgstr "Algılayıcı günlük kaydı aralığı:"
-
-#~ msgid "seconds(s)"
-#~ msgstr "saniye"
-
-#~ msgid "Script executed when an alarm is raised:"
-#~ msgstr "Alarm çaldığında betik çalıştırılır:"
-
-#~ msgid "Sensors"
-#~ msgstr "Algılayıcılar"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Algılayıcı Tercihlerini Düzenle"
-
-#~ msgid "Name"
-#~ msgstr "Ad"
-
-#~ msgid "Type:"
-#~ msgstr "Tür:"
-
-#~ msgid "Chip:"
-#~ msgstr "Yonga:"
-
-#~ msgid "Name:"
-#~ msgstr "İsim:"
-
-#~ msgid "Id:"
-#~ msgstr "Kimlik:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Algılayıcı eğrisini çiz"
-
-#~ msgid "Color:"
-#~ msgstr "Renk :"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "Algılayıcıları menüde göster"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Masaüstü bildirimlerini etkinleştir"
-
-#~ msgid "High threshold:"
-#~ msgstr "Yüksek eşik:"
-
-#~ msgid "-1"
-#~ msgstr "-1"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Düşük eşik:"
-
-#~ msgid "Alarm"
-#~ msgstr "Alarm"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "Algılayıcıları menüde göster"
-
-#, fuzzy
-#~ msgid "Display sensor in the label (experimental)"
-#~ msgstr "Etikette algılayıcı göster (deneysel)"
-
-#~ msgid "Application Indicator"
-#~ msgstr "Uygulama Göstergesi"
-
 #~ msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
 #~ msgstr "lmsensor: lmsensor_psensor_create hatası: yanlış özellik tipi."
 
index da789a5..19ca854 100644 (file)
Binary files a/po/uk.gmo and b/po/uk.gmo differ
index 99e7cbb..442b4a8 100644 (file)
--- a/po/uk.po
+++ b/po/uk.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-11 21:23+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Ukrainian <uk@li.org>\n"
@@ -18,21 +18,413 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "Не вдалося створити веб-сервер."
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "Не вдалося створити веб-сервер."
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, c-format
 msgid "Failed to save configuration file %s."
 msgstr ""
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "Про програму"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "Налаштування"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "Вихід"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "Налаштування датчиків"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr ""
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr ""
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "_Довдіка"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "Датчик"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "Значення"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "Мін."
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "Макс."
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "Колір"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "Діаграма"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "Показати"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "Редагувати налаштування"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "Сховати каркас вікна"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "Тримати вікно позаду"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "Увімкнути меню"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "Увімкнути лічильник на панелі запуску Unity"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "Одиниця температури:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "Положення таблиці датчиків:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "Зовнішній вигляд"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "Сховати вікно після запуску"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "Відновляти позицію і розмір вікна"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "Передній план:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "Тло:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "Непрозорість тла:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "Кольори"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "Тривалість спостереження"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "Інтервал оновлення:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "Заміри"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>Мін.</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>Макс.</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "сек."
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "хв."
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "Інтервал оновлення замірів:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "Датчики"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "Редагувати налаштування датчика"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "Тип:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "Н/Д"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "Назва:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "Ідентифікатор:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "Малювати криву датчика"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "Колір:"
+
+#: src/glade/sensor-edit.glade:448
+msgid "Display sensor in the list of sensors"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "Увімкнути оповіщення"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "Вищий поріг:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "Нижчий поріг:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "Оповіщення"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr ""
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD: не вдалося знайти бібліотеку ADL."
@@ -59,11 +451,11 @@ msgstr ""
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, fuzzy, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "atasmart: помилка sk_disk_open(): %s."
@@ -83,37 +475,37 @@ msgstr "%s: не вдалося встановити з'єднання."
 msgid "%s: wrong string: %s."
 msgstr "%s: неправильний рядок: %s."
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr ""
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, fuzzy, c-format
 msgid "%s: initialization failure: %s."
 msgstr "lmsensor: помилка ініціалізації: %s."
@@ -139,48 +531,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "Не вдалося відкрити лог-файл: %s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "Не вдалося отримати інформацію NVIDIA."
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "Не вдалося отримати інформацію NVIDIA."
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "Не вдалося отримати інформацію NVIDIA."
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: Не вдалося встановити з'єднання до сервера X11."
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: Не вдалося отримати інформацію NVIDIA."
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "Не вдалося отримати інформацію NVIDIA."
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "об/хв"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "Н/Д"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "Змінна HOME не встановлена."
@@ -202,7 +590,7 @@ msgstr ""
 msgid "Sensor log not open, cannot close."
 msgstr ""
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -212,22 +600,22 @@ msgid ""
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "Використання: %s [КЛЮЧ]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
 msgstr ""
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "Опції:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -235,74 +623,66 @@ msgstr ""
 "  -h, --help          показати цю довідку і вийти\n"
 "  -v, --version       показати версію і вийти"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
 msgstr ""
 "  -u, --url=URL       URL psensor-сервера, наприклад: http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr "  -n, --new-instance  примусово створювати нову копію програми Psensor"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr "  -d, --debug=РІВЕНЬ   встановити рівень налагодження, ціле між 0 та 3"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "Звітуйте про помилки до: %s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s домашня сторінка: <%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "Включає режим налагодження."
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Спробуйте `%s --help' щоб отримати більше інформації.\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr ""
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "Не вдалося створити веб-сервер."
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Ilya Volchanetskiy https://launchpad.net/~volchanetskiy\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  VPIP https://launchpad.net/~tymbood"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "Не вдалося підключитися до: %s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
-msgstr ""
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
+msgstr "Неправильний JSON: %s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "Неправильний JSON: %s"
 
 #: src/server/server.c:58
@@ -355,81 +735,100 @@ msgstr ""
 msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "Не вдалося відкрити лог-файл: %s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP запит: %s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr ""
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "Датчики не знайдені."
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "Не вдалося створити веб-сервер."
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr ""
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW-директорія: %s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr ""
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr ""
 
-#: src/ui.c:90
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+#: src/ui.c:216
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "Про Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Ilya Volchanetskiy https://launchpad.net/~volchanetskiy\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  VPIP https://launchpad.net/~tymbood"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Домашня сторінка Psensor"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "Не вдалося завантажити іконку Psensor."
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "Налаштування"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "Оберіть колір переднього плану"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "Не вдалося створити веб-сервер."
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "помилка gettimeofday."
@@ -442,141 +841,9 @@ msgstr ""
 msgid "Fan speed alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr ""
 
-#~ msgid "About"
-#~ msgstr "Про програму"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "Налаштування датчиків"
-
-#~ msgid "Quit"
-#~ msgstr "Вихід"
-
-#~ msgid "Show"
-#~ msgstr "Показати"
-
-#~ msgid "_Help"
-#~ msgstr "_Довдіка"
-
-#~ msgid "Sensor"
-#~ msgstr "Датчик"
-
-#~ msgid "Value"
-#~ msgstr "Значення"
-
-#~ msgid "Min"
-#~ msgstr "Мін."
-
-#~ msgid "Max"
-#~ msgstr "Макс."
-
-#~ msgid "Color"
-#~ msgstr "Колір"
-
-#~ msgid "Graph"
-#~ msgstr "Діаграма"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "Редагувати налаштування"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "Сховати каркас вікна"
-
-#~ msgid "Keep window below"
-#~ msgstr "Тримати вікно позаду"
-
-#~ msgid "Enable menu"
-#~ msgstr "Увімкнути меню"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "Увімкнути лічильник на панелі запуску Unity"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "Одиниця температури:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "Положення таблиці датчиків:"
-
-#~ msgid "Interface"
-#~ msgstr "Зовнішній вигляд"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "Сховати вікно після запуску"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "Відновляти позицію і розмір вікна"
-
-#~ msgid "Foreground:"
-#~ msgstr "Передній план:"
-
-#~ msgid "Background:"
-#~ msgstr "Тло:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "Непрозорість тла:"
-
-#~ msgid "Colors"
-#~ msgstr "Кольори"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "Тривалість спостереження"
-
-#~ msgid "Update interval:"
-#~ msgstr "Інтервал оновлення:"
-
-#~ msgid "Measures"
-#~ msgstr "Заміри"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>Мін.</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>Макс.</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "сек."
-
-#~ msgid "minute(s)"
-#~ msgstr "хв."
-
-#~ msgid "Measure update interval:"
-#~ msgstr "Інтервал оновлення замірів:"
-
-#~ msgid "Sensors"
-#~ msgstr "Датчики"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "Редагувати налаштування датчика"
-
-#~ msgid "Type:"
-#~ msgstr "Тип:"
-
-#~ msgid "Name:"
-#~ msgstr "Назва:"
-
-#~ msgid "Id:"
-#~ msgstr "Ідентифікатор:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "Малювати криву датчика"
-
-#~ msgid "Color:"
-#~ msgstr "Колір:"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "Увімкнути оповіщення"
-
-#~ msgid "High threshold:"
-#~ msgstr "Вищий поріг:"
-
-#~ msgid "Low threshold:"
-#~ msgstr "Нижчий поріг:"
-
-#~ msgid "Alarm"
-#~ msgstr "Оповіщення"
-
 #~ msgid "Sensor Information"
 #~ msgstr "Інформація датчика"
index e91f534..795e1c0 100644 (file)
Binary files a/po/zh_CN.gmo and b/po/zh_CN.gmo differ
index 877d6e3..b4d9a3f 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2016-06-03 13:48+0200\n"
+"POT-Creation-Date: 2017-01-22 15:41+0100\n"
 "PO-Revision-Date: 2014-09-11 21:24+0000\n"
 "Last-Translator: Jean-Philippe Orsini <Unknown>\n"
 "Language-Team: Chinese (simplified)\n"
@@ -18,21 +18,414 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-09-21 08:56+0000\n"
 "X-Generator: Launchpad (build 17196)\n"
 
-#: src/cfg.c:510
+#: src/cfg.c:501
 #, fuzzy, c-format
 msgid "Failed to create the directory %s: %s"
 msgstr "无法创建网络服务器。"
 
-#: src/cfg.c:557
+#: src/cfg.c:548
 #, fuzzy, c-format
 msgid "Failed to load configuration file %s: %s"
 msgstr "无法激活监测器日志。"
 
-#: src/cfg.c:580
+#: src/cfg.c:573
 #, fuzzy, c-format
 msgid "Failed to save configuration file %s."
 msgstr "无法激活监测器日志。"
 
+#: src/glade/psensor.glade:6 src/glade/psensor-appindicator.glade:6
+msgid "About"
+msgstr "关于"
+
+#: src/glade/psensor.glade:10 src/glade/psensor-appindicator.glade:10
+#: src/glade/psensor-appindicator.glade:11
+#: src/glade/psensor-appindicator.glade:20 src/ui_sensorlist.c:269
+msgid "Preferences"
+msgstr "首选项"
+
+#: src/glade/psensor.glade:14 src/glade/psensor-appindicator.glade:24
+msgid "Quit"
+msgstr "退出"
+
+#: src/glade/psensor.glade:18 src/glade/psensor-appindicator.glade:15
+#: src/glade/psensor-appindicator.glade:16
+#: src/glade/psensor-appindicator.glade:28
+msgid "Sensor Preferences"
+msgstr "传感器首选项"
+
+#: src/glade/psensor.glade:99
+msgid "Psensor - Temperature Monitor"
+msgstr "Psensor - 温度监视器"
+
+#: src/glade/psensor.glade:114
+msgid "_Psensor"
+msgstr ""
+
+#: src/glade/psensor.glade:161
+msgid "_Help"
+msgstr "帮助(_H)"
+
+#: src/glade/psensor.glade:225
+msgid "Sensor"
+msgstr "监视设备"
+
+#: src/glade/psensor.glade:236
+msgid "Value"
+msgstr "值"
+
+#: src/glade/psensor.glade:247
+msgid "Min"
+msgstr "最小值"
+
+#: src/glade/psensor.glade:258
+msgid "Max"
+msgstr "最大值"
+
+#: src/glade/psensor.glade:269
+msgid "Color"
+msgstr "颜色"
+
+#: src/glade/psensor.glade:280 src/glade/psensor-pref.glade:753
+#: src/glade/sensor-edit.glade:480
+msgid "Graph"
+msgstr "图表"
+
+#: src/glade/psensor-appindicator.glade:84
+msgid "Show"
+msgstr "显示"
+
+#: src/glade/psensor-pref.glade:24
+msgctxt "psensor"
+msgid "Right"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:27
+msgid "Left"
+msgstr "左侧"
+
+#: src/glade/psensor-pref.glade:30
+msgid "Top"
+msgstr "顶部"
+
+#: src/glade/psensor-pref.glade:33
+msgid "Bottom"
+msgstr "底部"
+
+#: src/glade/psensor-pref.glade:60
+msgid "Edit Preferences"
+msgstr "编辑首选项"
+
+#: src/glade/psensor-pref.glade:126
+msgid "Hide window decoration"
+msgstr "隐藏窗口标题栏"
+
+#: src/glade/psensor-pref.glade:146
+msgid "Keep window below"
+msgstr "保持在最底层"
+
+#: src/glade/psensor-pref.glade:166
+msgid "Enable menu"
+msgstr "启用菜单"
+
+#: src/glade/psensor-pref.glade:186
+msgid "Enable Unity Launcher counter"
+msgstr "启用 Unity 启动器计数器"
+
+#: src/glade/psensor-pref.glade:190
+#, fuzzy
+msgid "Psensor has not been build with Unity Launcher support"
+msgstr "Psensor 不支持远程传感器。"
+
+#: src/glade/psensor-pref.glade:215
+msgid "Celsius"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:216
+msgid "Fahrenheit"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:258
+msgid "Temperature unit:"
+msgstr "温度单位:"
+
+#: src/glade/psensor-pref.glade:275
+msgid "Position of sensors table:"
+msgstr "监视设备列表位置:"
+
+#: src/glade/psensor-pref.glade:292
+msgid "Interface"
+msgstr "界面"
+
+#: src/glade/psensor-pref.glade:308
+msgid "Launch on session startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:327
+msgid "Hide window on startup"
+msgstr "启动时隐藏窗口"
+
+#: src/glade/psensor-pref.glade:345
+msgid "Restore window position and size"
+msgstr "恢复窗口位置和大小"
+
+#: src/glade/psensor-pref.glade:374
+msgid "Startup"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:416
+msgid "Foreground:"
+msgstr "前景:"
+
+#: src/glade/psensor-pref.glade:432
+msgid "Background:"
+msgstr "背景:"
+
+#: src/glade/psensor-pref.glade:464
+msgid "Background opacity:"
+msgstr "背景透明:"
+
+#: src/glade/psensor-pref.glade:480
+msgid "Colors"
+msgstr "颜色"
+
+#: src/glade/psensor-pref.glade:500
+msgid "Monitoring duration:"
+msgstr "监视持续时长:"
+
+#: src/glade/psensor-pref.glade:516
+msgid "Update interval:"
+msgstr "更新间隔:"
+
+#: src/glade/psensor-pref.glade:532
+msgid "Measures"
+msgstr "测量"
+
+#: src/glade/psensor-pref.glade:558
+msgid "<i>Min</i>"
+msgstr "<i>最小值</i>"
+
+#: src/glade/psensor-pref.glade:585
+msgid "<i>Max</i>"
+msgstr "<i>最大值</i>"
+
+#: src/glade/psensor-pref.glade:636 src/glade/psensor-pref.glade:813
+#: src/glade/psensor-pref.glade:881
+msgid "second(s)"
+msgstr "秒"
+
+#: src/glade/psensor-pref.glade:686
+msgid "minute(s)"
+msgstr "分钟"
+
+#: src/glade/psensor-pref.glade:702
+msgid "Smooth curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:728
+msgid "Curves"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:780
+msgid "Measure update interval:"
+msgstr "测量更新间隔:"
+
+#: src/glade/psensor-pref.glade:822
+msgid "Enable sensors logging"
+msgstr "启用监测器记录"
+
+#: src/glade/psensor-pref.glade:866
+msgid "Sensors logging interval:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:896
+msgid "Script executed when an alarm is raised:"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:934
+msgid "Sensors"
+msgstr "传感器"
+
+#: src/glade/psensor-pref.glade:952
+msgid "Enable support of lm-sensors"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:970
+msgid "Enable support of NVCtrl (NVidia)"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:974
+#, fuzzy
+msgid "Psensor has not been build with NVCtrl support"
+msgstr "Psensor 不支持远程传感器。"
+
+#: src/glade/psensor-pref.glade:989
+msgid "Enable support of ATI ADL"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:993
+#, fuzzy
+msgid "Psensor has not been build with ATI ADL support"
+msgstr "Psensor 不支持远程传感器。"
+
+#: src/glade/psensor-pref.glade:1008
+msgid "Enable support of gtop2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1012
+#, fuzzy
+msgid "Psensor has not been build with gtop2 support"
+msgstr "Psensor 不支持远程传感器。"
+
+#: src/glade/psensor-pref.glade:1027
+msgid "Enable support of hddtemp daemon"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1045
+msgid "Enable support of libatasmart"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1049
+#, fuzzy
+msgid "Psensor has not been build with libatasmart support"
+msgstr "Psensor 不支持远程传感器。"
+
+#: src/glade/psensor-pref.glade:1064
+msgid "Enable support of udisks2"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1068
+#, fuzzy
+msgid "Psensor has not been build with udisks2 support"
+msgstr "Psensor 不支持远程传感器。"
+
+#: src/glade/psensor-pref.glade:1090
+msgid "The changes are applied after the restart of psensor."
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1110
+msgid "Hard disk drive"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1131
+msgid "CPU and memory usage"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1152
+msgid "GPU with proprietary driver"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1173
+msgid "Motherboard, CPU and GPU"
+msgstr ""
+
+#: src/glade/psensor-pref.glade:1194
+msgid "Providers"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:29
+msgid "Edit Sensor Preferences"
+msgstr "编辑传感器首选项"
+
+#: src/glade/sensor-edit.glade:97
+msgid "Name"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:164
+msgid "Type:"
+msgstr "类型:"
+
+#: src/glade/sensor-edit.glade:183 src/glade/sensor-edit.glade:220
+#: src/glade/sensor-edit.glade:276 src/glade/sensor-edit.glade:575
+#: src/glade/sensor-edit.glade:630 src/lib/psensor.c:430 src/ui_notify.c:81
+msgid "N/A"
+msgstr "不可用"
+
+#: src/glade/sensor-edit.glade:202
+msgid "Chip:"
+msgstr "芯片:"
+
+#: src/glade/sensor-edit.glade:239
+msgid "Name:"
+msgstr "名称:"
+
+#: src/glade/sensor-edit.glade:258
+msgid "Id:"
+msgstr "标识:"
+
+#: src/glade/sensor-edit.glade:296
+msgid "Min:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:315
+msgid "Max:"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:333 src/glade/sensor-edit.glade:351
+msgid "label"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:370
+msgid "Details"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:388
+msgid "Draw sensor curve"
+msgstr "绘制监视曲线"
+
+#: src/glade/sensor-edit.glade:417
+msgid "Color:"
+msgstr "颜色:"
+
+#: src/glade/sensor-edit.glade:448
+#, fuzzy
+msgid "Display sensor in the list of sensors"
+msgstr "在应用指示器菜单中显示监视器"
+
+#: src/glade/sensor-edit.glade:499
+msgid "Activate desktop notifications"
+msgstr "激活桌面气泡提示"
+
+#: src/glade/sensor-edit.glade:528
+msgid "High threshold:"
+msgstr "高阈值:"
+
+#: src/glade/sensor-edit.glade:550
+msgid "0"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:604
+msgid "-1"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:656
+msgid "Low threshold:"
+msgstr "低阈值:"
+
+#: src/glade/sensor-edit.glade:678
+msgid "Alarm"
+msgstr "警告"
+
+#: src/glade/sensor-edit.glade:697
+msgid "Display sensor in the menu"
+msgstr "在应用指示器菜单中显示监视器"
+
+#: src/glade/sensor-edit.glade:701 src/glade/sensor-edit.glade:723
+#, fuzzy
+msgid "Psensor has not been build with AppIndicator support"
+msgstr "Psensor 不支持远程传感器。"
+
+#: src/glade/sensor-edit.glade:719
+msgid "Display sensor in the label (experimental)"
+msgstr ""
+
+#: src/glade/sensor-edit.glade:752
+msgid "Application Indicator"
+msgstr ""
+
+#: src/graph.c:460
+msgid "No graphs enabled"
+msgstr ""
+
 #: src/lib/amd.c:171
 msgid "AMD: cannot found ADL library."
 msgstr "AMD:未找到 ADL 库。"
@@ -59,11 +452,11 @@ msgstr ""
 msgid "Number of active AMD/ATI adapters: %d"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:59 src/lib/hdd_hddtemp.c:125
+#: src/lib/hdd_atasmart.c:70 src/lib/hdd_hddtemp.c:125
 msgid "Disk"
 msgstr ""
 
-#: src/lib/hdd_atasmart.c:141
+#: src/lib/hdd_atasmart.c:153
 #, c-format
 msgid "%s: sk_disk_open() failure: %s."
 msgstr "%s:sk_disk_open() 失败:%s。"
@@ -83,37 +476,37 @@ msgstr "硬盘温度:无法打开连接。"
 msgid "%s: wrong string: %s."
 msgstr "硬盘温度:错误字符:%s。"
 
-#: src/lib/lmsensor.c:44
+#: src/lib/lmsensor.c:73
 #, c-format
 msgid "%s: Cannot get value of subfeature %s: %s."
 msgstr "%s:无法获取子功能%s的值:%s。"
 
-#: src/lib/lmsensor.c:137
+#: src/lib/lmsensor.c:174
 #, c-format
 msgid "%s: Wrong feature type."
 msgstr ""
 
-#: src/lib/lmsensor.c:166
+#: src/lib/lmsensor.c:203
 msgid "Intel CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:170
+#: src/lib/lmsensor.c:207
 msgid "AMD CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:172
+#: src/lib/lmsensor.c:209
 msgid "NVIDIA GPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:174
+#: src/lib/lmsensor.c:211
 msgid "VIA CPU"
 msgstr ""
 
-#: src/lib/lmsensor.c:176
+#: src/lib/lmsensor.c:213
 msgid "ACPI"
 msgstr ""
 
-#: src/lib/lmsensor.c:201
+#: src/lib/lmsensor.c:245
 #, c-format
 msgid "%s: initialization failure: %s."
 msgstr "%s:初始化失败:%s。"
@@ -139,48 +532,44 @@ msgstr ""
 msgid "Cannot open log file: %s"
 msgstr "无法打开日志文件:%s"
 
-#: src/lib/nvidia.c:58
+#: src/lib/nvidia.c:69
 #, fuzzy, c-format
 msgid "%s: Unknown NVIDIA product name for GPU %d"
 msgstr "无法获取 NVIDIA 信息。"
 
-#: src/lib/nvidia.c:63
+#: src/lib/nvidia.c:74
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve NVIDIA product name for GPU %d"
 msgstr "无法获取 NVIDIA 信息。"
 
-#: src/lib/nvidia.c:226
+#: src/lib/nvidia.c:240
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve measure of type %x for NVIDIA GPU %d"
 msgstr "无法获取 NVIDIA 信息。"
 
-#: src/lib/nvidia.c:293
+#: src/lib/nvidia.c:317
 #, c-format
 msgid "%s: Cannot open connection to X11 server."
 msgstr "%s: 无法打开到 X11 服务器的连接。"
 
-#: src/lib/nvidia.c:301
+#: src/lib/nvidia.c:325
 #, c-format
 msgid "%s: Failed to retrieve NVIDIA information."
 msgstr "%s: 无法获取 NVIDIA 信息。"
 
-#: src/lib/nvidia.c:370
+#: src/lib/nvidia.c:394
 #, fuzzy, c-format
 msgid "%s: Failed to retrieve number of fans."
 msgstr "无法获取 NVIDIA 信息。"
 
-#: src/lib/psensor.c:453 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:426 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "转速"
 
-#: src/lib/psensor.c:455
+#: src/lib/psensor.c:428
 msgid "%"
 msgstr "%"
 
-#: src/lib/psensor.c:457 src/ui_notify.c:81
-msgid "N/A"
-msgstr "不可用"
-
 #: src/lib/slog.c:87
 msgid "HOME variable not set."
 msgstr "未设置 HOME 变量。"
@@ -202,7 +591,7 @@ msgstr "监测器日志文件未打开。"
 msgid "Sensor log not open, cannot close."
 msgstr "监测器日志未打开,故无法关闭。"
 
-#: src/main.c:80 src/server/server.c:88
+#: src/main.c:61 src/server/server.c:88
 #, c-format
 msgid ""
 "Copyright (C) %s jeanfi@gmail.com\n"
@@ -217,22 +606,22 @@ msgstr ""
 "本软件为自由软件:您可以自由修改并分发。\n"
 "There is NO WARRANTY, to the extent permitted by law。\n"
 
-#: src/main.c:91 src/server/server.c:98
+#: src/main.c:72 src/server/server.c:98
 #, c-format
 msgid "Usage: %s [OPTION]...\n"
 msgstr "用法:%s [选项]...\n"
 
-#: src/main.c:93
+#: src/main.c:74
 msgid ""
 "Psensor is a GTK+ application for monitoring hardware sensors, including "
 "temperatures and fan speeds."
 msgstr "Psensor 是一款 GTK+ 应用程序,可监测硬件传感器,包括温度与风扇转速。"
 
-#: src/main.c:97
+#: src/main.c:78
 msgid "Options:"
 msgstr "选项:"
 
-#: src/main.c:98
+#: src/main.c:79
 msgid ""
 "  -h, --help          display this help and exit\n"
 "  -v, --version       display version information and exit"
@@ -240,7 +629,7 @@ msgstr ""
 "  -h, --help 显示这个帮助并退出\n"
 "  -v, --version 显示版本信息并退出"
 
-#: src/main.c:104
+#: src/main.c:85
 msgid ""
 "  -u, --url=URL       the URL of the psensor-server,\n"
 "                      example: http://hostname:3131"
@@ -248,68 +637,59 @@ msgstr ""
 "  -u, --url=URL       psensor 服务器 URL\n"
 "                      例如:http://hostname:3131"
 
-#: src/main.c:107
+#: src/main.c:88
 msgid "  -n, --new-instance  force the creation of a new Psensor application"
 msgstr "  -n, --new-instance  强制创建一个新的 Psensor 例程"
 
-#: src/main.c:110
+#: src/main.c:91
 msgid "  -d, --debug=LEVEL   set the debug level, integer between 0 and 3"
 msgstr "  -d,--debug=LEVEL 设置调试等级,等级为 0 到 3 之间的整数"
 
-#: src/main.c:115 src/server/server.c:121
+#: src/main.c:96 src/server/server.c:121
 #, c-format
 msgid "Report bugs to: %s\n"
 msgstr "报告问题至:%s\n"
 
-#: src/main.c:117 src/server/server.c:123
+#: src/main.c:98 src/server/server.c:123
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s 主页:<%s>\n"
 
-#: src/main.c:473
+#: src/main.c:390
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor 不支持远程传感器。"
 
-#: src/main.c:551
+#: src/main.c:460
 msgid "Enables debug mode."
 msgstr "启用调试模式。"
 
-#: src/main.c:563 src/server/server.c:396
+#: src/main.c:472 src/server/server.c:422
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "试用‘%s --help’来获得更多信息。\n"
 
-#: src/main.c:576
+#: src/main.c:485
 msgid "A Psensor instance already exists."
 msgstr "已存在一个 Psensor 例程。"
 
-#: src/main.c:631
+#: src/main.c:527
 #, fuzzy
 msgid "Failed to create thread for monitoring sensors"
 msgstr "无法创建网络服务器。"
 
-#: src/main.c:654 src/ui.c:97
-msgid "translator-credits"
-msgstr ""
-"Launchpad Contributions:\n"
-"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
-"  Wang Dianjin https://launchpad.net/~tuhaihe\n"
-"  tmpplus https://launchpad.net/~tmpplus.7328-deactivatedaccount\n"
-"  大宝 https://launchpad.net/~linux-dabao"
-
-#: src/rsensor.c:107
-#, c-format
-msgid "Fail to connect to: %s"
+#: src/rsensor.c:115
+#, fuzzy, c-format
+msgid "%s: Fail to connect to: %s"
 msgstr "无法连接到:%s"
 
-#: src/rsensor.c:144
-#, c-format
-msgid "Invalid content: %s"
+#: src/rsensor.c:152
+#, fuzzy, c-format
+msgid "%s: Invalid content: %s"
 msgstr "无效内容:%s"
 
-#: src/rsensor.c:184
-#, c-format
-msgid "Invalid JSON: %s"
+#: src/rsensor.c:192
+#, fuzzy, c-format
+msgid "%s: Invalid JSON: %s"
 msgstr "无效 JSON:%s"
 
 #: src/server/server.c:58
@@ -358,84 +738,104 @@ msgstr "  --sensor-log-file=路径 设置监测器日志文件的路径"
 msgid "  --sensor-log-interval=S set the sensor log interval to S (seconds)"
 msgstr ""
 
-#: src/server/server.c:313
+#: src/server/server.c:262
+#, c-format
+msgid "Resource access refused %s real path is %s"
+msgstr ""
+
+#: src/server/server.c:269
+#, fuzzy, c-format
+msgid "Cannot get real path of %s"
+msgstr "无法打开日志文件:%s"
+
+#: src/server/server.c:339
 #, c-format
 msgid "HTTP Request: %s"
 msgstr "HTTP 请求:%s"
 
-#: src/server/server.c:376
+#: src/server/server.c:402
 #, c-format
 msgid "Enables debug mode: %d"
 msgstr "启用调试模式:%d"
 
-#: src/server/server.c:405
+#: src/server/server.c:431
 #, c-format
 msgid "Webserver directory does not exist.\n"
 msgstr ""
 
-#: src/server/server.c:426
+#: src/server/server.c:452
 msgid "No sensors detected."
 msgstr "未检测到传感器。"
 
-#: src/server/server.c:433
+#: src/server/server.c:459
 msgid "Failed to create Web server."
 msgstr "无法创建网络服务器。"
 
-#: src/server/server.c:437
+#: src/server/server.c:463
 #, c-format
 msgid "Web server started on port: %d"
 msgstr "网络服务器启动端口:%d"
 
-#: src/server/server.c:438
+#: src/server/server.c:464
 #, c-format
 msgid "WWW directory: %s"
 msgstr "WWW 目录:%s"
 
-#: src/server/server.c:439
+#: src/server/server.c:465
 #, c-format
 msgid "URL: http://localhost:%d"
 msgstr "URL: http://localhost:%d"
 
-#: src/server/server.c:449
+#: src/server/server.c:475
 msgid "Failed to activate logging of sensors."
 msgstr "无法激活监测器日志。"
 
-#: src/ui.c:87
+#: src/ui.c:213
 msgid "Psensor is a GTK+ application for monitoring hardware sensors"
 msgstr "Psensor 是一款 GTK+ 硬件监测传感应用程序"
 
-#: src/ui.c:90
+#: src/ui.c:216
 #, fuzzy
-msgid "Copyright(c) 2010-2014 jeanfi@gmail.com"
+msgid "Copyright(c) 2010-2016 jeanfi@gmail.com"
 msgstr ""
 "版权所有(c) 2010-2014\n"
 "jeanfi@gmail.com"
 
-#: src/ui.c:96
+#: src/ui.c:222
 msgid "About Psensor"
 msgstr "关于 Psensor"
 
-#: src/ui.c:100
+#: src/ui.c:223
+msgid "translator-credits"
+msgstr ""
+"Launchpad Contributions:\n"
+"  Jean-Philippe Orsini https://launchpad.net/~jfi\n"
+"  Wang Dianjin https://launchpad.net/~tuhaihe\n"
+"  tmpplus https://launchpad.net/~tmpplus.7328-deactivatedaccount\n"
+"  大宝 https://launchpad.net/~linux-dabao"
+
+#: src/ui.c:226
 msgid "Psensor Homepage"
 msgstr "Psensor 主页"
 
-#: src/ui.c:223
+#: src/ui.c:363
 msgid "Failed to load Psensor icon."
 msgstr "无法加载 Psensor 图标。"
 
-#: src/ui_sensorlist.c:254
+#: src/ui_sensorlist.c:259
 msgid "Hide"
 msgstr ""
 
-#: src/ui_sensorlist.c:264
-msgid "Preferences"
-msgstr "首选项"
-
-#: src/ui_sensorlist.c:296
+#: src/ui_sensorlist.c:303
 #, fuzzy
 msgid "Select sensor color"
 msgstr "选择前景色"
 
+#: src/ui_appindicator.c:148
+#, fuzzy, c-format
+msgid "Failed to load glade file %s: %s"
+msgstr "无法激活监测器日志。"
+
 #: src/ui_notify.c:48
 msgid "gettimeofday failed."
 msgstr "获取时间失败。"
@@ -449,170 +849,10 @@ msgstr "温度报警"
 msgid "Fan speed alert"
 msgstr "风扇警报"
 
-#: src/ui_sensorpref.c:248
+#: src/ui_sensorpref.c:290 src/ui_sensorpref.c:296 src/ui_sensorpref.c:304
 msgid "Unknown"
 msgstr "未知"
 
-#~ msgid "About"
-#~ msgstr "关于"
-
-#~ msgid "Sensor Preferences"
-#~ msgstr "传感器首选项"
-
-#~ msgid "Quit"
-#~ msgstr "退出"
-
-#~ msgid "Show"
-#~ msgstr "显示"
-
-#~ msgid "Psensor - Temperature Monitor"
-#~ msgstr "Psensor - 温度监视器"
-
-#~ msgid "_Help"
-#~ msgstr "帮助(_H)"
-
-#~ msgid "Sensor"
-#~ msgstr "监视设备"
-
-#~ msgid "Value"
-#~ msgstr "值"
-
-#~ msgid "Min"
-#~ msgstr "最小值"
-
-#~ msgid "Max"
-#~ msgstr "最大值"
-
-#~ msgid "Color"
-#~ msgstr "颜色"
-
-#~ msgid "Graph"
-#~ msgstr "图表"
-
-#~ msgid "Left"
-#~ msgstr "左侧"
-
-#~ msgid "Top"
-#~ msgstr "顶部"
-
-#~ msgid "Bottom"
-#~ msgstr "底部"
-
-#~ msgid "Edit Preferences"
-#~ msgstr "编辑首选项"
-
-#~ msgid "Hide window decoration"
-#~ msgstr "隐藏窗口标题栏"
-
-#~ msgid "Keep window below"
-#~ msgstr "保持在最底层"
-
-#~ msgid "Enable menu"
-#~ msgstr "启用菜单"
-
-#~ msgid "Enable Unity Launcher counter"
-#~ msgstr "启用 Unity 启动器计数器"
-
-#~ msgid "Temperature unit:"
-#~ msgstr "温度单位:"
-
-#~ msgid "Position of sensors table:"
-#~ msgstr "监视设备列表位置:"
-
-#~ msgid "Interface"
-#~ msgstr "界面"
-
-#~ msgid "Hide window on startup"
-#~ msgstr "启动时隐藏窗口"
-
-#~ msgid "Restore window position and size"
-#~ msgstr "恢复窗口位置和大小"
-
-#~ msgid "Foreground:"
-#~ msgstr "前景:"
-
-#~ msgid "Background:"
-#~ msgstr "背景:"
-
-#~ msgid "Background opacity:"
-#~ msgstr "背景透明:"
-
-#~ msgid "Colors"
-#~ msgstr "颜色"
-
-#~ msgid "Monitoring duration:"
-#~ msgstr "监视持续时长:"
-
-#~ msgid "Update interval:"
-#~ msgstr "更新间隔:"
-
-#~ msgid "Measures"
-#~ msgstr "测量"
-
-#~ msgid "<i>Min</i>"
-#~ msgstr "<i>最小值</i>"
-
-#~ msgid "<i>Max</i>"
-#~ msgstr "<i>最大值</i>"
-
-#~ msgid "second(s)"
-#~ msgstr "秒"
-
-#~ msgid "minute(s)"
-#~ msgstr "分钟"
-
-#~ msgid "Measure update interval:"
-#~ msgstr "测量更新间隔:"
-
-#~ msgid "Enable sensors logging"
-#~ msgstr "启用监测器记录"
-
-#~ msgid "seconds(s)"
-#~ msgstr "秒"
-
-#~ msgid "Sensors"
-#~ msgstr "传感器"
-
-#~ msgid "Edit Sensor Preferences"
-#~ msgstr "编辑传感器首选项"
-
-#~ msgid "Type:"
-#~ msgstr "类型:"
-
-#~ msgid "Chip:"
-#~ msgstr "芯片:"
-
-#~ msgid "Name:"
-#~ msgstr "名称:"
-
-#~ msgid "Id:"
-#~ msgstr "标识:"
-
-#~ msgid "Draw sensor curve"
-#~ msgstr "绘制监视曲线"
-
-#~ msgid "Color:"
-#~ msgstr "颜色:"
-
-#, fuzzy
-#~ msgid "Display sensor in the list of sensors"
-#~ msgstr "在应用指示器菜单中显示监视器"
-
-#~ msgid "Activate desktop notifications"
-#~ msgstr "激活桌面气泡提示"
-
-#~ msgid "High threshold:"
-#~ msgstr "高阈值:"
-
-#~ msgid "Low threshold:"
-#~ msgstr "低阈值:"
-
-#~ msgid "Alarm"
-#~ msgstr "警告"
-
-#~ msgid "Display sensor in the menu"
-#~ msgstr "在应用指示器菜单中显示监视器"
-
 #~ msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
 #~ msgstr "lmsensor:lmsensor_psensor_create 失败:错误的功能类型。"
 
index 7611095..8779d9e 100644 (file)
@@ -1,5 +1,23 @@
 SUBDIRS = lib glade
 
+psensor_SOURCES = \
+       cfg.h cfg.c \
+       notify_cmd.c notify_cmd.h \
+       graph.h graph.c \
+       main.c \
+       pxdg.h pxdg.c \
+       rsensor.h \
+       ui.h ui.c \
+       ui_appindicator.h \
+       ui_color.h ui_color.c \
+       ui_graph.h ui_graph.c \
+       ui_notify.h \
+       ui_pref.h ui_pref.c \
+       ui_sensorlist.h ui_sensorlist.c \
+       ui_sensorpref.h ui_sensorpref.c \
+       ui_status.h ui_status.c \
+       ui_unity.h
+
 # -export-dynamic is need for defining handlers in the glade file.
 AM_LDFLAGS = -Wl,--as-needed -export-dynamic
 
@@ -35,28 +53,13 @@ endif
 endif
 endif
 
-psensor_SOURCES = \
-       cfg.h cfg.c \
-       notify_cmd.c notify_cmd.h \
-       graph.h graph.c \
-       main.c \
-       ui.h ui.c \
-       ui_appindicator.h \
-       ui_color.h ui_color.c \
-       ui_graph.h ui_graph.c \
-       ui_pref.h ui_pref.c \
-       ui_sensorlist.h ui_sensorlist.c \
-       ui_sensorpref.h ui_sensorpref.c \
-       ui_status.h ui_status.c \
-       pxdg.h pxdg.c
-
 if GTOP
 AM_CPPFLAGS += $(GTOP_CFLAGS)
 LIBS += $(GTOP_LIBS)
 endif
 
 if LIBNOTIFY
-psensor_SOURCES += ui_notify.h ui_notify.c
+psensor_SOURCES += ui_notify.c
 LIBS += $(LIBNOTIFY_LIBS)
 AM_CPPFLAGS += $(LIBNOTIFY_CFLAGS)
 endif
@@ -89,24 +92,32 @@ LIBS += $(LIBUDISKS2_LIBS)
 endif
 
 if UNITY
-psensor_SOURCES += ui_unity.h ui_unity.c
+psensor_SOURCES += ui_unity.c
 AM_CPPFLAGS += $(UNITY_CFLAGS)
 LIBS += $(UNITY_LIBS) 
 endif
 
 if CURL
 if JSON
-psensor_SOURCES += rsensor.h rsensor.c
+psensor_SOURCES += rsensor.c
 LIBS += $(CURL_LIBS) $(JSON_LIBS)
 AM_CPPFLAGS += $(CURL_CFLAGS) $(JSON_CFLAGS)
 endif
 endif
 
+if HELP2MAN
 psensor.1: main.c $(top_srcdir)/configure.ac
        $(MAKE) $(AM_MAKEFLAGS) psensor$(EXEEXT)
        help2man --include=description.txt -N --name="Temperature monitoring application" --output=psensor.1 ./psensor$(EXEEXT)
+endif
 
 gsettings_SCHEMAS=psensor.gschema.xml
-EXTRA_DIST = description.txt $(gsettings_SCHEMAS)
+
+EXTRA_DIST = description.txt\
+       $(gsettings_SCHEMAS)\
+       rsensor.c\
+       ui_appindicator.c\
+       ui_notify.c\
+       ui_unity.c
 
 @GSETTINGS_RULES@
index 9bf3fab..f35d657 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -92,7 +82,7 @@ host_triplet = @host@
 @GTK_TRUE@@X11_TRUE@@XEXT_TRUE@bin_PROGRAMS = psensor$(EXEEXT)
 @GTOP_TRUE@am__append_2 = $(GTOP_CFLAGS)
 @GTOP_TRUE@am__append_3 = $(GTOP_LIBS)
-@LIBNOTIFY_TRUE@am__append_4 = ui_notify.h ui_notify.c
+@LIBNOTIFY_TRUE@am__append_4 = ui_notify.c
 @LIBNOTIFY_TRUE@am__append_5 = $(LIBNOTIFY_LIBS)
 @LIBNOTIFY_TRUE@am__append_6 = $(LIBNOTIFY_CFLAGS)
 @APPINDICATOR_TRUE@am__append_7 = ui_appindicator.c 
@@ -105,18 +95,23 @@ host_triplet = @host@
 @ATASMART_TRUE@am__append_14 = $(ATASMART_CFLAGS)
 @ATASMART_TRUE@am__append_15 = $(ATASMART_LIBS)
 @LIBUDISKS2_TRUE@am__append_16 = $(LIBUDISKS2_LIBS)
-@UNITY_TRUE@am__append_17 = ui_unity.h ui_unity.c
+@UNITY_TRUE@am__append_17 = ui_unity.c
 @UNITY_TRUE@am__append_18 = $(UNITY_CFLAGS)
 @UNITY_TRUE@am__append_19 = $(UNITY_LIBS) 
-@CURL_TRUE@@JSON_TRUE@am__append_20 = rsensor.h rsensor.c
+@CURL_TRUE@@JSON_TRUE@am__append_20 = rsensor.c
 @CURL_TRUE@@JSON_TRUE@am__append_21 = $(CURL_LIBS) $(JSON_LIBS)
 @CURL_TRUE@@JSON_TRUE@am__append_22 = $(CURL_CFLAGS) $(JSON_CFLAGS)
 subdir = src
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/depcomp $(dist_man_MANS)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -124,22 +119,22 @@ CONFIG_CLEAN_VPATH_FILES =
 am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"
 PROGRAMS = $(bin_PROGRAMS)
 am__psensor_SOURCES_DIST = cfg.h cfg.c notify_cmd.c notify_cmd.h \
-       graph.h graph.c main.c ui.h ui.c ui_appindicator.h ui_color.h \
-       ui_color.c ui_graph.h ui_graph.c ui_pref.h ui_pref.c \
-       ui_sensorlist.h ui_sensorlist.c ui_sensorpref.h \
-       ui_sensorpref.c ui_status.h ui_status.c pxdg.h pxdg.c \
-       ui_notify.h ui_notify.c ui_appindicator.c ui_unity.h \
-       ui_unity.c rsensor.h rsensor.c
+       graph.h graph.c main.c pxdg.h pxdg.c rsensor.h ui.h ui.c \
+       ui_appindicator.h ui_color.h ui_color.c ui_graph.h ui_graph.c \
+       ui_notify.h ui_pref.h ui_pref.c ui_sensorlist.h \
+       ui_sensorlist.c ui_sensorpref.h ui_sensorpref.c ui_status.h \
+       ui_status.c ui_unity.h ui_notify.c ui_appindicator.c \
+       ui_unity.c rsensor.c
 @LIBNOTIFY_TRUE@am__objects_1 = ui_notify.$(OBJEXT)
 @APPINDICATOR_TRUE@am__objects_2 = ui_appindicator.$(OBJEXT)
 @UNITY_TRUE@am__objects_3 = ui_unity.$(OBJEXT)
 @CURL_TRUE@@JSON_TRUE@am__objects_4 = rsensor.$(OBJEXT)
 am_psensor_OBJECTS = cfg.$(OBJEXT) notify_cmd.$(OBJEXT) \
-       graph.$(OBJEXT) main.$(OBJEXT) ui.$(OBJEXT) ui_color.$(OBJEXT) \
-       ui_graph.$(OBJEXT) ui_pref.$(OBJEXT) ui_sensorlist.$(OBJEXT) \
-       ui_sensorpref.$(OBJEXT) ui_status.$(OBJEXT) pxdg.$(OBJEXT) \
-       $(am__objects_1) $(am__objects_2) $(am__objects_3) \
-       $(am__objects_4)
+       graph.$(OBJEXT) main.$(OBJEXT) pxdg.$(OBJEXT) ui.$(OBJEXT) \
+       ui_color.$(OBJEXT) ui_graph.$(OBJEXT) ui_pref.$(OBJEXT) \
+       ui_sensorlist.$(OBJEXT) ui_sensorpref.$(OBJEXT) \
+       ui_status.$(OBJEXT) $(am__objects_1) $(am__objects_2) \
+       $(am__objects_3) $(am__objects_4)
 psensor_OBJECTS = $(am_psensor_OBJECTS)
 psensor_LDADD = $(LDADD)
 AM_V_P = $(am__v_P_@AM_V@)
@@ -243,8 +238,6 @@ am__define_uniq_tagged_files = \
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = lib glade server
-am__DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.in \
-       $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 am__relativize = \
   dir0=`pwd`; \
@@ -299,7 +292,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -361,7 +353,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -376,7 +367,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -422,7 +412,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -432,6 +421,13 @@ top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 SUBDIRS = lib glade $(am__append_1)
+psensor_SOURCES = cfg.h cfg.c notify_cmd.c notify_cmd.h graph.h \
+       graph.c main.c pxdg.h pxdg.c rsensor.h ui.h ui.c \
+       ui_appindicator.h ui_color.h ui_color.c ui_graph.h ui_graph.c \
+       ui_notify.h ui_pref.h ui_pref.c ui_sensorlist.h \
+       ui_sensorlist.c ui_sensorpref.h ui_sensorpref.c ui_status.h \
+       ui_status.c ui_unity.h $(am__append_4) $(am__append_7) \
+       $(am__append_17) $(am__append_20)
 
 # -export-dynamic is need for defining handlers in the glade file.
 AM_LDFLAGS = -Wl,--as-needed -export-dynamic
@@ -444,15 +440,14 @@ AM_CPPFLAGS = -Wall -DDEFAULT_WWW_DIR=\""$(pkgdatadir)/www"\" \
        $(am__append_12) $(am__append_14) $(am__append_18) \
        $(am__append_22)
 @GTK_TRUE@@X11_TRUE@@XEXT_TRUE@dist_man_MANS = psensor.1
-psensor_SOURCES = cfg.h cfg.c notify_cmd.c notify_cmd.h graph.h \
-       graph.c main.c ui.h ui.c ui_appindicator.h ui_color.h \
-       ui_color.c ui_graph.h ui_graph.c ui_pref.h ui_pref.c \
-       ui_sensorlist.h ui_sensorlist.c ui_sensorpref.h \
-       ui_sensorpref.c ui_status.h ui_status.c pxdg.h pxdg.c \
-       $(am__append_4) $(am__append_7) $(am__append_17) \
-       $(am__append_20)
 gsettings_SCHEMAS = psensor.gschema.xml
-EXTRA_DIST = description.txt $(gsettings_SCHEMAS)
+EXTRA_DIST = description.txt\
+       $(gsettings_SCHEMAS)\
+       rsensor.c\
+       ui_appindicator.c\
+       ui_notify.c\
+       ui_unity.c
+
 all: all-recursive
 
 .SUFFIXES:
@@ -469,6 +464,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu src/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -893,12 +889,10 @@ uninstall-man: uninstall-man1
        tags tags-am uninstall uninstall-am uninstall-binPROGRAMS \
        uninstall-man uninstall-man1
 
-.PRECIOUS: Makefile
-
 
-psensor.1: main.c $(top_srcdir)/configure.ac
-       $(MAKE) $(AM_MAKEFLAGS) psensor$(EXEEXT)
-       help2man --include=description.txt -N --name="Temperature monitoring application" --output=psensor.1 ./psensor$(EXEEXT)
+@HELP2MAN_TRUE@psensor.1: main.c $(top_srcdir)/configure.ac
+@HELP2MAN_TRUE@        $(MAKE) $(AM_MAKEFLAGS) psensor$(EXEEXT)
+@HELP2MAN_TRUE@        help2man --include=description.txt -N --name="Temperature monitoring application" --output=psensor.1 ./psensor$(EXEEXT)
 
 @GSETTINGS_RULES@
 
index 0f22ccb..d94f256 100644 (file)
--- a/src/cfg.c
+++ b/src/cfg.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -119,6 +119,10 @@ static const char *KEY_PROVIDER_LIBATASMART_ENABLED
 static const char *KEY_PROVIDER_NVCTRL_ENABLED = "provider-nvctrl-enabled";
 static const char *KEY_PROVIDER_UDISKS2_ENABLED = "provider-udisks2-enabled";
 
+static const char *KEY_DEFAULT_HIGH_THRESHOLD_TEMPERATURE
+= "default-high-threshold-temperature";
+static const char *KEY_DEFAULT_SENSOR_ALARM_ENABLED
+= "default-sensor-alarm-enabled";
 
 static GSettings *settings;
 
@@ -170,7 +174,7 @@ static int get_int(const char *k)
        return g_settings_get_int(settings, k);
 }
 
-char *config_get_notif_script()
+char *config_get_notif_script(void)
 {
        char *str;
 
@@ -191,7 +195,7 @@ void config_set_notif_script(const char *str)
                set_string(KEY_NOTIFICATION_SCRIPT, "");
 }
 
-static struct color *get_background_color()
+static struct color *get_background_color(void)
 {
        char *scolor;
        struct color *c;
@@ -207,7 +211,7 @@ static struct color *get_background_color()
        return c;
 }
 
-static struct color *get_foreground_color()
+static struct color *get_foreground_color(void)
 {
        char *scolor;
        struct color *c;
@@ -223,7 +227,7 @@ static struct color *get_foreground_color()
        return c;
 }
 
-static bool is_alpha_channel_enabled()
+static bool is_alpha_channel_enabled(void)
 {
        return get_bool(KEY_ALPHA_CHANNEL_ENABLED);
 }
@@ -233,17 +237,17 @@ static void set_alpha_channeld_enabled(bool b)
        set_bool(KEY_ALPHA_CHANNEL_ENABLED, b);
 }
 
-static enum sensorlist_position get_sensorlist_position()
+enum sensorlist_position config_get_sensorlist_position(void)
 {
        return get_int(KEY_INTERFACE_SENSORLIST_POSITION);
 }
 
-static void set_sensorlist_position(enum sensorlist_position pos)
+void config_set_sensorlist_position(enum sensorlist_position pos)
 {
        set_int(KEY_INTERFACE_SENSORLIST_POSITION, pos);
 }
 
-static double get_graph_background_alpha()
+static double get_graph_background_alpha(void)
 {
        return get_double(KEY_GRAPH_BACKGROUND_ALPHA);
 }
@@ -279,7 +283,7 @@ static void set_foreground_color(const struct color *color)
        free(str);
 }
 
-bool is_slog_enabled()
+bool is_slog_enabled(void)
 {
        return get_bool(KEY_SLOG_ENABLED);
 }
@@ -311,7 +315,7 @@ void config_set_slog_enabled_changed_cbk(void (*cbk)(void *), void *data)
        log_fct_exit();
 }
 
-int config_get_slog_interval()
+int config_get_slog_interval(void)
 {
        return get_int(KEY_SLOG_INTERVAL);
 }
@@ -324,27 +328,27 @@ static void set_slog_interval(int interval)
        set_int(KEY_SLOG_INTERVAL, interval);
 }
 
-static bool is_window_decoration_enabled()
+bool config_is_window_decoration_enabled(void)
 {
        return !get_bool(KEY_INTERFACE_WINDOW_DECORATION_DISABLED);
 }
 
-static bool is_window_keep_below_enabled()
+bool config_is_window_keep_below_enabled(void)
 {
        return get_bool(KEY_INTERFACE_WINDOW_KEEP_BELOW_ENABLED);
 }
 
-static void set_window_decoration_enabled(bool enabled)
+void config_set_window_decoration_enabled(bool enabled)
 {
        set_bool(KEY_INTERFACE_WINDOW_DECORATION_DISABLED, !enabled);
 }
 
-static void set_window_keep_below_enabled(bool enabled)
+void config_set_window_keep_below_enabled(bool enabled)
 {
        set_bool(KEY_INTERFACE_WINDOW_KEEP_BELOW_ENABLED, enabled);
 }
 
-bool config_is_smooth_curves_enabled()
+bool config_is_smooth_curves_enabled(void)
 {
        return get_bool(KEY_GRAPH_SMOOTH_CURVES_ENABLED);
 }
@@ -354,8 +358,17 @@ void config_set_smooth_curves_enabled(bool b)
        set_bool(KEY_GRAPH_SMOOTH_CURVES_ENABLED, b);
 }
 
+double config_get_default_high_threshold_temperature(void)
+{
+       return get_double(KEY_DEFAULT_HIGH_THRESHOLD_TEMPERATURE);
+}
+
+static bool config_get_default_sensor_alarm_enabled(void)
+{
+       return get_bool(KEY_DEFAULT_SENSOR_ALARM_ENABLED);
+}
 
-static void init()
+static void init(void)
 {
        log_fct_enter();
 
@@ -365,7 +378,7 @@ static void init()
        log_fct_exit();
 }
 
-void config_cleanup()
+void config_cleanup(void)
 {
        config_sync();
 
@@ -393,7 +406,7 @@ void config_cleanup()
        slog_enabled_cbk = NULL;
 }
 
-struct config *config_load()
+struct config *config_load(void)
 {
        struct config *c;
 
@@ -405,9 +418,6 @@ struct config *config_load()
        c->graph_fgcolor = get_foreground_color();
        c->graph_bg_alpha = get_graph_background_alpha();
        c->alpha_channel_enabled = is_alpha_channel_enabled();
-       c->sensorlist_position = get_sensorlist_position();
-       c->window_decoration_enabled = is_window_decoration_enabled();
-       c->window_keep_below_enabled = is_window_keep_below_enabled();
        c->slog_enabled = is_slog_enabled();
        c->slog_interval = config_get_slog_interval();
 
@@ -425,13 +435,6 @@ struct config *config_load()
        if (c->graph_monitoring_duration < 1)
                c->graph_monitoring_duration = 10;
 
-       c->menu_bar_disabled = get_bool(KEY_INTERFACE_MENU_BAR_DISABLED);
-
-       c->unity_launcher_count_disabled
-               = get_bool(KEY_INTERFACE_UNITY_LAUNCHER_COUNT_DISABLED);
-
-       c->hide_on_startup = get_bool(KEY_INTERFACE_HIDE_ON_STARTUP);
-
        c->window_restore_enabled
                = get_bool(KEY_INTERFACE_WINDOW_RESTORE_ENABLED);
 
@@ -447,8 +450,6 @@ struct config *config_load()
                c->window_h = 200;
        }
 
-       c->temperature_unit = get_int(KEY_INTERFACE_TEMPERATURE_UNIT);
-
        c->sensor_values_max_length = compute_values_max_length(c);
 
        return c;
@@ -460,9 +461,6 @@ void config_save(const struct config *c)
        set_background_color(c->graph_bgcolor);
        set_foreground_color(c->graph_fgcolor);
        set_graph_background_alpha(c->graph_bg_alpha);
-       set_sensorlist_position(c->sensorlist_position);
-       set_window_decoration_enabled(c->window_decoration_enabled);
-       set_window_keep_below_enabled(c->window_keep_below_enabled);
        set_slog_enabled(c->slog_enabled);
        set_slog_interval(c->slog_interval);
 
@@ -472,11 +470,6 @@ void config_save(const struct config *c)
 
        set_int(KEY_SENSOR_UPDATE_INTERVAL, c->sensor_update_interval);
 
-       set_bool(KEY_INTERFACE_MENU_BAR_DISABLED, c->menu_bar_disabled);
-
-       set_bool(KEY_INTERFACE_UNITY_LAUNCHER_COUNT_DISABLED,
-                c->unity_launcher_count_disabled);
-
        set_bool(KEY_INTERFACE_HIDE_ON_STARTUP, c->hide_on_startup);
 
        set_bool(KEY_INTERFACE_WINDOW_RESTORE_ENABLED,
@@ -488,11 +481,9 @@ void config_save(const struct config *c)
        set_int(KEY_INTERFACE_WINDOW_H, c->window_h);
 
        set_int(KEY_INTERFACE_WINDOW_DIVIDER_POS, c->window_divider_pos);
-
-       set_int(KEY_INTERFACE_TEMPERATURE_UNIT, c->temperature_unit);
 }
 
-const char *get_psensor_user_dir()
+const char *get_psensor_user_dir(void)
 {
        const char *home;
 
@@ -521,7 +512,7 @@ const char *get_psensor_user_dir()
        return user_dir;
 }
 
-static const char *get_sensor_config_path()
+static const char *get_sensor_config_path(void)
 {
        const char *dir;
 
@@ -535,7 +526,7 @@ static const char *get_sensor_config_path()
        return sensor_config_path;
 }
 
-static GKeyFile *get_sensor_key_file()
+static GKeyFile *get_sensor_key_file(void)
 {
        int ret;
        GError *err;
@@ -553,16 +544,18 @@ static GKeyFile *get_sensor_key_file()
                                                | G_KEY_FILE_KEEP_TRANSLATIONS,
                                                &err);
 
-               if (!ret)
+               if (!ret) {
                        log_warn(_("Failed to load configuration file %s: %s"),
                                 path,
                                 err->message);
+                       g_error_free(err);
+               }
        }
 
        return key_file;
 }
 
-static void save_sensor_key_file()
+static void save_sensor_key_file(void)
 {
        GKeyFile *kfile;
        const char *path;
@@ -584,7 +577,7 @@ static void save_sensor_key_file()
        log_fct_exit();
 }
 
-void config_sync()
+void config_sync(void)
 {
        log_fct_enter();
        if (settings)
@@ -609,12 +602,50 @@ static char *sensor_get_str(const char *sid, const char *att)
        return g_key_file_get_string(kfile, sid, att, NULL);
 }
 
-static bool sensor_get_bool(const char *sid, const char *att)
+static bool sensor_get_double(const char *sid, const char *att, double *d)
+{
+       GKeyFile *kfile;
+       GError *err;
+       double v;
+
+       kfile = get_sensor_key_file();
+
+       err = NULL;
+       v = g_key_file_get_double(kfile, sid, att, &err);
+
+       if (err) {
+               log_err(err->message);
+
+               g_error_free(err);
+
+               return false;
+       }
+
+       *d = v;
+       return true;
+}
+
+static bool sensor_get_bool(const char *sid, const char *att, bool dft)
 {
        GKeyFile *kfile;
+       GError *err;
+       bool ret;
 
        kfile = get_sensor_key_file();
-       return g_key_file_get_boolean(kfile, sid, att, NULL);
+
+       err = NULL;
+       ret = g_key_file_get_boolean(kfile, sid, att, &err);
+
+       if (err) {
+               if (err->code == G_KEY_FILE_ERROR_KEY_NOT_FOUND)
+                       ret = dft;
+               else
+                       log_err(err->message);
+
+               g_error_free(err);
+       }
+
+       return ret;
 }
 
 static void sensor_set_bool(const char *sid, const char *att, bool enabled)
@@ -653,43 +684,85 @@ void config_set_sensor_name(const char *sid, const char *name)
        sensor_set_str(sid, ATT_SENSOR_NAME, name);
 }
 
-void config_set_sensor_color(const char *sid, const struct color *color)
-{
-       char *scolor;
-
-       scolor = color_to_str(color);
+void config_set_sensor_color(const char *sid, const GdkRGBA *color)
+{
+       gchar *str;
+
+       str = gdk_rgba_to_string(color);
+
+       sensor_set_str(sid, ATT_SENSOR_COLOR, str);
+
+       g_free(str);
+}
+
+static const char *next_default_color(void)
+{
+       /* copied from the default colors of the gtk color color
+        * chooser.
+        */
+       const char *default_colors[27] = {
+               "#ef2929",  /* Scarlet Red */
+               "#fcaf3e",  /* Orange */
+               "#fce94f",  /* Butter */
+               "#8ae234",  /* Chameleon */
+               "#729fcf",  /* Sky Blue */
+               "#ad7fa8",  /* Plum */
+               "#e9b96e",  /* Chocolate */
+               "#888a85",  /* Aluminum 1 */
+               "#eeeeec",  /* Aluminum 2 */
+               "#cc0000",
+               "#f57900",
+               "#edd400",
+               "#73d216",
+               "#3465a4",
+               "#75507b",
+               "#c17d11",
+               "#555753",
+               "#d3d7cf",
+               "#a40000",
+               "#ce5c00",
+               "#c4a000",
+               "#4e9a06",
+               "#204a87",
+               "#5c3566",
+               "#8f5902",
+               "#2e3436",
+               "#babdb6"
+       };
+       static int next_idx;
+       const char *c;
+
+       c = default_colors[next_idx % 27];
+
+       next_idx++;
 
-       sensor_set_str(sid, ATT_SENSOR_COLOR, scolor);
-
-       free(scolor);
+       return c;
 }
 
-struct color *
-config_get_sensor_color(const char *sid, const struct color *dft)
+GdkRGBA *config_get_sensor_color(const char *sid)
 {
-       char *scolor;
-       struct color *color;
-
-       scolor = sensor_get_str(sid, ATT_SENSOR_COLOR);
+       GdkRGBA rgba;
+       char *str;
+       gboolean ret;
 
-       if (scolor)
-               color = str_to_color(scolor);
-       else
-               color = NULL;
+       str = sensor_get_str(sid, ATT_SENSOR_COLOR);
 
-       if (!color) {
-               color = color_new(dft->red, dft->green, dft->blue);
-               config_set_sensor_color(sid, color);
+       if (str) {
+               ret = gdk_rgba_parse(&rgba, str);
+               free(str);
        }
 
-       free(scolor);
+       if (!str || !ret) {
+               gdk_rgba_parse(&rgba, next_default_color());
+               config_set_sensor_color(sid, &rgba);
+       }
 
-       return color;
+       return gdk_rgba_copy(&rgba);
 }
 
 bool config_is_sensor_graph_enabled(const char *sid)
 {
-       return sensor_get_bool(sid, ATT_SENSOR_GRAPH_ENABLED);
+       return sensor_get_bool(sid, ATT_SENSOR_GRAPH_ENABLED, false);
 }
 
 void config_set_sensor_graph_enabled(const char *sid, bool enabled)
@@ -697,9 +770,9 @@ void config_set_sensor_graph_enabled(const char *sid, bool enabled)
        sensor_set_bool(sid, ATT_SENSOR_GRAPH_ENABLED, enabled);
 }
 
-int config_get_sensor_alarm_high_threshold(const char *sid)
+bool config_get_sensor_alarm_high_threshold(const char *sid, double *v)
 {
-       return sensor_get_int(sid, ATT_SENSOR_ALARM_HIGH_THRESHOLD);
+       return sensor_get_double(sid, ATT_SENSOR_ALARM_HIGH_THRESHOLD, v);
 }
 
 void config_set_sensor_alarm_high_threshold(const char *sid, int threshold)
@@ -707,9 +780,9 @@ void config_set_sensor_alarm_high_threshold(const char *sid, int threshold)
        sensor_set_int(sid, ATT_SENSOR_ALARM_HIGH_THRESHOLD, threshold);
 }
 
-int config_get_sensor_alarm_low_threshold(const char *sid)
+bool config_get_sensor_alarm_low_threshold(const char *sid, double *v)
 {
-       return sensor_get_int(sid, ATT_SENSOR_ALARM_LOW_THRESHOLD);
+       return sensor_get_double(sid, ATT_SENSOR_ALARM_LOW_THRESHOLD, v);
 }
 
 void config_set_sensor_alarm_low_threshold(const char *sid, int threshold)
@@ -719,14 +792,16 @@ void config_set_sensor_alarm_low_threshold(const char *sid, int threshold)
 
 bool config_is_appindicator_enabled(const char *sid)
 {
-       return !sensor_get_bool(sid, ATT_SENSOR_APPINDICATOR_MENU_DISABLED);
+       return !sensor_get_bool(sid,
+                               ATT_SENSOR_APPINDICATOR_MENU_DISABLED,
+                               false);
 }
 
 void config_set_appindicator_enabled(const char *sid, bool enabled)
 {
-       return sensor_set_bool(sid,
-                              ATT_SENSOR_APPINDICATOR_MENU_DISABLED,
-                              !enabled);
+       sensor_set_bool(sid,
+                       ATT_SENSOR_APPINDICATOR_MENU_DISABLED,
+                       !enabled);
 }
 
 int config_get_sensor_position(const char *sid)
@@ -736,12 +811,12 @@ int config_get_sensor_position(const char *sid)
 
 void config_set_sensor_position(const char *sid, int pos)
 {
-       return sensor_set_int(sid, ATT_SENSOR_POSITION, pos);
+       sensor_set_int(sid, ATT_SENSOR_POSITION, pos);
 }
 
 bool config_get_sensor_alarm_enabled(const char *sid)
 {
-       return sensor_get_bool(sid, ATT_SENSOR_ALARM_ENABLED);
+       return sensor_get_bool(sid, ATT_SENSOR_ALARM_ENABLED, false);
 }
 
 void config_set_sensor_alarm_enabled(const char *sid, bool enabled)
@@ -751,7 +826,9 @@ void config_set_sensor_alarm_enabled(const char *sid, bool enabled)
 
 bool config_is_sensor_enabled(const char *sid)
 {
-       return !sensor_get_bool(sid, ATT_SENSOR_HIDE);
+       return !sensor_get_bool(sid,
+                               ATT_SENSOR_HIDE,
+                               config_get_default_sensor_alarm_enabled());
 }
 
 void config_set_sensor_enabled(const char *sid, bool enabled)
@@ -761,7 +838,9 @@ void config_set_sensor_enabled(const char *sid, bool enabled)
 
 bool config_is_appindicator_label_enabled(const char *sid)
 {
-       return sensor_get_bool(sid, ATT_SENSOR_APPINDICATOR_LABEL_ENABLED);
+       return sensor_get_bool(sid,
+                              ATT_SENSOR_APPINDICATOR_LABEL_ENABLED,
+                              false);
 }
 
 void config_set_appindicator_label_enabled(const char *sid, bool enabled)
@@ -769,42 +848,42 @@ void config_set_appindicator_label_enabled(const char *sid, bool enabled)
        sensor_set_bool(sid, ATT_SENSOR_APPINDICATOR_LABEL_ENABLED, enabled);
 }
 
-GSettings *config_get_GSettings()
+GSettings *config_get_GSettings(void)
 {
        return settings;
 }
 
-bool config_is_lmsensor_enabled()
+bool config_is_lmsensor_enabled(void)
 {
        return get_bool(KEY_PROVIDER_LMSENSORS_ENABLED);
 }
 
-bool config_is_gtop2_enabled()
+bool config_is_gtop2_enabled(void)
 {
        return get_bool(KEY_PROVIDER_GTOP2_ENABLED);
 }
 
-bool config_is_udisks2_enabled()
+bool config_is_udisks2_enabled(void)
 {
        return get_bool(KEY_PROVIDER_UDISKS2_ENABLED);
 }
 
-bool config_is_hddtemp_enabled()
+bool config_is_hddtemp_enabled(void)
 {
        return get_bool(KEY_PROVIDER_HDDTEMP_ENABLED);
 }
 
-bool config_is_libatasmart_enabled()
+bool config_is_libatasmart_enabled(void)
 {
        return get_bool(KEY_PROVIDER_LIBATASMART_ENABLED);
 }
 
-bool config_is_nvctrl_enabled()
+bool config_is_nvctrl_enabled(void)
 {
        return get_bool(KEY_PROVIDER_NVCTRL_ENABLED);
 }
 
-bool config_is_atiadlsdk_enabled()
+bool config_is_atiadlsdk_enabled(void)
 {
        return get_bool(KEY_PROVIDER_ATIADLSDK_ENABLED);
 }
@@ -843,3 +922,33 @@ void config_set_udisks2_enable(bool b)
 {
        set_bool(KEY_PROVIDER_UDISKS2_ENABLED, b);
 }
+
+enum temperature_unit config_get_temperature_unit(void)
+{
+       return get_int(KEY_INTERFACE_TEMPERATURE_UNIT);
+}
+
+void config_set_temperature_unit(enum temperature_unit u)
+{
+       set_int(KEY_INTERFACE_TEMPERATURE_UNIT, u);
+}
+
+bool config_is_menu_bar_enabled(void)
+{
+       return !get_bool(KEY_INTERFACE_MENU_BAR_DISABLED);
+}
+
+void config_set_menu_bar_enabled(bool enabled)
+{
+       set_bool(KEY_INTERFACE_MENU_BAR_DISABLED, !enabled);
+}
+
+bool config_is_count_visible(void)
+{
+       return !get_bool(KEY_INTERFACE_UNITY_LAUNCHER_COUNT_DISABLED);
+}
+
+void config_set_count_visible(bool visible)
+{
+       set_bool(KEY_INTERFACE_UNITY_LAUNCHER_COUNT_DISABLED, !visible);
+}
index ed2e20e..524e513 100644 (file)
--- a/src/cfg.h
+++ b/src/cfg.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -19,7 +19,7 @@
 #ifndef _PSENSOR_CONFIG_H_
 #define _PSENSOR_CONFIG_H_
 
-#include <gio/gio.h>
+#include <gdk/gdk.h>
 
 #include <bool.h>
 #include <color.h>
@@ -44,11 +44,6 @@ struct config {
 
        bool alpha_channel_enabled;
 
-       /* Position of the sensors list table */
-       enum sensorlist_position sensorlist_position;
-
-       bool window_decoration_enabled;
-       bool window_keep_below_enabled;
        bool window_restore_enabled;
        /* Last saved position of the window. */
        int window_x;
@@ -65,32 +60,26 @@ struct config {
        int sensor_values_max_length;
        int sensor_update_interval;
 
-       bool menu_bar_disabled;
-
-       bool unity_launcher_count_disabled;
-
        int hide_on_startup;
 
-       enum temperature_unit temperature_unit;
-
        bool slog_enabled;
        int slog_interval;
 };
 
 /* Loads psensor configuration */
-struct config *config_load();
+struct config *config_load(void);
 
 void config_save(const struct config *);
 
-void config_cleanup();
+void config_cleanup(void);
 
-struct color *config_get_sensor_color(const char *sid, const struct color *);
-void config_set_sensor_color(const char *sid, const struct color *);
+GdkRGBA *config_get_sensor_color(const char *);
+void config_set_sensor_color(const char *, const GdkRGBA *);
 
-int config_get_sensor_alarm_high_threshold(const char *);
+bool config_get_sensor_alarm_high_threshold(const char *, double *);
 void config_set_sensor_alarm_high_threshold(const char *, int);
 
-int config_get_sensor_alarm_low_threshold(const char *);
+bool config_get_sensor_alarm_low_threshold(const char *, double *);
 void config_set_sensor_alarm_low_threshold(const char *, int);
 
 bool config_get_sensor_alarm_enabled(const char *);
@@ -108,44 +97,64 @@ void config_set_appindicator_enabled(const char *, bool);
 bool config_is_appindicator_label_enabled(const char *);
 void config_set_appindicator_label_enabled(const char *, bool);
 
-bool is_slog_enabled();
+bool is_slog_enabled(void);
 void config_set_slog_enabled_changed_cbk(void (*)(void *), void *);
 
-int config_get_slog_interval();
+int config_get_slog_interval(void);
 
-bool config_is_smooth_curves_enabled();
+bool config_is_smooth_curves_enabled(void);
 void config_set_smooth_curves_enabled(bool);
 
 int config_get_sensor_position(const char *);
 void config_set_sensor_position(const char *, int);
 
-char *config_get_notif_script();
+char *config_get_notif_script(void);
 void config_set_notif_script(const char *);
 
 bool config_is_sensor_enabled(const char *sid);
 void config_set_sensor_enabled(const char *sid, bool enabled);
 
-bool config_is_lmsensor_enabled();
+bool config_is_lmsensor_enabled(void);
 void config_set_lmsensor_enable(bool);
 
-bool config_is_gtop2_enabled();
+bool config_is_gtop2_enabled(void);
 void config_set_gtop2_enable(bool);
 
-bool config_is_udisks2_enabled();
+bool config_is_udisks2_enabled(void);
 void config_set_udisks2_enable(bool);
 
-bool config_is_hddtemp_enabled();
+bool config_is_hddtemp_enabled(void);
 void config_set_hddtemp_enable(bool);
 
-bool config_is_libatasmart_enabled();
+bool config_is_libatasmart_enabled(void);
 void config_set_libatasmart_enable(bool);
 
-bool config_is_nvctrl_enabled();
+bool config_is_nvctrl_enabled(void);
 void config_set_nvctrl_enable(bool);
 
-bool config_is_atiadlsdk_enabled();
+bool config_is_atiadlsdk_enabled(void);
 void config_set_atiadlsdk_enable(bool);
 
+enum temperature_unit config_get_temperature_unit(void);
+void config_set_temperature_unit(enum temperature_unit);
+
+double config_get_default_high_threshold_temperature(void);
+
+bool config_is_window_decoration_enabled(void);
+void config_set_window_decoration_enabled(bool);
+
+bool config_is_window_keep_below_enabled(void);
+void config_set_window_keep_below_enabled(bool);
+
+bool config_is_menu_bar_enabled(void);
+void config_set_menu_bar_enabled(bool);
+
+bool config_is_count_visible(void);
+void config_set_count_visible(bool);
+
+enum sensorlist_position config_get_sensorlist_position(void);
+void config_set_sensorlist_position(enum sensorlist_position pos);
+
 /*
  * Returns the user directory containing psensor data (configuration
  * and log).
@@ -153,10 +162,10 @@ void config_set_atiadlsdk_enable(bool);
  * Creates the directory if it does not exist;
  * Returns NULL if it cannot be determined.
  */
-const char *get_psensor_user_dir();
+const char *get_psensor_user_dir(void);
 
-void config_sync();
+void config_sync(void);
 
-GSettings *config_get_GSettings();
+GSettings *config_get_GSettings(void);
 
 #endif
index 3f01895..5ac0bca 100644 (file)
@@ -1,6 +1,7 @@
 gladedir = $(pkgdatadir)
 glade_DATA = \
        psensor.glade \
+       psensor-appindicator.glade \
        sensor-edit.glade \
        psensor-pref.glade
 
index 390d96e..d794b5b 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = src/glade
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(gladedir)"
 DATA = $(glade_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -309,6 +298,7 @@ top_srcdir = @top_srcdir@
 gladedir = $(pkgdatadir)
 glade_DATA = \
        psensor.glade \
+       psensor-appindicator.glade \
        sensor-edit.glade \
        psensor-pref.glade
 
@@ -328,6 +318,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/glade/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu src/glade/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -520,8 +511,6 @@ uninstall-am: uninstall-gladeDATA
        pdf-am ps ps-am tags-am uninstall uninstall-am \
        uninstall-gladeDATA
 
-.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.
diff --git a/src/glade/psensor-appindicator.glade b/src/glade/psensor-appindicator.glade
new file mode 100644 (file)
index 0000000..a503c87
--- /dev/null
@@ -0,0 +1,184 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.18.3 -->
+<interface>
+  <requires lib="gtk+" version="3.4"/>
+  <object class="GtkAction" id="AboutAction">
+    <property name="label" translatable="yes">About</property>
+    <signal name="activate" handler="ui_cb_about" swapped="no"/>
+  </object>
+  <object class="GtkAction" id="AppIndicatorPreferencesAction">
+    <property name="label" translatable="yes">Preferences</property>
+    <property name="short_label" translatable="yes">Preferences</property>
+    <signal name="activate" handler="ui_appindicator_cb_preferences" swapped="no"/>
+  </object>
+  <object class="GtkAction" id="AppIndicatorSensorPreferencesAction">
+    <property name="label" translatable="yes">Sensor Preferences</property>
+    <property name="short_label" translatable="yes">Sensor Preferences</property>
+    <signal name="activate" handler="ui_appindicator_cb_sensor_preferences" swapped="no"/>
+  </object>
+  <object class="GtkAction" id="PreferencesAction">
+    <property name="label" translatable="yes">Preferences</property>
+    <signal name="activate" handler="ui_cb_preferences" swapped="no"/>
+  </object>
+  <object class="GtkAction" id="QuitAction">
+    <property name="label" translatable="yes">Quit</property>
+    <signal name="activate" handler="ui_cb_menu_quit" swapped="no"/>
+  </object>
+  <object class="GtkAction" id="SensorPreferencesAction">
+    <property name="label" translatable="yes">Sensor Preferences</property>
+    <signal name="activate" handler="ui_cb_sensor_preferences" swapped="no"/>
+  </object>
+  <object class="GtkMenu" id="popup_menu">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <child>
+      <object class="GtkImageMenuItem" id="popup_pref">
+        <property name="related_action">PreferencesAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkImageMenuItem" id="popup_sensorpref">
+        <property name="related_action">SensorPreferencesAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="separatoritem">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkImageMenuItem" id="popup_about">
+        <property name="related_action">AboutAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="separatoritem1">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkImageMenuItem" id="popup_quit">
+        <property name="related_action">QuitAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+  </object>
+  <object class="GtkAction" id="ShowAction">
+    <property name="label" translatable="yes">Show</property>
+    <signal name="activate" handler="ui_appindicator_menu_show_cb" swapped="no"/>
+  </object>
+  <object class="GtkMenu" id="appindicator_menu">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <child>
+      <object class="GtkImageMenuItem" id="menuitem8">
+        <property name="related_action">ShowAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="menuitem9">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="menuitem10">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkImageMenuItem" id="menuitem1">
+        <property name="related_action">AppIndicatorPreferencesAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkImageMenuItem" id="menuitem2">
+        <property name="related_action">AppIndicatorSensorPreferencesAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="menuitem3">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkImageMenuItem" id="menuitem5">
+        <property name="related_action">AboutAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="menuitem6">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkImageMenuItem" id="menuitem7">
+        <property name="related_action">QuitAction</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_underline">True</property>
+        <property name="use_stock">True</property>
+      </object>
+    </child>
+  </object>
+  <object class="GtkListStore" id="sensors_store">
+    <columns>
+      <!-- column-name gchararray1 -->
+      <column type="gchararray"/>
+      <!-- column-name gchararray2 -->
+      <column type="gchararray"/>
+      <!-- column-name gchararray3 -->
+      <column type="gchararray"/>
+      <!-- column-name gchararray4 -->
+      <column type="gchararray"/>
+      <!-- column-name gchararray5 -->
+      <column type="gchararray"/>
+      <!-- column-name gchararray6 -->
+      <column type="gchararray"/>
+      <!-- column-name gboolean1 -->
+      <column type="gboolean"/>
+      <!-- column-name gchararray7 -->
+      <column type="gchararray"/>
+      <!-- column-name gpointer1 -->
+      <column type="gpointer"/>
+      <!-- column-name gboolean2 -->
+      <column type="gboolean"/>
+    </columns>
+  </object>
+</interface>
index 54b1ee1..4c76882 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.1 -->
+<!-- Generated with glade 3.18.3 -->
 <interface>
   <requires lib="gtk+" version="3.4"/>
   <object class="GtkAdjustment" id="mins">
                     <property name="margin_bottom">4</property>
                     <property name="xalign">0</property>
                     <property name="draw_indicator">True</property>
+                    <signal name="toggled" handler="ui_pref_decoration_toggled_cbk" swapped="no"/>
                   </object>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">0</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="margin_bottom">4</property>
                     <property name="xalign">0</property>
                     <property name="draw_indicator">True</property>
+                    <signal name="toggled" handler="ui_pref_keep_below_toggled_cbk" swapped="no"/>
                   </object>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">1</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="margin_bottom">4</property>
                     <property name="xalign">0</property>
                     <property name="draw_indicator">True</property>
+                    <signal name="toggled" handler="ui_pref_menu_toggled_cbk" swapped="no"/>
                   </object>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">2</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
+                    <property name="tooltip_text" translatable="yes">Psensor has not been build with Unity Launcher support</property>
                     <property name="margin_left">4</property>
                     <property name="margin_right">4</property>
                     <property name="margin_top">4</property>
                     <property name="margin_bottom">4</property>
                     <property name="xalign">0</property>
                     <property name="draw_indicator">True</property>
+                    <signal name="toggled" handler="ui_pref_count_visible_toggled_cbk" swapped="no"/>
                   </object>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">3</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                       <item translatable="yes">Celsius</item>
                       <item translatable="yes">Fahrenheit</item>
                     </items>
+                    <signal name="changed" handler="ui_pref_temperature_unit_changed_cbk" swapped="no"/>
                   </object>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">4</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="margin_bottom">4</property>
                     <property name="model">position_list_store</property>
                     <property name="active">0</property>
+                    <signal name="changed" handler="ui_pref_sensorlist_position_changed_cbk" swapped="no"/>
                     <child>
                       <object class="GtkCellRendererText" id="cellrenderertext1"/>
                       <attributes>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">5</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="left_attach">0</property>
                     <property name="top_attach">4</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">5</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
               </object>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">1</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
               </object>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">3</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">3</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">4</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">4</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">5</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="left_attach">0</property>
                     <property name="top_attach">2</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">7</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">8</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="left_attach">0</property>
                     <property name="top_attach">6</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">5</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">8</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">7</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="left_attach">0</property>
                     <property name="top_attach">1</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="left_attach">0</property>
                     <property name="top_attach">0</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
               </object>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">2</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="left_attach">0</property>
                     <property name="top_attach">1</property>
                     <property name="width">3</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="margin_right">4</property>
                     <property name="margin_top">4</property>
                     <property name="margin_bottom">4</property>
-                    <property name="label" translatable="yes">seconds(s)</property>
+                    <property name="label" translatable="yes">second(s)</property>
                   </object>
                   <packing>
                     <property name="left_attach">2</property>
                     <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">3</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="left_attach">1</property>
                     <property name="top_attach">3</property>
                     <property name="width">2</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
               </object>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">1</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
+                    <property name="tooltip_text" translatable="yes">Psensor has not been build with NVCtrl support</property>
                     <property name="margin_left">14</property>
                     <property name="margin_right">4</property>
                     <property name="margin_top">4</property>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">3</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
+                    <property name="tooltip_text" translatable="yes">Psensor has not been build with ATI ADL support</property>
                     <property name="margin_left">14</property>
                     <property name="margin_right">4</property>
                     <property name="margin_top">4</property>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">4</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
+                    <property name="tooltip_text" translatable="yes">Psensor has not been build with gtop2 support</property>
                     <property name="margin_left">14</property>
                     <property name="margin_right">4</property>
                     <property name="margin_top">4</property>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">6</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">8</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
+                    <property name="tooltip_text" translatable="yes">Psensor has not been build with libatasmart support</property>
                     <property name="margin_left">14</property>
                     <property name="margin_right">4</property>
                     <property name="margin_top">4</property>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">9</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
+                    <property name="tooltip_text" translatable="yes">Psensor has not been build with udisks2 support</property>
                     <property name="margin_left">14</property>
                     <property name="margin_right">4</property>
                     <property name="margin_top">4</property>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">10</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">11</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">7</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">5</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">2</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <packing>
                     <property name="left_attach">0</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
               </object>
index 565d2dd..dbee7ef 100644 (file)
@@ -6,16 +6,6 @@
     <property name="label" translatable="yes">About</property>
     <signal name="activate" handler="ui_cb_about" swapped="no"/>
   </object>
-  <object class="GtkAction" id="AppIndicatorPreferencesAction">
-    <property name="label" translatable="yes">Preferences</property>
-    <property name="short_label" translatable="yes">Preferences</property>
-    <signal name="activate" handler="ui_appindicator_cb_preferences" swapped="no"/>
-  </object>
-  <object class="GtkAction" id="AppIndicatorSensorPreferencesAction">
-    <property name="label" translatable="yes">Sensor Preferences</property>
-    <property name="short_label" translatable="yes">Sensor Preferences</property>
-    <signal name="activate" handler="ui_appindicator_cb_sensor_preferences" swapped="no"/>
-  </object>
   <object class="GtkAction" id="PreferencesAction">
     <property name="label" translatable="yes">Preferences</property>
     <signal name="activate" handler="ui_cb_preferences" swapped="no"/>
       </object>
     </child>
   </object>
-  <object class="GtkAction" id="ShowAction">
-    <property name="label" translatable="yes">Show</property>
-    <signal name="activate" handler="cb_menu_show" swapped="no"/>
-  </object>
-  <object class="GtkMenu" id="appindicator_menu">
-    <property name="visible">True</property>
-    <property name="can_focus">False</property>
-    <child>
-      <object class="GtkImageMenuItem" id="menuitem8">
-        <property name="related_action">ShowAction</property>
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-        <property name="use_underline">True</property>
-        <property name="use_stock">True</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkSeparatorMenuItem" id="menuitem9">
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkSeparatorMenuItem" id="menuitem10">
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkImageMenuItem" id="menuitem1">
-        <property name="related_action">AppIndicatorPreferencesAction</property>
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-        <property name="use_underline">True</property>
-        <property name="use_stock">True</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkImageMenuItem" id="menuitem2">
-        <property name="related_action">AppIndicatorSensorPreferencesAction</property>
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-        <property name="use_underline">True</property>
-        <property name="use_stock">True</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkSeparatorMenuItem" id="menuitem3">
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkImageMenuItem" id="menuitem5">
-        <property name="related_action">AboutAction</property>
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-        <property name="use_underline">True</property>
-        <property name="use_stock">True</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkSeparatorMenuItem" id="menuitem6">
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-      </object>
-    </child>
-    <child>
-      <object class="GtkImageMenuItem" id="menuitem7">
-        <property name="related_action">QuitAction</property>
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
-        <property name="use_underline">True</property>
-        <property name="use_stock">True</property>
-      </object>
-    </child>
-  </object>
   <object class="GtkListStore" id="sensors_store">
     <columns>
       <!-- column-name gchararray1 -->
index 167c9eb..69ef482 100644 (file)
             <property name="can_focus">False</property>
             <property name="layout_style">end</property>
             <child>
-              <object class="GtkButton" id="btn_ok">
-                <property name="label">gtk-ok</property>
+              <object class="GtkButton" id="btn_close">
+                <property name="label">gtk-close</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
+                <property name="can_default">True</property>
                 <property name="receives_default">True</property>
                 <property name="use_stock">True</property>
+                <signal name="clicked" handler="ui_sensorpref_close_clicked_cb" swapped="no"/>
               </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="position">0</property>
               </packing>
             </child>
-            <child>
-              <object class="GtkButton" id="btn_cancel">
-                <property name="label">gtk-cancel</property>
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="receives_default">True</property>
-                <property name="use_stock">True</property>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-                <property name="position">1</property>
-              </packing>
-            </child>
           </object>
           <packing>
             <property name="expand">False</property>
                     <property name="reorderable">True</property>
                     <property name="search_column">1</property>
                     <child internal-child="selection">
-                      <object class="GtkTreeSelection" id="treeview-selection"/>
+                      <object class="GtkTreeSelection" id="treeview-selection">
+                        <signal name="changed" handler="ui_sensorpref_tree_selection_changed_cb" swapped="no"/>
+                      </object>
                     </child>
                     <child>
                       <object class="GtkTreeViewColumn" id="sensor_name_col">
                       <object class="GtkLabel" id="label3">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
+                        <property name="margin_left">4</property>
+                        <property name="margin_right">4</property>
+                        <property name="margin_top">4</property>
+                        <property name="margin_bottom">4</property>
                         <property name="xalign">0</property>
                         <property name="xpad">4</property>
                         <property name="label" translatable="yes">Name:</property>
                         <property name="height">1</property>
                       </packing>
                     </child>
+                    <child>
+                      <object class="GtkLabel" id="label5">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="margin_left">4</property>
+                        <property name="margin_right">4</property>
+                        <property name="margin_top">4</property>
+                        <property name="margin_bottom">4</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">4</property>
+                        <property name="label" translatable="yes">Min:</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">4</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label6">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="margin_left">4</property>
+                        <property name="margin_right">4</property>
+                        <property name="margin_top">4</property>
+                        <property name="margin_bottom">4</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">4</property>
+                        <property name="label" translatable="yes">Max:</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">5</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="sensor_min">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="margin_left">4</property>
+                        <property name="margin_right">4</property>
+                        <property name="margin_top">4</property>
+                        <property name="margin_bottom">4</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">label</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">4</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="sensor_max">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="margin_left">4</property>
+                        <property name="margin_right">4</property>
+                        <property name="margin_top">4</property>
+                        <property name="margin_bottom">4</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">label</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">5</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
                   </object>
                 </child>
                 <child type="tab">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
+                        <property name="tooltip_text" translatable="yes">Psensor has not been build with AppIndicator support</property>
                         <property name="margin_left">4</property>
                         <property name="margin_right">4</property>
                         <property name="margin_top">4</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
+                        <property name="tooltip_text" translatable="yes">Psensor has not been build with AppIndicator support</property>
                         <property name="margin_left">4</property>
                         <property name="margin_right">4</property>
                         <property name="margin_top">4</property>
       </object>
     </child>
     <action-widgets>
-      <action-widget response="-3">btn_ok</action-widget>
-      <action-widget response="0">btn_cancel</action-widget>
+      <action-widget response="-2">btn_close</action-widget>
     </action-widgets>
   </object>
 </interface>
index 60392cc..71090aa 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #include <math.h>
 
 #include <cfg.h>
+#include <graph.h>
+#include <parray.h>
 #include <plog.h>
 #include <psensor.h>
 
 /* horizontal padding */
-const int GRAPH_H_PADDING = 4;
+static const int GRAPH_H_PADDING = 4;
 /* vertical padding */
-const int GRAPH_V_PADDING = 4;
+static const int GRAPH_V_PADDING = 4;
 
 bool is_smooth_curves_enabled;
 
@@ -72,6 +74,29 @@ static void update_theme(GtkWidget *w)
                                    &theme_fg_color);
 }
 
+static struct psensor **list_filter_graph_enabled(struct psensor **sensors)
+{
+       int n, i;
+       struct psensor **result, **cur, *s;
+
+       if (!sensors)
+               return NULL;
+
+       n = psensor_list_size(sensors);
+       result = malloc((n+1) * sizeof(struct psensor *));
+
+       for (cur = sensors, i = 0; *cur; cur++) {
+               s = *cur;
+
+               if (config_is_sensor_graph_enabled(s->id))
+                       result[i++] = s;
+       }
+
+       result[i] = NULL;
+
+       return result;
+}
+
 /* Return the end time of the graph i.e. the more recent measure.  If
  * no measure are available, return 0.
  * If Bezier curves are used return the measure n-3 to avoid to
@@ -223,7 +248,7 @@ static double dashes[] = {
        1.0,            /* ink */
        2.0,            /* skip */
 };
-static int ndash = sizeof(dashes) / sizeof(dashes[0]);
+static int ndash = ARRAY_SIZE(dashes);
 
 static void draw_background_lines(cairo_t *cr,
                                  int min, int max,
@@ -265,7 +290,7 @@ static void draw_background_lines(cairo_t *cr,
        cairo_stroke(cr);
 
        /* back to normal line style */
-       cairo_set_dash(cr, 0, 0, 0);
+       cairo_set_dash(cr, NULL, 0, 0);
 }
 
 /* Keys: sensor identifier.
@@ -286,6 +311,7 @@ static void draw_sensor_smooth_curve(struct psensor *s,
        int i, dt, vdt, j, k, found;
        double x[4], y[4], v;
        time_t t, t0, *stimes;
+       GdkRGBA *color;
 
        if (!times)
                times = g_hash_table_new_full(g_str_hash,
@@ -295,15 +321,19 @@ static void draw_sensor_smooth_curve(struct psensor *s,
 
        stimes = g_hash_table_lookup(times, s->id);
 
+       color = config_get_sensor_color(s->id);
+
        cairo_set_source_rgb(cr,
-                            s->color->red,
-                            s->color->green,
-                            s->color->blue);
+                            color->red,
+                            color->green,
+                            color->blue);
+       gdk_rgba_free(color);
 
        /* search the index of the first measure used as a start point
         * of a Bezier curve. The start and end points of the Bezier
         * curves must be preserved to ensure the same overall shape
-        * of the graph. */
+        * of the graph.
+        */
        i = 0;
        if (stimes) {
                while (i < s->values_max_length) {
@@ -388,11 +418,14 @@ static void draw_sensor_curve(struct psensor *s,
 {
        int first, i, t, dt, vdt;
        double v, x, y;
+       GdkRGBA *color;
 
+       color = config_get_sensor_color(s->id);
        cairo_set_source_rgb(cr,
-                            s->color->red,
-                            s->color->green,
-                            s->color->blue);
+                            color->red,
+                            color->green,
+                            color->blue);
+       gdk_rgba_free(color);
 
        dt = et - bt;
        first = 1;
@@ -448,14 +481,13 @@ graph_update(struct psensor **sensors,
        double min_rpm, max_rpm, mint, maxt, min, max;
        char *strmin, *strmax;
        /* horizontal and vertical offset of the graph */
-       int g_xoff, g_yoff, no_graphs;
+       int g_xoff, g_yoff, no_graphs, use_celsius;
        cairo_surface_t *cst;
        cairo_t *cr, *cr_pixmap;
        char *str_btime, *str_etime;
        cairo_text_extents_t te_btime, te_etime, te_max, te_min;
        struct psensor **sensor_cur, **enabled_sensors;
        GtkAllocation galloc;
-       GtkStyleContext *style_ctx;
        struct graph_info info;
 
        if (!gtk_widget_is_drawable(w_graph))
@@ -464,20 +496,21 @@ graph_update(struct psensor **sensors,
        if (!style)
                update_theme(window);
 
-       enabled_sensors = psensor_list_filter_graph_enabled(sensors);
+       enabled_sensors = list_filter_graph_enabled(sensors);
 
        min_rpm = get_min_rpm(enabled_sensors);
        max_rpm = get_max_rpm(enabled_sensors);
 
+       if (config_get_temperature_unit() == CELSIUS)
+               use_celsius = 1;
+       else
+               use_celsius = 0;
+
        mint = get_min_temp(enabled_sensors);
-       strmin = psensor_value_to_str(SENSOR_TYPE_TEMP,
-                                     mint,
-                                     config->temperature_unit == CELSIUS);
+       strmin = psensor_value_to_str(SENSOR_TYPE_TEMP, mint, use_celsius);
 
        maxt = get_max_temp(enabled_sensors);
-       strmax = psensor_value_to_str(SENSOR_TYPE_TEMP,
-                                     maxt,
-                                     config->temperature_unit == CELSIUS);
+       strmax = psensor_value_to_str(SENSOR_TYPE_TEMP, maxt, use_celsius);
 
        et = get_graph_end_time_s(enabled_sensors);
        bt = get_graph_begin_time_s(config, et);
index 7dae2c1..236b4ea 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index 6bf03c3..6c4dd7c 100644 (file)
@@ -5,20 +5,28 @@ libpsensor_a_SOURCES = \
        bool.h\
        color.h color.c\
        hdd.h hdd_hddtemp.c\
-       lmsensor.h lmsensor.c\
-       measure.h measure.c \
+       lmsensor.h\
+       measure.h measure.c\
        nvidia.h\
+       parray.h\
+       pgtop2.h\
        plog.h plog.c\
        pmutex.h pmutex.c\
        psensor.h psensor.c\
        ptime.h ptime.c\
        pio.h pio.c\
+       pudisks2.h\
        slog.c slog.h\
        temperature.c temperature.h\
        url.c url.h
 
 AM_CPPFLAGS = -Wall -Werror
 
+if SENSORS
+libpsensor_a_SOURCES += lmsensor.c
+LIBS += $(SENSORS_LIBS)
+endif
+
 if ATASMART
 libpsensor_a_SOURCES += hdd_atasmart.c
 LIBS += $(ATASMART_LIBS)
@@ -36,7 +44,7 @@ libpsensor_a_SOURCES += amd.c
 endif
 
 if GTOP
-libpsensor_a_SOURCES += pgtop2.c pgtop2.h
+libpsensor_a_SOURCES += pgtop2.c
 LIBS += $(GTOP_LIBS)
 AM_CPPFLAGS += $(GTOP_CFLAGS)
 endif
@@ -48,13 +56,15 @@ AM_CPPFLAGS += $(JSON_CFLAGS)
 endif
 
 if LIBUDISKS2
-libpsensor_a_SOURCES += pudisks2.c pudisks2.h
+libpsensor_a_SOURCES += pudisks2.c
 LIBS += $(LIBUDISKS2_LIBS)
 AM_CPPFLAGS += $(LIBUDISKS2_CFLAGS)
 endif
 
 EXTRA_DIST=$(libpsensor_a_SOURCES) \
        amd.c \
-       pgtop2.c pgtop2.h \
+       pgtop2.c \
+       lmsensor.c \
        nvidia.c \
-       pudisks2.c pudisks2.h
+       psensor_json.h psensor_json.c \
+       pudisks2.c
index 0fb913c..b3c3450 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -88,28 +78,35 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-@ATASMART_TRUE@am__append_1 = hdd_atasmart.c
-@ATASMART_TRUE@am__append_2 = $(ATASMART_LIBS)
-@ATASMART_TRUE@am__append_3 = $(ATASMART_CFLAGS)
-@NVIDIA_TRUE@am__append_4 = nvidia.c
-@LIBATIADL_TRUE@am__append_5 = $(LIBATIADL_LIBS)
-@LIBATIADL_TRUE@am__append_6 = $(LIBATIADL_CFLAGS)
-@LIBATIADL_TRUE@am__append_7 = amd.c
-@GTOP_TRUE@am__append_8 = pgtop2.c pgtop2.h
-@GTOP_TRUE@am__append_9 = $(GTOP_LIBS)
-@GTOP_TRUE@am__append_10 = $(GTOP_CFLAGS)
-@JSON_TRUE@am__append_11 = psensor_json.h psensor_json.c
-@JSON_TRUE@am__append_12 = $(JSON_LIBS)
-@JSON_TRUE@am__append_13 = $(JSON_CFLAGS)
-@LIBUDISKS2_TRUE@am__append_14 = pudisks2.c pudisks2.h
-@LIBUDISKS2_TRUE@am__append_15 = $(LIBUDISKS2_LIBS)
-@LIBUDISKS2_TRUE@am__append_16 = $(LIBUDISKS2_CFLAGS)
+@SENSORS_TRUE@am__append_1 = lmsensor.c
+@SENSORS_TRUE@am__append_2 = $(SENSORS_LIBS)
+@ATASMART_TRUE@am__append_3 = hdd_atasmart.c
+@ATASMART_TRUE@am__append_4 = $(ATASMART_LIBS)
+@ATASMART_TRUE@am__append_5 = $(ATASMART_CFLAGS)
+@NVIDIA_TRUE@am__append_6 = nvidia.c
+@LIBATIADL_TRUE@am__append_7 = $(LIBATIADL_LIBS)
+@LIBATIADL_TRUE@am__append_8 = $(LIBATIADL_CFLAGS)
+@LIBATIADL_TRUE@am__append_9 = amd.c
+@GTOP_TRUE@am__append_10 = pgtop2.c
+@GTOP_TRUE@am__append_11 = $(GTOP_LIBS)
+@GTOP_TRUE@am__append_12 = $(GTOP_CFLAGS)
+@JSON_TRUE@am__append_13 = psensor_json.h psensor_json.c
+@JSON_TRUE@am__append_14 = $(JSON_LIBS)
+@JSON_TRUE@am__append_15 = $(JSON_CFLAGS)
+@LIBUDISKS2_TRUE@am__append_16 = pudisks2.c
+@LIBUDISKS2_TRUE@am__append_17 = $(LIBUDISKS2_LIBS)
+@LIBUDISKS2_TRUE@am__append_18 = $(LIBUDISKS2_CFLAGS)
 subdir = src/lib
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -123,25 +120,25 @@ am__v_AR_1 =
 libpsensor_a_AR = $(AR) $(ARFLAGS)
 libpsensor_a_LIBADD =
 am__libpsensor_a_SOURCES_DIST = amd.h bool.h color.h color.c hdd.h \
-       hdd_hddtemp.c lmsensor.h lmsensor.c measure.h measure.c \
-       nvidia.h plog.h plog.c pmutex.h pmutex.c psensor.h psensor.c \
-       ptime.h ptime.c pio.h pio.c slog.c slog.h temperature.c \
-       temperature.h url.c url.h hdd_atasmart.c nvidia.c amd.c \
-       pgtop2.c pgtop2.h psensor_json.h psensor_json.c pudisks2.c \
-       pudisks2.h
-@ATASMART_TRUE@am__objects_1 = hdd_atasmart.$(OBJEXT)
-@NVIDIA_TRUE@am__objects_2 = nvidia.$(OBJEXT)
-@LIBATIADL_TRUE@am__objects_3 = amd.$(OBJEXT)
-@GTOP_TRUE@am__objects_4 = pgtop2.$(OBJEXT)
-@JSON_TRUE@am__objects_5 = psensor_json.$(OBJEXT)
-@LIBUDISKS2_TRUE@am__objects_6 = pudisks2.$(OBJEXT)
+       hdd_hddtemp.c lmsensor.h measure.h measure.c nvidia.h parray.h \
+       pgtop2.h plog.h plog.c pmutex.h pmutex.c psensor.h psensor.c \
+       ptime.h ptime.c pio.h pio.c pudisks2.h slog.c slog.h \
+       temperature.c temperature.h url.c url.h lmsensor.c \
+       hdd_atasmart.c nvidia.c amd.c pgtop2.c psensor_json.h \
+       psensor_json.c pudisks2.c
+@SENSORS_TRUE@am__objects_1 = lmsensor.$(OBJEXT)
+@ATASMART_TRUE@am__objects_2 = hdd_atasmart.$(OBJEXT)
+@NVIDIA_TRUE@am__objects_3 = nvidia.$(OBJEXT)
+@LIBATIADL_TRUE@am__objects_4 = amd.$(OBJEXT)
+@GTOP_TRUE@am__objects_5 = pgtop2.$(OBJEXT)
+@JSON_TRUE@am__objects_6 = psensor_json.$(OBJEXT)
+@LIBUDISKS2_TRUE@am__objects_7 = pudisks2.$(OBJEXT)
 am_libpsensor_a_OBJECTS = color.$(OBJEXT) hdd_hddtemp.$(OBJEXT) \
-       lmsensor.$(OBJEXT) measure.$(OBJEXT) plog.$(OBJEXT) \
-       pmutex.$(OBJEXT) psensor.$(OBJEXT) ptime.$(OBJEXT) \
-       pio.$(OBJEXT) slog.$(OBJEXT) temperature.$(OBJEXT) \
-       url.$(OBJEXT) $(am__objects_1) $(am__objects_2) \
-       $(am__objects_3) $(am__objects_4) $(am__objects_5) \
-       $(am__objects_6)
+       measure.$(OBJEXT) plog.$(OBJEXT) pmutex.$(OBJEXT) \
+       psensor.$(OBJEXT) ptime.$(OBJEXT) pio.$(OBJEXT) slog.$(OBJEXT) \
+       temperature.$(OBJEXT) url.$(OBJEXT) $(am__objects_1) \
+       $(am__objects_2) $(am__objects_3) $(am__objects_4) \
+       $(am__objects_5) $(am__objects_6) $(am__objects_7)
 libpsensor_a_OBJECTS = $(am_libpsensor_a_OBJECTS)
 AM_V_P = $(am__v_P_@AM_V@)
 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -197,7 +194,6 @@ am__define_uniq_tagged_files = \
   done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -227,7 +223,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -258,8 +253,8 @@ LIBMICROHTTPD_LIBS = @LIBMICROHTTPD_LIBS@
 LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@
 LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@
 LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@ $(am__append_2) $(am__append_5) $(am__append_9) \
-       $(am__append_12) $(am__append_15)
+LIBS = @LIBS@ $(am__append_2) $(am__append_4) $(am__append_7) \
+       $(am__append_11) $(am__append_14) $(am__append_17)
 LIBUDISKS2_CFLAGS = @LIBUDISKS2_CFLAGS@
 LIBUDISKS2_LIBS = @LIBUDISKS2_LIBS@
 LTLIBICONV = @LTLIBICONV@
@@ -287,7 +282,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -302,7 +296,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -348,7 +341,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -359,19 +351,21 @@ top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 noinst_LIBRARIES = libpsensor.a
 libpsensor_a_SOURCES = amd.h bool.h color.h color.c hdd.h \
-       hdd_hddtemp.c lmsensor.h lmsensor.c measure.h measure.c \
-       nvidia.h plog.h plog.c pmutex.h pmutex.c psensor.h psensor.c \
-       ptime.h ptime.c pio.h pio.c slog.c slog.h temperature.c \
-       temperature.h url.c url.h $(am__append_1) $(am__append_4) \
-       $(am__append_7) $(am__append_8) $(am__append_11) \
-       $(am__append_14)
-AM_CPPFLAGS = -Wall -Werror $(am__append_3) $(am__append_6) \
+       hdd_hddtemp.c lmsensor.h measure.h measure.c nvidia.h parray.h \
+       pgtop2.h plog.h plog.c pmutex.h pmutex.c psensor.h psensor.c \
+       ptime.h ptime.c pio.h pio.c pudisks2.h slog.c slog.h \
+       temperature.c temperature.h url.c url.h $(am__append_1) \
+       $(am__append_3) $(am__append_6) $(am__append_9) \
        $(am__append_10) $(am__append_13) $(am__append_16)
+AM_CPPFLAGS = -Wall -Werror $(am__append_5) $(am__append_8) \
+       $(am__append_12) $(am__append_15) $(am__append_18)
 EXTRA_DIST = $(libpsensor_a_SOURCES) \
        amd.c \
-       pgtop2.c pgtop2.h \
+       pgtop2.c \
+       lmsensor.c \
        nvidia.c \
-       pudisks2.c pudisks2.h
+       psensor_json.h psensor_json.c \
+       pudisks2.c
 
 all: all-am
 
@@ -389,6 +383,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/lib/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu src/lib/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -654,8 +649,6 @@ uninstall-am:
        mostlyclean-generic pdf pdf-am ps ps-am tags 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.
index c2ec5eb..72a807e 100644 (file)
@@ -77,7 +77,7 @@ static double get_temp(struct psensor *sensor)
        v.iSize = sizeof(ADLTemperature);
        v.iTemperature = -273;
 
-       if (ADL_OK == adl_od5_temperature_get(sensor->amd_id, 0, &v))
+       if (adl_od5_temperature_get(sensor->amd_id, 0, &v) == ADL_OK)
                return v.iTemperature/1000;
 
        return UNKNOWN_DBL_VALUE;
@@ -91,7 +91,7 @@ static double get_fanspeed(struct psensor *sensor)
        v.iSpeedType = ADL_DL_FANCTRL_SPEED_TYPE_RPM;
        v.iFanSpeed = -1;
 
-       if (ADL_OK == adl_od5_fanspeed_get(sensor->amd_id, 0, &v))
+       if (adl_od5_fanspeed_get(sensor->amd_id, 0, &v) == ADL_OK)
                return v.iFanSpeed;
 
        return UNKNOWN_DBL_VALUE;
@@ -103,7 +103,7 @@ static double get_usage(struct psensor *sensor)
 
        v.iSize = sizeof(ADLPMActivity);
 
-       if (ADL_OK == adl_od5_currentactivity_get(sensor->amd_id, &v))
+       if (adl_od5_currentactivity_get(sensor->amd_id, &v) == ADL_OK)
                return v.iActivityPercent;
 
        return UNKNOWN_DBL_VALUE;
@@ -152,11 +152,11 @@ static struct psensor *create_sensor(int id, int type, int values_len)
 }
 
 /*
-  Returns the number of active AMD/ATI GPU adapters
-
-  Return 0 if no AMD/ATI GPUs or cannot get information.
-*/
-static int init()
* Returns the number of active AMD/ATI GPU adapters
+ *
* Return 0 if no AMD/ATI GPUs or cannot get information.
+ */
+static int init(void)
 {
        LPAdapterInfo lpadapterinfo;
        int i, inumberadapters, inumberadaptersactive, lpstatus, iadapterindex;
@@ -200,17 +200,17 @@ static int init()
        }
 
        /*
-          1 in 2nd parameter means retrieve adapter information only
-          for adapters that are physically present and enabled in the
-          system
+        * 1 in 2nd parameter means retrieve adapter information only
+        * for adapters that are physically present and enabled in the
+        * system
         */
-       if (ADL_OK != adl_main_control_create(adl_main_memory_alloc, 1)) {
+       if (adl_main_control_create(adl_main_memory_alloc, 1) != ADL_OK) {
                log_err(_("AMD: failed to initialize ADL."));
                return 0;
        }
        adl_main_control_done = 1;
 
-       if (ADL_OK != adl_adapter_numberofadapters_get(&inumberadapters)) {
+       if (adl_adapter_numberofadapters_get(&inumberadapters) != ADL_OK) {
                log_err(_("AMD: cannot get the number of adapters."));
                return 0;
        }
@@ -228,7 +228,7 @@ static int init()
 
                iadapterindex = lpadapterinfo[i].iAdapterIndex;
 
-               if (ADL_OK != adl_adapter_active_get(iadapterindex, &lpstatus))
+               if (adl_adapter_active_get(iadapterindex, &lpstatus) != ADL_OK)
                        continue;
                if (lpstatus != ADL_TRUE)
                        continue;
@@ -295,7 +295,7 @@ void amd_psensor_list_append(struct psensor ***sensors, int values_len)
                }
 }
 
-void amd_cleanup()
+void amd_cleanup(void)
 {
        if (hdll) {
                if (adl_main_control_done)
index d7dde40..682f8eb 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2010-2011 thgreasi@gmail.com, jeanfi@gmail.com
- * Copyright (C) 2012-2014 jeanfi@gmail.com
+ * Copyright (C) 2012-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_AMD_H_
 #define _PSENSOR_AMD_H_
 
-#include "psensor.h"
+#include <bool.h>
+#include <psensor.h>
 
-void amd_psensor_list_update(struct psensor **sensors);
+#if defined(HAVE_LIBATIADL) && HAVE_LIBATIADL
 
-void amd_psensor_list_append(struct psensor ***sensors, int values_max_length);
+static inline bool amd_is_supported(void) { return true; }
 
-void amd_cleanup();
+void amd_psensor_list_update(struct psensor **s);
+void amd_psensor_list_append(struct psensor ***s, int n);
+void amd_cleanup(void);
+
+#else
+
+static inline bool amd_is_supported(void) { return false; }
+
+static inline void amd_psensor_list_update(struct psensor **s) {}
+static inline void amd_psensor_list_append(struct psensor ***s, int n) {}
+static inline void amd_cleanup(void) {}
+
+#endif
 
 #endif
index c31360d..c2ad205 100644 (file)
@@ -21,7 +21,7 @@
 
 #include "config.h"
 
-#if HAVE_STDBOOL
+#if HAVE_STDBOOL_H
 #include <stdbool.h>
 #else
 #define bool char
index 8474c72..6ec2ec6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index 2956654..7636b65 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index 8d4c316..c24ceb5 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_HDD_H_
 #define _PSENSOR_HDD_H_
 
-#include "config.h"
-#include "psensor.h"
+#include <bool.h>
+#include <config.h>
+#include <psensor.h>
+
+#if defined(HAVE_ATASMART) && HAVE_ATASMART
+
+static inline bool atasmart_is_supported(void) { return true; }
+
+void atasmart_psensor_list_append(struct psensor ***, int);
+void atasmart_psensor_list_update(struct psensor **);
+
+#else
+
+static inline bool atasmart_is_supported(void) { return false; }
+
+static inline void atasmart_psensor_list_append(struct psensor ***s, int n) {}
+static inline void atasmart_psensor_list_update(struct psensor **s) {}
 
-#ifdef HAVE_ATASMART
-void atasmart_psensor_list_append(struct psensor ***sensors, int values_length);
-void atasmart_psensor_list_update(struct psensor **sensors);
 #endif
 
 void hddtemp_psensor_list_append(struct psensor ***sensors, int values_length);
index 0fd7d5d..402c92e 100644 (file)
@@ -25,6 +25,7 @@
 
 #include <errno.h>
 #include <fcntl.h>
+#include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <sys/ioctl.h>
@@ -46,6 +47,16 @@ static int filter_sd(const char *p)
        return strlen(p) == 8 && !strncmp(p, "/dev/sd", 7);
 }
 
+static void provider_data_free(void *data)
+{
+       sk_disk_free((SkDisk *)data);
+}
+
+static SkDisk *get_disk(struct psensor *s)
+{
+       return (SkDisk *)s->provider_data;
+}
+
 static struct psensor *
 create_sensor(char *id, char *name, SkDisk *disk, int values_max_length)
 {
@@ -60,7 +71,8 @@ create_sensor(char *id, char *name, SkDisk *disk, int values_max_length)
                           t,
                           values_max_length);
 
-       s->disk = disk;
+       s->provider_data = disk;
+       s->provider_data_free_fct = &provider_data_free;
 
        return s;
 }
@@ -158,16 +170,22 @@ void atasmart_psensor_list_update(struct psensor **sensors)
        uint64_t kelvin;
        int ret;
        double c;
+       SkDisk *disk;
+
+       if (!sensors)
+               return;
 
        cur = sensors;
        while (*cur) {
                s = *cur;
                if (!(s->type & SENSOR_TYPE_REMOTE)
                    && s->type & SENSOR_TYPE_ATASMART) {
-                       ret = sk_disk_smart_read_data(s->disk);
+                       disk = get_disk(s);
+
+                       ret = sk_disk_smart_read_data(disk);
 
                        if (!ret) {
-                               ret = sk_disk_smart_get_temperature(s->disk,
+                               ret = sk_disk_smart_get_temperature(disk,
                                                                    &kelvin);
 
                                if (!ret) {
index 39c00c6..68797e1 100644 (file)
@@ -48,7 +48,7 @@ struct hdd_info {
        int temp;
 };
 
-static char *fetch()
+static char *fetch(void)
 {
        int sockfd, output_length;
        ssize_t n = 1;
index baa97ef..6f3845d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #include <sensors/sensors.h>
 #include <sensors/error.h>
 
-#include <psensor.h>
+#include <lmsensor.h>
 
 static int init_done;
 
 static const char *PROVIDER_NAME = "lmsensor";
 
+struct lmsensor_data {
+       const sensors_chip_name *chip;
+
+       const sensors_feature *feature;
+};
+
+static const sensors_chip_name *get_chip_name(struct psensor *s)
+{
+       return ((struct lmsensor_data *)s->provider_data)->chip;
+}
+
+static const sensors_feature *get_feature(struct psensor *s)
+{
+       return ((struct lmsensor_data *)s->provider_data)->feature;
+}
+
+static void lmsensor_data_set(struct psensor *s,
+                             const struct sensors_chip_name *chip,
+                             const struct sensors_feature *feature)
+{
+       struct lmsensor_data *data;
+
+       data = malloc(sizeof(struct lmsensor_data));
+       data->chip = chip;
+       data->feature = feature;
+
+       s->provider_data = data;
+}
+
 static double get_value(const sensors_chip_name *name,
                        const sensors_subfeature *sub)
 {
@@ -58,10 +87,10 @@ static double get_temp_input(struct psensor *sensor)
 
        const sensors_feature *feature;
 
-       chip = sensor->iname;
-       feature = sensor->feature;
+       chip = get_chip_name(sensor);
+       feature = get_feature(sensor);
 
-       sf = sensors_get_subfeature(sensor->iname,
+       sf = sensors_get_subfeature(chip,
                                    feature,
                                    SENSORS_SUBFEATURE_TEMP_INPUT);
        if (sf)
@@ -72,11 +101,14 @@ static double get_temp_input(struct psensor *sensor)
 
 static double get_fan_input(struct psensor *sensor)
 {
-       const sensors_chip_name *chip = sensor->iname;
-       const sensors_feature *feature = sensor->feature;
+       const sensors_chip_name *chip;
+       const sensors_feature *feature;
 
        const sensors_subfeature *sf;
 
+       chip = get_chip_name(sensor);
+       feature = get_feature(sensor);
+
        sf = sensors_get_subfeature(chip,
                                    feature,
                                    SENSORS_SUBFEATURE_FAN_INPUT);
@@ -92,7 +124,7 @@ void lmsensor_psensor_list_update(struct psensor **sensors)
        struct psensor *s;
        double v;
 
-       if (!init_done)
+       if (!init_done || !sensors)
                return;
 
        while (*sensors) {
@@ -124,15 +156,20 @@ lmsensor_psensor_create(const sensors_chip_name *chip,
        int type;
        char *id, *label, *cname;
        struct psensor *psensor;
-       sensors_subfeature_type fault_subfeature;
+       sensors_subfeature_type fault_subfeature, min_subfeature,
+               max_subfeature;
 
        if (sensors_snprintf_chip_name(name, 200, chip) < 0)
                return NULL;
 
        if (feature->type == SENSORS_FEATURE_TEMP) {
                fault_subfeature = SENSORS_SUBFEATURE_TEMP_FAULT;
+               max_subfeature = SENSORS_SUBFEATURE_TEMP_MAX;
+               min_subfeature = SENSORS_SUBFEATURE_TEMP_MIN;
        } else if (feature->type == SENSORS_FEATURE_FAN) {
                fault_subfeature = SENSORS_SUBFEATURE_FAN_FAULT;
+               max_subfeature = SENSORS_SUBFEATURE_FAN_MAX;
+               min_subfeature = SENSORS_SUBFEATURE_FAN_MIN;
        } else {
                log_err(_("%s: Wrong feature type."), PROVIDER_NAME);
                return NULL;
@@ -179,8 +216,15 @@ lmsensor_psensor_create(const sensors_chip_name *chip,
 
        psensor = psensor_create(id, label, cname, type, values_max_length);
 
-       psensor->iname = chip;
-       psensor->feature = feature;
+       sf = sensors_get_subfeature(chip, feature, max_subfeature);
+       if (sf)
+               psensor->max = get_value(chip, sf);
+
+       sf = sensors_get_subfeature(chip, feature, min_subfeature);
+       if (sf)
+               psensor->min = get_value(chip, sf);
+
+       lmsensor_data_set(psensor, chip, feature);
 
        if (feature->type == SENSORS_FEATURE_TEMP
            && (get_temp_input(psensor) == UNKNOWN_DBL_VALUE)) {
@@ -191,7 +235,7 @@ lmsensor_psensor_create(const sensors_chip_name *chip,
        return psensor;
 }
 
-void lmsensor_init()
+static void lmsensor_init(void)
 {
        int err;
 
@@ -237,7 +281,7 @@ void lmsensor_psensor_list_append(struct psensor ***sensors, int vn)
        }
 }
 
-void lmsensor_cleanup()
+void lmsensor_cleanup(void)
 {
        if (init_done)
                sensors_cleanup();
index 341863d..90d58f3 100644 (file)
 #ifndef _PSENSOR_LMSENSOR_H_
 #define _PSENSOR_LMSENSOR_H_
 
-void lmsensor_psensor_list_update(struct psensor **sensors);
+#include <bool.h>
+#include <psensor.h>
 
-void lmsensor_psensor_list_append(struct psensor ***sensors, int values_length);
+#if defined(HAVE_LIBSENSORS) && HAVE_LIBSENSORS
 
-void lmsensor_cleanup();
+static inline bool lmsensor_is_supported(void) { return true; }
+
+void lmsensor_psensor_list_update(struct psensor **);
+void lmsensor_psensor_list_append(struct psensor ***, int);
+void lmsensor_cleanup(void);
+
+#else
+
+static inline bool lmsensor_is_supported(void) { return false; }
+
+static inline void lmsensor_psensor_list_update(struct psensor **s) {}
+static inline void lmsensor_psensor_list_append(struct psensor ***s, int n) {}
+static inline void lmsensor_cleanup(void) {}
+
+#endif
 
 #endif
index c9cdb64..9bf848b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index b77517b..685f97d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #include <NVCtrl/NVCtrl.h>
 #include <NVCtrl/NVCtrlLib.h>
 
+#include <nvidia.h>
 #include <psensor.h>
 
-Display *display;
+static Display *display;
 
 static const char *PROVIDER_NAME = "nvctrl";
 
+static void set_nvidia_id(struct psensor *s, int id)
+{
+       *(int *)s->provider_data = id;
+}
+
+static int get_nvidia_id(struct psensor *s)
+{
+       return *(int *)s->provider_data;
+}
+
 static char *get_product_name(int id, int type)
 {
        char *name;
@@ -219,15 +230,18 @@ static double get_value(int id, int type)
 static void update(struct psensor *sensor)
 {
        double v;
+       int id;
+
+       id = get_nvidia_id(sensor);
 
-       v = get_value(sensor->nvidia_id, sensor->type);
+       v = get_value(id, sensor->type);
 
        if (v == UNKNOWN_DBL_VALUE)
                log_err(_("%s: Failed to retrieve measure of type %x "
                          "for NVIDIA GPU %d"),
                        PROVIDER_NAME,
                        sensor->type,
-                       sensor->nvidia_id);
+                       id);
        psensor_set_current_value(sensor, v);
 }
 
@@ -242,7 +256,8 @@ static char *i2str(int i)
        size_t n;
 
        /* second +1 to avoid issue about the conversion of a double
-        * to a lower int */
+        * to a lower int
+        */
        n = 1 + (ceil(log10(INT_MAX)) + 1) + 1;
 
        str = malloc(n);
@@ -258,6 +273,7 @@ static struct psensor *create_nvidia_sensor(int id, int subtype, int value_len)
        int type;
        size_t n;
        struct psensor *s;
+       double v;
 
        type = SENSOR_TYPE_NVCTRL | subtype;
 
@@ -276,14 +292,22 @@ static struct psensor *create_nvidia_sensor(int id, int subtype, int value_len)
        sprintf(sid, "%s %s", PROVIDER_NAME, name);
 
        s = psensor_create(sid, name, pname, type, value_len);
-       s->nvidia_id = id;
+       s->provider_data = malloc(sizeof(int));
+       set_nvidia_id(s, id);
+
+       if ((type & SENSOR_TYPE_GPU) && (type & SENSOR_TYPE_TEMP)) {
+               v = get_att(NV_CTRL_TARGET_TYPE_GPU,
+                           id,
+                           NV_CTRL_GPU_CORE_THRESHOLD);
+               s->max = v;
+       }
 
        free(strnid);
 
        return s;
 }
 
-static int init()
+static int init(void)
 {
        int evt, err;
 
@@ -372,7 +396,7 @@ void nvidia_psensor_list_append(struct psensor ***ss, int values_len)
        }
 }
 
-void nvidia_cleanup()
+void nvidia_cleanup(void)
 {
        if (display) {
                XCloseDisplay(display);
index a94d72e..cf7f074 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_NVIDIA_H_
 #define _PSENSOR_NVIDIA_H_
 
+#include <bool.h>
 #include <psensor.h>
 
-void nvidia_psensor_list_update(struct psensor **sensors);
 
-void nvidia_psensor_list_append(struct psensor ***sensors, int values_length);
+#if defined(HAVE_NVIDIA) && HAVE_NVIDIA
 
-void nvidia_cleanup();
+static inline bool nvidia_is_supported(void) { return true; }
+
+void nvidia_psensor_list_update(struct psensor **);
+void nvidia_psensor_list_append(struct psensor ***, int);
+void nvidia_cleanup(void);
+
+#else
+
+static inline bool nvidia_is_supported(void) { return false; }
+
+static inline void nvidia_psensor_list_update(struct psensor **s) {}
+static inline void nvidia_psensor_list_append(struct psensor ***s, int n) {}
+static inline void nvidia_cleanup(void) {}
+
+#endif
 
 #endif
diff --git a/src/lib/parray.h b/src/lib/parray.h
new file mode 100644 (file)
index 0000000..4b02c17
--- /dev/null
@@ -0,0 +1,24 @@
+/*
+ *  Copyright (C) 2016 jeanfi@gmail.com
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ *   02110-1301 USA
+ */
+#ifndef _P_ARRAY_H_
+#define _P_ARRAY_H_
+
+#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
+
+#endif
index a25c705..ff0e28d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -66,7 +66,7 @@ static struct psensor *create_mem_free_sensor(int measures_len)
                              measures_len);
 }
 
-static double get_usage()
+static double get_usage(void)
 {
        glibtop_cpu cpu;
        unsigned long int used, dt;
@@ -89,7 +89,7 @@ static double get_usage()
        return cpu_rate;
 }
 
-static double get_mem_free()
+static double get_mem_free(void)
 {
        glibtop_mem mem;
        double v;
@@ -116,7 +116,7 @@ void cpu_usage_sensor_update(struct psensor *s)
                psensor_set_current_value(s, v);
 }
 
-void mem_free_sensor_update(struct psensor *s)
+static void mem_free_sensor_update(struct psensor *s)
 {
        double v;
 
index c7c3968..e24ef50 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_PGTOP2_H_
 #define _PSENSOR_PGTOP2_H_
 
+#include <bool.h>
 #include <psensor.h>
 
-struct psensor *create_cpu_usage_sensor(int measures_len);
+#if defined(HAVE_GTOP) && HAVE_GTOP
+
+static inline bool gtop2_is_supported(void) { return true; }
+
+struct psensor *create_cpu_usage_sensor(int);
 void cpu_usage_sensor_update(struct psensor *);
 
 void gtop2_psensor_list_update(struct psensor **);
+void gtop2_psensor_list_append(struct psensor ***, int);
+
+#else
+
+static inline bool gtop2_is_supported(void) { return false; }
 
-void gtop2_psensor_list_append(struct psensor ***sensors, int values_max_len);
+static inline struct psensor *create_cpu_usage_sensor(int n) { return NULL; }
+static inline void cpu_usage_sensor_update(struct psensor *s) {}
+
+static inline void gtop2_psensor_list_update(struct psensor **s) {}
+static inline void gtop2_psensor_list_append(struct psensor ***s, int n) {}
+
+#endif
 
 #endif
index 217349b..ef0c901 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -30,7 +30,8 @@
 #include <pio.h>
 
 /* Directory separator is \ when cross-compiling for MS Windows
-   systems */
+ * systems
+ */
 #if defined(__MINGW32__)
 #define DIRSEP ('\\')
 #else
@@ -63,7 +64,7 @@ int is_file(const char *path)
        return 0;
 }
 
-char *dir_normalize(const char *dpath)
+static char *dir_normalize(const char *dpath)
 {
        char *npath;
        int n;
index 385ad33..13eb70e 100644 (file)
@@ -1,56 +1,58 @@
 /*
   Copyright (C) 2010-2014 jeanfi@gmail.com
-
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2 of the License, or
   (at your option) any later version.
-
   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
-
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-    02110-1301 USA
-*/
*  Copyright (C) 2010-2016 jeanfi@gmail.com
+ *
*  This program is free software; you can redistribute it and/or modify
*  it under the terms of the GNU General Public License as published by
*  the Free Software Foundation; either version 2 of the License, or
*  (at your option) any later version.
+ *
*  This program is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
+ *
*  You should have received a copy of the GNU General Public License
*  along with this program; if not, write to the Free Software
*  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
*   02110-1301 USA
+ */
 
 #ifndef _P_IO_H
 #define _P_IO_H
 
-#define P_IO_VER 4
+#define P_IO_VER 6
 
 /* Returns '1' if a given 'path' denotates a directory else returns
-   0 */
+ * 0
+ */
 int is_dir(const char *path);
 
 /* Returns '1' if a given 'path' denotates a file else returns
-   0 */
+ * 0
+ */
 int is_file(const char *path);
 
-/*  Returns a normalized path */
+/* Returns a normalized path */
 char *path_normalize(const char *dpath);
 
-/*  Returns the null-terminated entries of a directory */
+/* Returns the null-terminated entries of a directory */
 char **dir_list(const char *dpath, int (*filter) (const char *path));
 void paths_free(char **paths);
 
 char *path_append(const char *dir, const char *path);
 
 /*
  Returns the size of a file.
  Returns '-1' if the size cannot be retrieved or not a file.
-*/
* Returns the size of a file.
* Returns '-1' if the size cannot be retrieved or not a file.
+ */
 long file_get_size(const char *path);
 
 /*
  Returns the content of a file.
  Returns 'NULL' if the file cannot be read or failed to allocate
  enough memory.
  Returns an empty string if the file exists but is empty.
-*/
* Returns the content of a file.
* Returns 'NULL' if the file cannot be read or failed to allocate
* enough memory.
* Returns an empty string if the file exists but is empty.
+ */
 char *file_get_content(const char *path);
 
 enum file_copy_error {
@@ -64,10 +66,10 @@ enum file_copy_error {
 void file_copy_print_error(int code, const char *src, const char *dst);
 
 /*
-  Copy a file.
-
-  Returns '0' if sucessfull, otherwise return the error code.
-*/
* Copy a file.
+ *
* Returns '0' if sucessfull, otherwise return the error code.
+ */
 int file_copy(const char *src, const char *dst);
 
 int dir_rcopy(const char *, const char *);
index 48c6009..2b6ffd1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -43,7 +43,7 @@ void log_open(const char *path)
                log_printf(LOG_ERR, _("Cannot open log file: %s"), path);
 }
 
-void log_close()
+void log_close(void)
 {
        if (!file)
                return;
index 29880e9..2e22975 100644 (file)
@@ -1,35 +1,35 @@
 /*
 Copyright (C) 2010-2014 jeanfi@gmail.com
-
-  This program is free software; you can redistribute it and/or
-  modify it under the terms of the GNU General Public License as
-  published by the Free Software Foundation; either version 2 of the
 License, or (at your option) any later version.
-
-  This program is distributed in the hope that it will be useful, but
-  WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-  General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-  02110-1301 USA
*  Copyright (C) 2010-2016 jeanfi@gmail.com
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
 (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
+ *
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
*   02110-1301 USA
  */
 #ifndef _P_LOG_H_
 #define _P_LOG_H_
 
-#define P_LOG_VER 2
+#define P_LOG_VER 3
 
 enum log_level {
-       LOG_ERR ,
+       LOG_ERR,
        LOG_WARN,
        LOG_INFO,
        LOG_DEBUG
 };
 
 void log_open(const char *path);
-void log_close();
+void log_close(void);
 
 void log_printf(int lvl, const char *fmt, ...);
 void log_debug(const char *fmt, ...);
index ec529bd..371a5d5 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -21,6 +21,7 @@
 
 #include <plog.h>
 #include <pmutex.h>
+#include <string.h>
 
 int pmutex_lock(pthread_mutex_t *m)
 {
@@ -29,7 +30,7 @@ int pmutex_lock(pthread_mutex_t *m)
        ret = pthread_mutex_lock(m);
 
        if (ret)
-               log_err("pmutex_lock: %p %d", m, ret);
+               log_err("pmutex_lock: %p %d %s", m, ret, strerror(ret));
 
        return ret;
 }
index f27c6e5..7b3de9b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index b9da81d..f8c0a83 100644 (file)
@@ -23,6 +23,8 @@
 #include <libintl.h>
 #define _(str) gettext(str)
 
+#include <stdio.h>
+
 #include <hdd.h>
 #include <psensor.h>
 #include <temperature.h>
@@ -40,15 +42,22 @@ struct psensor *psensor_create(char *id,
        psensor->id = id;
        psensor->name = name;
        psensor->chip = chip;
-       psensor->min = UNKNOWN_DBL_VALUE;
-       psensor->max = UNKNOWN_DBL_VALUE;
+       psensor->sess_lowest = UNKNOWN_DBL_VALUE;
+       psensor->sess_highest = UNKNOWN_DBL_VALUE;
+
+       if (type & SENSOR_TYPE_PERCENT) {
+               psensor->min = 0;
+               psensor->max = 100;
+       } else {
+               psensor->min = UNKNOWN_DBL_VALUE;
+               psensor->max = UNKNOWN_DBL_VALUE;
+       }
 
        psensor->type = type;
 
        psensor->values_max_length = values_max_length;
        psensor->measures = measures_dbl_create(values_max_length);
 
-       psensor->alarm_enabled = 0;
        psensor->alarm_high_threshold = 0;
        psensor->alarm_low_threshold = 0;
 
@@ -56,13 +65,6 @@ struct psensor *psensor_create(char *id,
        psensor->cb_alarm_raised_data = NULL;
        psensor->alarm_raised = 0;
 
-       psensor->url = NULL;
-
-       psensor->color = NULL;
-
-       psensor->graph_enabled = 1;
-       psensor->appindicator_enabled = 0;
-
        psensor->provider_data = NULL;
        psensor->provider_data_free_fct = &free;
 
@@ -105,13 +107,8 @@ void psensor_free(struct psensor *s)
        if (s->chip)
                free(s->chip);
 
-       if (s->color)
-               free(s->color);
-
        measures_free(s->measures);
 
-       free(s->url);
-
        if (s->provider_data && s->provider_data_free_fct)
                s->provider_data_free_fct(s->provider_data);
 
@@ -159,11 +156,11 @@ struct psensor **psensor_list_add(struct psensor **sensors,
                                  struct psensor *sensor)
 {
        int size;
+       struct psensor **result;
 
        size = psensor_list_size(sensors);
 
-       struct psensor **result
-           = malloc((size + 1 + 1) * sizeof(struct psensor *));
+       result = malloc((size + 1 + 1) * sizeof(struct psensor *));
 
        if (sensors)
                memcpy(result, sensors, size * sizeof(struct psensor *));
@@ -258,21 +255,19 @@ void psensor_set_current_measure(struct psensor *s, double v, struct timeval tv)
        s->measures[s->values_max_length - 1].value = v;
        s->measures[s->values_max_length - 1].time = tv;
 
-       if (s->min == UNKNOWN_DBL_VALUE || v < s->min)
-               s->min = v;
+       if (s->sess_lowest == UNKNOWN_DBL_VALUE || v < s->sess_lowest)
+               s->sess_lowest = v;
 
-       if (s->max == UNKNOWN_DBL_VALUE || v > s->max)
-               s->max = v;
+       if (s->sess_highest == UNKNOWN_DBL_VALUE || v > s->sess_highest)
+               s->sess_highest = v;
 
-       if (s->alarm_enabled) {
-               if (v > s->alarm_high_threshold || v < s->alarm_low_threshold) {
-                       if (!s->alarm_raised && s->cb_alarm_raised)
-                               s->cb_alarm_raised(s, s->cb_alarm_raised_data);
-
-                       s->alarm_raised = 1;
-               } else {
-                       s->alarm_raised = 0;
+       if (v > s->alarm_high_threshold || v < s->alarm_low_threshold) {
+               if (!s->alarm_raised && s->cb_alarm_raised) {
+                       s->alarm_raised = true;
+                       s->cb_alarm_raised(s, s->cb_alarm_raised_data);
                }
+       } else {
+               s->alarm_raised = false;
        }
 }
 
@@ -287,8 +282,8 @@ struct measure *psensor_get_current_measure(struct psensor *sensor)
 }
 
 /*
-  Returns the minimal value of a given 'type' (SENSOR_TYPE_TEMP or
-  SENSOR_TYPE_FAN)
* Returns the minimal value of a given 'type' (SENSOR_TYPE_TEMP or
* SENSOR_TYPE_FAN)
  */
 static double get_min_value(struct psensor **sensors, int type)
 {
@@ -319,8 +314,8 @@ static double get_min_value(struct psensor **sensors, int type)
 }
 
 /*
-  Returns the maximal value of a given 'type' (SENSOR_TYPE_TEMP or
-  SENSOR_TYPE_FAN)
* Returns the maximal value of a given 'type' (SENSOR_TYPE_TEMP or
* SENSOR_TYPE_FAN)
  */
 double get_max_value(struct psensor **sensors, int type)
 {
@@ -350,28 +345,6 @@ double get_max_value(struct psensor **sensors, int type)
        return m;
 }
 
-double
-psensor_get_max_current_value(struct psensor **sensors, unsigned int type)
-{
-       double m = UNKNOWN_DBL_VALUE;
-       struct psensor **s_cur = sensors;
-
-       while (*s_cur) {
-               struct psensor *s = *s_cur;
-
-               if (s->graph_enabled && (s->type & type)) {
-                       double v = psensor_get_current_value(s);
-
-                       if (m == UNKNOWN_DBL_VALUE || v > m)
-                               m = v;
-               }
-
-               s_cur++;
-       }
-
-       return m;
-}
-
 double get_min_temp(struct psensor **sensors)
 {
        return get_min_value(sensors, SENSOR_TYPE_TEMP);
@@ -459,7 +432,10 @@ const char *psensor_type_to_unit_str(unsigned int type, int use_celsius)
 
 void psensor_log_measures(struct psensor **sensors)
 {
-       if (log_level == LOG_DEBUG)
+       if (log_level == LOG_DEBUG) {
+               if (!sensors)
+                       return;
+
                while (*sensors) {
                        log_debug("Measure: %s %.2f",
                                   (*sensors)->name,
@@ -467,6 +443,7 @@ void psensor_log_measures(struct psensor **sensors)
 
                        sensors++;
                }
+       }
 }
 
 struct psensor **psensor_list_copy(struct psensor **sensors)
@@ -490,26 +467,3 @@ psensor_current_value_to_str(const struct psensor *s, unsigned int use_celsius)
                                    psensor_get_current_value(s),
                                    use_celsius);
 }
-
-struct psensor **psensor_list_filter_graph_enabled(struct psensor **sensors)
-{
-       int n, i;
-       struct psensor **result, **cur, *s;
-
-       if (!sensors)
-               return NULL;
-
-       n = psensor_list_size(sensors);
-       result = malloc((n+1) * sizeof(struct psensor *));
-
-       for (cur = sensors, i = 0; *cur; cur++) {
-               s = *cur;
-
-               if (s->graph_enabled)
-                       result[i++] = s;
-       }
-
-       result[i] = NULL;
-
-       return result;
-}
index cec6d0f..111976b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_PSENSOR_H_
 #define _PSENSOR_PSENSOR_H_
 
-#include <sensors/sensors.h>
+#include <config.h>
 
-#include "config.h"
-#ifdef HAVE_ATASMART
-#include <atasmart.h>
-#endif
-
-#include "bool.h"
-#include "color.h"
+#include <bool.h>
+#include <measure.h>
 #include <plog.h>
-#include "measure.h"
 
 enum psensor_type {
        /* type of sensor values */
@@ -76,63 +70,44 @@ struct psensor {
        /* Name of the chip. */
        char *chip;
 
-       /* lm-sensor */
-       const sensors_chip_name *iname;
-
-       const sensors_feature *feature;
-
        /* Maximum length of 'values' */
        int values_max_length;
 
-       /* Last registered measures of the sensor.  Index 0 for the
-        * oldest measure.  */
+       /*
+        * Last registered measures of the sensor.  Index 0 for the
+        * oldest measure.
+        */
        struct measure *measures;
 
-       /* Color of the sensor used for the graph */
-       struct color *color;
-
-       /* Whether the graph sensor is displayed. */
-       bool graph_enabled;
-
        /* see psensor_type */
        unsigned int type;
 
-       /* The maximum detected value of the sensor */
        double max;
 
-       /* The minimum detected value of the sensor */
        double min;
 
-       /* Whether alarm alert is enabled for this sensor */
-       bool alarm_enabled;
+       /* The highest value detected during this session. */
+       double sess_highest;
+
+       /* The lowest value detected during this session. */
+       double sess_lowest;
 
-       int alarm_high_threshold;
-       int alarm_low_threshold;
+       double alarm_high_threshold;
+       double alarm_low_threshold;
 
        /* Whether an alarm is raised for this sensor */
-       unsigned int alarm_raised;
+       bool alarm_raised;
 
        void (*cb_alarm_raised)(struct psensor *, void *);
        void *cb_alarm_raised_data;
 
-#ifdef HAVE_NVIDIA
-       /* Nvidia id for the nvctrl */
-       int nvidia_id;
-#endif
 #ifdef HAVE_LIBATIADL
        /* AMD id for the aticonfig */
        int amd_id;
 #endif
-#ifdef HAVE_ATASMART
-       SkDisk *disk;
-#endif
 
        void *provider_data;
        void (*provider_data_free_fct)(void *);
-
-       char *url;
-
-       bool appindicator_enabled;
 };
 
 struct psensor *psensor_create(char *id,
@@ -148,8 +123,6 @@ void psensor_free(struct psensor *sensor);
 void psensor_list_free(struct psensor **sensors);
 int psensor_list_size(struct psensor **sensors);
 
-struct psensor **psensor_list_filter_graph_enabled(struct psensor **);
-
 struct psensor *psensor_list_get_by_id(struct psensor **sensors,
                                       const char *id);
 
@@ -161,10 +134,6 @@ double get_max_temp(struct psensor **sensors);
 double get_min_rpm(struct psensor **sensors);
 double get_max_rpm(struct psensor **sensors);
 
-/* Get the maximal current value of all sensors of a given type. */
-double
-psensor_get_max_current_value(struct psensor **sensors, unsigned int type);
-
 /*
  * Converts the value of a sensor to a string.
  *
@@ -179,8 +148,6 @@ char *psensor_measure_to_str(const struct measure *m,
                             unsigned int type,
                             unsigned int use_celsius);
 
-struct psensor **get_all_sensors(int use_libatasmart, int values_max_length);
-
 struct psensor **psensor_list_add(struct psensor **sensors,
                                  struct psensor *sensor);
 
index 2402c1a..14e69e0 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -19,6 +19,8 @@
 #include <stdlib.h>
 #include <string.h>
 
+#include <stdio.h>
+
 #include "psensor_json.h"
 #include "url.h"
 
@@ -78,9 +80,11 @@ static json_object *sensor_to_json(struct psensor *s)
        json_object_object_add(obj,
                               ATT_SENSOR_TYPE, json_object_new_int(s->type));
        json_object_object_add(obj,
-                              ATT_SENSOR_MIN, json_object_new_double(s->min));
+                              ATT_SENSOR_MIN,
+                              json_object_new_double(s->sess_lowest));
        json_object_object_add(obj,
-                              ATT_SENSOR_MAX, json_object_new_double(s->max));
+                              ATT_SENSOR_MAX,
+                              json_object_new_double(s->sess_highest));
        json_object_object_add(obj,
                               ATT_SENSOR_MEASURES,
                               measures_to_json_object(s));
@@ -115,14 +119,16 @@ char *sensors_to_json_string(struct psensor **sensors)
        char *str;
        json_object *obj = json_object_new_array();
 
-       sensors_cur = sensors;
+       if (sensors) {
+               sensors_cur = sensors;
 
-       while (*sensors_cur) {
-               struct psensor *s = *sensors_cur;
+               while (*sensors_cur) {
+                       struct psensor *s = *sensors_cur;
 
-               json_object_array_add(obj, sensor_to_json(s));
+                       json_object_array_add(obj, sensor_to_json(s));
 
-               sensors_cur++;
+                       sensors_cur++;
+               }
        }
 
        str = strdup(json_object_to_json_string(obj));
@@ -153,7 +159,7 @@ struct psensor *psensor_new_from_json(json_object *o,
                           NULL,
                           json_object_get_int(otype) | SENSOR_TYPE_REMOTE,
                           values_max_length);
-       s->url = url;
+       s->provider_data = url;
 
        free(eid);
 
index 6d109a6..14c9794 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index faa0382..05ca1a1 100644 (file)
@@ -1,27 +1,27 @@
 /*
 Copyright (C) 2010-2014 jeanfi@gmail.com
-
-  This program is free software; you can redistribute it and/or
-  modify it under the terms of the GNU General Public License as
-  published by the Free Software Foundation; either version 2 of the
-  License, or (at your option) any later version.
-
-  This program is distributed in the hope that it will be useful, but
-  WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-  General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-  02110-1301 USA
* Copyright (C) 2010-2016 jeanfi@gmail.com
+ *
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
* General Public License for more details.
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA
  */
 #include <stdlib.h>
 #include <string.h>
 
 #include <ptime.h>
 
-const int P_TIME_VER = 2;
+const int P_TIME_VER = 3;
 
 static const int ISO8601_TIME_LENGTH = 19; /* YYYY-MM-DDThh:mm:ss */
 static const int ISO8601_DATE_LENGTH = 10; /* YYYY-MM-DD */
@@ -74,7 +74,7 @@ char *tm_to_ISO8601_time(struct tm *tm)
        return NULL;
 }
 
-char *get_current_ISO8601_time()
+char *get_current_ISO8601_time(void)
 {
        time_t t;
 
index eac7342..1a6f5a5 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index 5a7503e..7111174 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #include <pudisks2.h>
 #include <temperature.h>
 
-const char *PROVIDER_NAME = "udisks2";
+static const char *PROVIDER_NAME = "udisks2";
 
 static GDBusObjectManager *manager;
 
-const time_t SMART_UPDATE_INTERVAL = 30;
+static const time_t SMART_UPDATE_INTERVAL = 30;
 
 struct udisks_data {
        char *path;
        struct timeval last_smart_update;
 };
 
-void udisks_data_free(void *data)
+static void udisks_data_free(void *data)
 {
        struct udisks_data *u;
 
index 1a844bc..1c969d6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 
 #include <psensor.h>
 
-void udisks2_psensor_list_append(struct psensor ***sensors, int values_length);
-void udisks2_psensor_list_update(struct psensor **sensors);
+#if defined(HAVE_LIBUDISKS2) && HAVE_LIBUDISKS2
+
+static inline bool udisks2_is_supported(void) { return true; }
+
+void udisks2_psensor_list_append(struct psensor ***, int);
+void udisks2_psensor_list_update(struct psensor **);
+
+#else
+
+static inline bool udisks2_is_supported(void) { return false; }
+
+static inline void
+udisks2_psensor_list_append(struct psensor ***s, int n) {}
+
+static inline void
+udisks2_psensor_list_update(struct psensor **s) {}
+
+#endif
 
 #endif
index 5b16526..d6c4bc2 100644 (file)
@@ -65,7 +65,7 @@ static char *time_to_str(time_t *t)
        return NULL;
 }
 
-static char *get_default_path()
+static char *get_default_path(void)
 {
        char *home, *path, *dir;
 
@@ -176,10 +176,10 @@ static void *slog_routine(void *data)
                sleep(period);
        }
 
-       pthread_exit(0);
+       pthread_exit(NULL);
 }
 
-void slog_close()
+void slog_close(void)
 {
        if (file) {
                pthread_cancel(thread);
index ea2d6d1..4a39461 100644 (file)
@@ -24,6 +24,6 @@
 #include "psensor.h"
 
 bool slog_activate(const char *, struct psensor **, pthread_mutex_t *, int s);
-void slog_close();
+void slog_close(void);
 
 #endif
index 591b39b..cb3e4c4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index 35820f3..a37d5ca 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index 7840485..5686f5b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 
 #include <gtk/gtk.h>
 
-#include "config.h"
+#include <config.h>
 
-#include "cfg.h"
+#include <amd.h>
+#include <cfg.h>
+#include <graph.h>
 #include <hdd.h>
-#include "psensor.h"
-#include "graph.h"
-#include "ui.h"
-#include "ui_sensorlist.h"
-#include "ui_color.h"
-#include "lmsensor.h"
-#include "notify_cmd.h"
+#include <lmsensor.h>
+#include <notify_cmd.h>
+#include <nvidia.h>
+#include <pgtop2.h>
 #include <pmutex.h>
+#include <psensor.h>
 #include <pudisks2.h>
-#include "slog.h"
-#include "ui_pref.h"
-#include "ui_graph.h"
-#include "ui_status.h"
-
-#ifdef HAVE_UNITY
-#include "ui_unity.h"
-#endif
-
-#ifdef HAVE_NVIDIA
-#include "nvidia.h"
-#endif
-
-#ifdef HAVE_LIBATIADL
-#include "amd.h"
-#endif
-
-#ifdef HAVE_REMOTE_SUPPORT
-#include "rsensor.h"
-#endif
-
-#include "ui_appindicator.h"
-
-#ifdef HAVE_LIBNOTIFY
-#include "ui_notify.h"
-#endif
-
-#ifdef HAVE_GTOP
-#include <pgtop2.h>
-#endif
+#include <rsensor.h>
+#include <slog.h>
+#include <ui.h>
+#include <ui_appindicator.h>
+#include <ui_color.h>
+#include <ui_graph.h>
+#include <ui_notify.h>
+#include <ui_pref.h>
+#include <ui_sensorlist.h>
+#include <ui_status.h>
+#include <ui_unity.h>
 
 static const char *program_name;
 
-static void print_version()
+static void print_version(void)
 {
        printf("psensor %s\n", VERSION);
        printf(_("Copyright (C) %s jeanfi@gmail.com\n"
@@ -86,7 +67,7 @@ static void print_version()
               "2010-2014");
 }
 
-static void print_help()
+static void print_help(void)
 {
        printf(_("Usage: %s [OPTION]...\n"), program_name);
 
@@ -155,25 +136,13 @@ static void *update_measures(void *data)
                update_psensor_values_size(sensors, cfg);
 
                lmsensor_psensor_list_update(sensors);
-#ifdef HAVE_REMOTE_SUPPORT
+
                remote_psensor_list_update(sensors);
-#endif
-#ifdef HAVE_NVIDIA
                nvidia_psensor_list_update(sensors);
-#endif
-#ifdef HAVE_LIBATIADL
                amd_psensor_list_update(sensors);
-#endif
-#ifdef HAVE_LIBUDISKS2
                udisks2_psensor_list_update(sensors);
-#endif
-#ifdef HAVE_GTOP
                gtop2_psensor_list_update(sensors);
-#endif
-#ifdef HAVE_ATASMART
                atasmart_psensor_list_update(sensors);
-#endif
-
                hddtemp_psensor_list_update(sensors);
 
                psensor_log_measures(sensors);
@@ -188,30 +157,30 @@ static void *update_measures(void *data)
 
 static void indicators_update(struct ui_psensor *ui)
 {
-       struct psensor **sensor_cur = ui->sensors;
-       unsigned int attention = 0;
+       struct psensor **ss, *s;
+       bool attention;
 
-       while (*sensor_cur) {
-               struct psensor *s = *sensor_cur;
+       attention = false;
+       ss = ui->sensors;
+       while (*ss) {
+               s = *ss;
 
-               if (s->alarm_enabled && s->alarm_raised) {
-                       attention = 1;
+               if (s->alarm_raised && config_get_sensor_alarm_enabled(s->id)) {
+                       attention = true;
                        break;
                }
 
-               sensor_cur++;
+               ss++;
        }
 
-#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
        if (is_appindicator_supported())
                ui_appindicator_update(ui, attention);
-#endif
 
        if (is_status_supported())
                ui_status_update(ui, attention);
 }
 
-gboolean ui_refresh_thread(gpointer data)
+static gboolean ui_refresh_thread(gpointer data)
 {
        struct config *cfg;
        gboolean ret;
@@ -222,18 +191,14 @@ gboolean ui_refresh_thread(gpointer data)
 
        pmutex_lock(&ui->sensors_mutex);
 
-       graph_update(ui->sensors, ui->w_graph, ui->config, ui->main_window);
+       graph_update(ui->sensors, ui_get_graph(), ui->config, ui->main_window);
 
        ui_sensorlist_update(ui, 0);
 
        if (is_appindicator_supported() || is_status_supported())
                indicators_update(ui);
 
-#ifdef HAVE_UNITY
-       ui_unity_launcher_entry_update(ui->sensors,
-                                      !cfg->unity_launcher_count_disabled,
-                                      cfg->temperature_unit == CELSIUS);
-#endif
+       ui_unity_launcher_entry_update(ui->sensors);
 
        if (ui->graph_update_interval != cfg->graph_update_interval) {
                ui->graph_update_interval = cfg->graph_update_interval;
@@ -251,82 +216,46 @@ gboolean ui_refresh_thread(gpointer data)
 
 static void cb_alarm_raised(struct psensor *sensor, void *data)
 {
-#ifdef HAVE_LIBNOTIFY
-       if (sensor->alarm_enabled)
+       if (config_get_sensor_alarm_enabled(sensor->id)) {
                ui_notify(sensor, (struct ui_psensor *)data);
-#endif
-
-       notify_cmd(sensor);
-}
-
-static void associate_colors(struct psensor **sensors)
-{
-       GdkRGBA rgba;
-       /* copied from the default colors of the gtk color color
-        * chooser. */
-       const char *default_colors[27] = {
-               "#ef2929",  /* Scarlet Red */
-               "#fcaf3e",  /* Orange */
-               "#fce94f",  /* Butter */
-               "#8ae234",  /* Chameleon */
-               "#729fcf",  /* Sky Blue */
-               "#ad7fa8",  /* Plum */
-               "#e9b96e",  /* Chocolate */
-               "#888a85",  /* Aluminum 1 */
-               "#eeeeec",  /* Aluminum 2 */
-               "#cc0000",
-               "#f57900",
-               "#edd400",
-               "#73d216",
-               "#3465a4",
-               "#75507b",
-               "#c17d11",
-               "#555753",
-               "#d3d7cf",
-               "#a40000",
-               "#ce5c00",
-               "#c4a000",
-               "#4e9a06",
-               "#204a87",
-               "#5c3566",
-               "#8f5902",
-               "#2e3436",
-               "#babdb6"
-       };
-       int i;
-       struct psensor **cur;
-       struct color c;
-
-       for (cur = sensors, i = 0; *cur; cur++, i++) {
-               gdk_rgba_parse(&rgba, default_colors[i % 27]);
-               c.red = rgba.red;
-               c.green = rgba.green;
-               c.blue = rgba.blue;
-
-               (*cur)->color = config_get_sensor_color((*cur)->id, &c);
+               notify_cmd(sensor);
        }
 }
 
 static void
 associate_cb_alarm_raised(struct psensor **sensors, struct ui_psensor *ui)
 {
-       struct psensor **sensor_cur = sensors;
+       bool ret;
+       struct psensor *s;
+       double high_temp;
 
-       while (*sensor_cur) {
-               struct psensor *s = *sensor_cur;
+       high_temp = config_get_default_high_threshold_temperature();
+
+       while (*sensors) {
+               s = *sensors;
 
                s->cb_alarm_raised = cb_alarm_raised;
                s->cb_alarm_raised_data = ui;
 
-               s->alarm_high_threshold
-                       = config_get_sensor_alarm_high_threshold(s->id);
-               s->alarm_low_threshold
-                       = config_get_sensor_alarm_low_threshold(s->id);
+               ret = config_get_sensor_alarm_high_threshold
+                       (s->id, &s->alarm_high_threshold);
+
+               if (!ret) {
+                       if (s->max == UNKNOWN_DBL_VALUE) {
+                               if (s->type & SENSOR_TYPE_TEMP)
+                                       s->alarm_high_threshold = high_temp;
+                       } else {
+                               s->alarm_high_threshold = s->max;
+                       }
+               }
 
-               s->alarm_enabled
-                           = config_get_sensor_alarm_enabled(s->id);
+               ret = config_get_sensor_alarm_low_threshold
+                       (s->id, &s->alarm_low_threshold);
 
-               sensor_cur++;
+               if (!ret && s->min != UNKNOWN_DBL_VALUE)
+                       s->alarm_low_threshold = s->min;
+
+               sensors++;
        }
 }
 
@@ -338,8 +267,6 @@ static void associate_preferences(struct psensor **sensors)
                char *n;
                struct psensor *s = *sensor_cur;
 
-               s->graph_enabled = config_is_sensor_graph_enabled(s->id);
-
                n = config_get_sensor_name(s->id);
 
                if (n) {
@@ -347,13 +274,11 @@ static void associate_preferences(struct psensor **sensors)
                        s->name = n;
                }
 
-               s->appindicator_enabled = config_is_appindicator_enabled(s->id);
-
                sensor_cur++;
        }
 }
 
-static void log_init()
+static void log_init(void)
 {
        const char *dir;
        char *path;
@@ -372,12 +297,12 @@ static void log_init()
 }
 
 static struct option long_options[] = {
-       {"version", no_argument, 0, 'v'},
-       {"help", no_argument, 0, 'h'},
-       {"url", required_argument, 0, 'u'},
-       {"debug", required_argument, 0, 'd'},
-       {"new-instance", no_argument, 0, 'n'},
-       {0, 0, 0, 0}
+       {"version", no_argument, NULL, 'v'},
+       {"help", no_argument, NULL, 'h'},
+       {"url", required_argument, NULL, 'u'},
+       {"debug", required_argument, NULL, 'd'},
+       {"new-instance", no_argument, NULL, 'n'},
+       {NULL, 0, NULL, 0}
 };
 
 static gboolean initial_window_show(gpointer data)
@@ -402,7 +327,7 @@ static gboolean initial_window_show(gpointer data)
        return FALSE;
 }
 
-static void log_glib_info()
+static void log_glib_info(void)
 {
        log_debug("Compiled with GLib %d.%d.%d",
                  GLIB_MAJOR_VERSION,
@@ -430,22 +355,14 @@ static void cleanup(struct ui_psensor *ui)
 
        log_debug("Cleanup...");
 
-#ifdef HAVE_NVIDIA
        nvidia_cleanup();
-#endif
-#ifdef HAVE_LIBATIADL
        amd_cleanup();
-#endif
-#ifdef HAVE_REMOTE_SUPPORT
        rsensor_cleanup();
-#endif
 
        psensor_list_free(ui->sensors);
        ui->sensors = NULL;
 
-#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
        ui_appindicator_cleanup();
-#endif
 
        ui_status_cleanup();
 
@@ -466,14 +383,14 @@ static struct psensor **create_sensors_list(const char *url)
        struct psensor **sensors;
 
        if (url) {
-#ifdef HAVE_REMOTE_SUPPORT
-               rsensor_init();
-               sensors = get_remote_sensors(url, 600);
-#else
-               log_err(_("Psensor has not been compiled with remote "
-                         "sensor support."));
-               exit(EXIT_FAILURE);
-#endif
+               if (rsensor_is_supported()) {
+                       rsensor_init();
+                       sensors = get_remote_sensors(url, 600);
+               } else {
+                       log_err(_("Psensor has not been compiled with remote "
+                                 "sensor support."));
+                       exit(EXIT_FAILURE);
+               }
        } else {
                sensors = malloc(sizeof(struct psensor *));
                *sensors = NULL;
@@ -484,31 +401,23 @@ static struct psensor **create_sensors_list(const char *url)
                if (config_is_hddtemp_enabled())
                        hddtemp_psensor_list_append(&sensors, 600);
 
-#ifdef HAVE_ATASMART
                if (config_is_libatasmart_enabled())
                        atasmart_psensor_list_append(&sensors, 600);
-#endif
 
-#ifdef HAVE_NVIDIA
                if (config_is_nvctrl_enabled())
                        nvidia_psensor_list_append(&sensors, 600);
-#endif
-#ifdef HAVE_LIBATIADL
+
                if (config_is_atiadlsdk_enabled())
                        amd_psensor_list_append(&sensors, 600);
-#endif
-#ifdef HAVE_GTOP
+
                if (config_is_gtop2_enabled())
                        gtop2_psensor_list_append(&sensors, 600);
-#endif
-#ifdef HAVE_LIBUDISKS2
+
                if (config_is_udisks2_enabled())
                        udisks2_psensor_list_append(&sensors, 600);
-#endif
        }
 
        associate_preferences(sensors);
-       associate_colors(sensors);
 
        return sensors;
 }
@@ -589,17 +498,6 @@ int main(int argc, char **argv)
        g_thread_init(NULL);
 #endif
 
-#ifdef HAVE_APPINDICATOR_029
-       /* gdk_thread_enter/leave only used to workaround mutex bug
-        * of appindicator < 0.2.9, so do not call gdk_threads_init
-        * if useless. Calling this function leads to
-        * crash "Attempt to unlock mutex that was not locked" with
-        * GLib 2.41.2 (new checking) probably due to bugs in GTK
-        * itself.
-        */
-       gdk_threads_init();
-#endif
-
        gtk_init(NULL, NULL);
 
        pmutex_init(&ui.sensors_mutex);
@@ -615,10 +513,8 @@ int main(int argc, char **argv)
                              &ui.sensors_mutex,
                              config_get_slog_interval());
 
-#if !defined(HAVE_APPINDICATOR) && !defined(HAVE_APPINDICATOR_029)
        ui_status_init(&ui);
        ui_status_set_visible(1);
-#endif
 
        /* main window */
        ui_window_create(&ui);
@@ -634,9 +530,8 @@ int main(int argc, char **argv)
 
        g_timeout_add(1000 * ui.graph_update_interval, ui_refresh_thread, &ui);
 
-#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
        ui_appindicator_init(&ui);
-#endif
+       ui_unity_init();
 
        gdk_notify_startup_complete();
 
@@ -651,8 +546,6 @@ int main(int argc, char **argv)
        else
                initial_window_show(&ui);
 
-       log_debug("translators: %s\n", _("translator-credits"));
-
        /* main loop */
        gtk_main();
 
index 793903a..89f8b50 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -17,6 +17,7 @@
  * 02110-1301 USA
  */
 
+#include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 
index df8fea5..6ad5782 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index 6705aec..9997814 100644 (file)
@@ -1,5 +1,5 @@
-.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.3.
-.TH PSENSOR "1" "June 2016" "psensor 1.1.5" "User Commands"
+.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.46.4.
+.TH PSENSOR "1" "January 2017" "psensor 1.2.0" "User Commands"
 .SH NAME
 psensor \- Temperature monitoring application
 .SH SYNOPSIS
index 8439c1b..671a998 100644 (file)
       <description>Update interface of the sensor
       values.</description>
     </key>
+    <key name="default-high-threshold-temperature" type="d">
+      <default>60</default>
+      <summary>Default high threshold for the thermal
+      sensors.</summary>
+      <description>Default high threshold for the thermal sensors
+      (celsius).</description>
+    </key>
+    <key name="default-sensor-alarm-enabled" type="b">
+      <default>false</default>
+      <summary>Whether sensor alarm is enabled by default.</summary>
+      <description>Whether sensor alarm is enabled by
+      default.</description>
+    </key>
     <!-- sensors information providers -->
     <key name="provider-lmsensors-enabled" type="b">
       <default>true</default>
index 14c3021..a43d075 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 
 #include <pio.h>
 #include <plog.h>
+#include <pxdg.h>
 
 static const char *KEY_GNOME_AUTOSTART = "X-GNOME-Autostart-enabled";
 
-static char *get_user_autostart_dir()
+static char *get_user_autostart_dir(void)
 {
        const char *xdg_cfg_dir;
 
@@ -41,7 +42,7 @@ static char *get_user_autostart_dir()
        return path_append(xdg_cfg_dir, "autostart");
 }
 
-static char *get_user_desktop_file()
+static char *get_user_desktop_file(void)
 {
        char *dir, *path;
 
@@ -53,7 +54,7 @@ static char *get_user_desktop_file()
        return path;
 }
 
-static const char *get_desktop_file()
+static const char *get_desktop_file(void)
 {
        return DATADIR"/applications/"PSENSOR_DESKTOP_FILE;
 }
@@ -98,7 +99,7 @@ static int is_user_desktop_autostarted(GKeyFile *f)
                                          NULL);
 }
 
-int pxdg_is_autostarted()
+int pxdg_is_autostarted(void)
 {
        char *user_desktop;
        unsigned int ret;
@@ -179,7 +180,8 @@ void pxdg_set_autostart(unsigned int enable)
                enable_gnome_autostart(user_desktop);
        } else {
                /* because X-GNOME-Autostart-enabled does not turn off
-                * autostart on all Desktop Envs. */
+                * autostart on all Desktop Envs.
+                */
                remove(user_desktop);
        }
 
index 78aa571..98fd914 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -25,7 +25,7 @@
  *  - 0 if psensor is not currently launch during session startup.
  *  - -1 if it cannot be determined.
  */
-int pxdg_is_autostarted();
+int pxdg_is_autostarted(void);
 void pxdg_set_autostart(unsigned int);
 
 #endif
index 8a5aa66..f42ab76 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 
 #include <curl/curl.h>
 
-#include "psensor_json.h"
-#include "rsensor.h"
-#include "server/server.h"
-#include "url.h"
+#include <psensor_json.h>
+#include <rsensor.h>
+#include <server/server.h>
+#include <url.h>
 
 struct ucontent {
        char *data;
@@ -38,6 +38,13 @@ struct ucontent {
 
 static CURL *curl;
 
+static const char *PROVIDER_NAME = "rsensor";
+
+static const char *get_url(struct psensor *s)
+{
+       return (char *)s->provider_data;
+}
+
 static size_t cbk_curl(void *buffer, size_t size, size_t nmemb, void *userp)
 {
        size_t realsize;
@@ -72,12 +79,12 @@ static char *create_api_1_1_sensors_url(const char *base_url)
        return ret;
 }
 
-void rsensor_init()
+void rsensor_init(void)
 {
        curl = curl_easy_init();
 }
 
-void rsensor_cleanup()
+void rsensor_cleanup(void)
 {
        curl_easy_cleanup(curl);
 }
@@ -100,11 +107,12 @@ static json_object *get_json_object(const char *url)
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, cbk_curl);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&chunk);
 
-       log_debug("HTTP request %s", url);
+       log_fct("%s: HTTP request %s", PROVIDER_NAME, url);
+
        if (curl_easy_perform(curl) == CURLE_OK)
                obj = json_tokener_parse(chunk.data);
        else
-               log_printf(LOG_ERR, _("Fail to connect to: %s"), url);
+               log_err(_("%s: Fail to connect to: %s"), PROVIDER_NAME, url);
 
        free(chunk.data);
 
@@ -141,7 +149,7 @@ struct psensor **get_remote_sensors(const char *server_url,
 
                json_object_put(obj);
        } else {
-               log_printf(LOG_ERR, _("Invalid content: %s"), url);
+               log_err(_("%s: Invalid content: %s"), PROVIDER_NAME, url);
        }
 
        free(url);
@@ -154,11 +162,11 @@ struct psensor **get_remote_sensors(const char *server_url,
        return sensors;
 }
 
-void remote_psensor_update(struct psensor *s)
+static void remote_psensor_update(struct psensor *s)
 {
        json_object *obj;
 
-       obj = get_json_object(s->url);
+       obj = get_json_object(get_url(s));
 
        if (obj && !is_error(obj)) {
                json_object *om;
@@ -181,7 +189,7 @@ void remote_psensor_update(struct psensor *s)
 
                json_object_put(obj);
        } else {
-               log_printf(LOG_ERR, _("Invalid JSON: %s"), s->url);
+               log_err(_("%s: Invalid JSON: %s"), PROVIDER_NAME, get_url(s));
        }
 
 }
index 8269479..3178e3f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_RSENSOR_H_
 #define _PSENSOR_RSENSOR_H_
 
-#include "psensor.h"
+#include <psensor.h>
 
-struct psensor **get_remote_sensors(const char *server_url,
-                                   int values_max_length);
+#if defined(HAVE_REMOTE_SUPPORT) && HAVE_REMOTE_SUPPORT
 
-void remote_psensor_list_update(struct psensor **sensors);
+static inline bool rsensor_is_supported(void) { return true; }
 
-void rsensor_init();
-void rsensor_cleanup();
+struct psensor **get_remote_sensors(const char *, int);
+void remote_psensor_list_update(struct psensor **);
+void rsensor_init(void);
+void rsensor_cleanup(void);
+
+#else
+
+static inline bool rsensor_is_supported(void) { return false; }
+
+static inline struct psensor **
+get_remote_sensors(const char *url, int n) { return NULL; }
+static inline void remote_psensor_list_update(struct psensor **s) {}
+static inline void rsensor_init(void) {}
+static inline void rsensor_cleanup(void) {}
+
+#endif
 
 #endif
index 0697e58..2812001 100644 (file)
@@ -29,8 +29,11 @@ AM_CPPFLAGS += $(ATASMART_CFLAGS)
 LIBS += $(ATASMART_LIBS)
 endif
 
-dist_man_MANS =  psensor-server.1
-EXTRA_DIST = description.txt
+if HELP2MAN
 psensor-server.1: server.c $(top_srcdir)/configure.ac
        $(MAKE) $(AM_MAKEFLAGS) psensor-server$(EXEEXT)
        help2man --include=description.txt -N --name="Temperature and system monitoring Web server" --output=psensor-server.1 ./psensor-server$(EXEEXT)
+endif
+
+dist_man_MANS =  psensor-server.1
+EXTRA_DIST = description.txt
index 1dbe6b3..4e3f55a 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -95,11 +85,16 @@ bin_PROGRAMS = psensor-server$(EXEEXT)
 @ATASMART_TRUE@am__append_4 = $(ATASMART_CFLAGS)
 @ATASMART_TRUE@am__append_5 = $(ATASMART_LIBS)
 subdir = src/server
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/depcomp $(dist_man_MANS)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -196,8 +191,6 @@ am__define_uniq_tagged_files = \
   done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
-am__DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.in \
-       $(top_srcdir)/depcomp
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -227,7 +220,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -288,7 +280,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -303,7 +294,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -349,7 +339,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -382,6 +371,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/server/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu src/server/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -718,11 +708,10 @@ uninstall-man: uninstall-man1
        ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
-.PRECIOUS: Makefile
 
-psensor-server.1: server.c $(top_srcdir)/configure.ac
-       $(MAKE) $(AM_MAKEFLAGS) psensor-server$(EXEEXT)
-       help2man --include=description.txt -N --name="Temperature and system monitoring Web server" --output=psensor-server.1 ./psensor-server$(EXEEXT)
+@HELP2MAN_TRUE@psensor-server.1: server.c $(top_srcdir)/configure.ac
+@HELP2MAN_TRUE@        $(MAKE) $(AM_MAKEFLAGS) psensor-server$(EXEEXT)
+@HELP2MAN_TRUE@        help2man --include=description.txt -N --name="Temperature and system monitoring Web server" --output=psensor-server.1 ./psensor-server$(EXEEXT)
 
 # 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.
index 39b88c6..a1b6e6d 100644 (file)
@@ -1,5 +1,5 @@
-.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.3.
-.TH PSENSOR-SERVER "1" "June 2016" "psensor-server 1.1.5" "User Commands"
+.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.46.4.
+.TH PSENSOR-SERVER "1" "January 2017" "psensor-server 1.2.0" "User Commands"
 .SH NAME
 psensor-server \- Temperature and system monitoring Web server
 .SH SYNOPSIS
index d868d86..fb6b63c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -65,15 +65,15 @@ static const int DEFAULT_PORT = 3131;
 "Page not found - Go to <a href='/'>Main page</a></p></body>"))
 
 static struct option long_options[] = {
-       {"version", no_argument, 0, 'v'},
-       {"help", no_argument, 0, 'h'},
-       {"port", required_argument, 0, 'p'},
-       {"wdir", required_argument, 0, 'w'},
-       {"debug", required_argument, 0, 'd'},
-       {"log-file", required_argument, 0, 'l'},
-       {"sensor-log-file", required_argument, 0, 0},
-       {"sensor-log-interval", required_argument, 0, 0},
-       {0, 0, 0, 0}
+       {"version", no_argument, NULL, 'v'},
+       {"help", no_argument, NULL, 'h'},
+       {"port", required_argument, NULL, 'p'},
+       {"wdir", required_argument, NULL, 'w'},
+       {"debug", required_argument, NULL, 'd'},
+       {"log-file", required_argument, NULL, 'l'},
+       {"sensor-log-file", required_argument, NULL, 0},
+       {"sensor-log-interval", required_argument, NULL, 0},
+       {NULL, 0, NULL, 0}
 };
 
 static struct server_data server_data;
@@ -82,7 +82,7 @@ static pthread_mutex_t mutex;
 
 static int server_stop_requested;
 
-static void print_version()
+static void print_version(void)
 {
        printf("psensor-server %s\n", VERSION);
        printf(_("Copyright (C) %s jeanfi@gmail.com\n"
@@ -93,7 +93,7 @@ static void print_version()
               "2010-2012");
 }
 
-static void print_help()
+static void print_help(void)
 {
        printf(_("Usage: %s [OPTION]...\n"), program_name);
 
@@ -244,28 +244,52 @@ static struct MHD_Response *create_response_file(const char *nurl,
        return NULL;
 }
 
+static int is_access_allowed(char *path)
+{
+       char *rpath;
+       int n, ret;
+
+       rpath = realpath(path, NULL);
+       if (rpath) {
+               n = strlen(server_data.www_dir);
+               if (!strncmp(server_data.www_dir, rpath, n)
+                   || !strcmp(rpath,
+                              "/usr/share/javascript/jquery/jquery.js")) {
+                       ret = 1;
+               } else {
+                       ret = 0;
+
+                       log_err(_("Resource access refused %s real path is %s"),
+                               path,
+                               rpath);
+               }
+
+               free(rpath);
+       } else {
+               log_err(_("Cannot get real path of %s"), path);
+
+               ret = 0;
+       }
+
+       return ret;
+}
+
 static struct MHD_Response *
 create_response(const char *nurl, const char *method, unsigned int *rp_code)
 {
-       char *page, *fpath, *rpath;
+       char *page, *fpath;
        struct MHD_Response *resp = NULL;
-       int n;
 
        if (!strncmp(nurl, URL_BASE_API_1_1, strlen(URL_BASE_API_1_1))) {
                resp = create_response_api(nurl, method, rp_code);
        } else {
                fpath = get_path(nurl, server_data.www_dir);
 
-               rpath = realpath(fpath, NULL);
-               if (rpath) {
-                       n = strlen(server_data.www_dir);
-                       if (!strncmp(server_data.www_dir, rpath, n))
-                               resp = create_response_file(nurl,
-                                                           method,
-                                                           rp_code,
-                                                           fpath);
-                       free(rpath);
-               }
+               if (is_access_allowed(fpath))
+                       resp = create_response_file(nurl,
+                                                   method,
+                                                   rp_code,
+                                                   fpath);
 
                free(fpath);
        }
@@ -287,7 +311,8 @@ static int cbk_http_request(void *cls,
                            const char *method,
                            const char *version,
                            const char *upload_data,
-                           size_t *upload_data_size, void **ptr)
+                           size_t *upload_data_size,
+                           void **ptr)
 {
        static int dummy;
        struct MHD_Response *response;
@@ -300,7 +325,8 @@ static int cbk_http_request(void *cls,
 
        if (&dummy != *ptr) {
                /* The first time only the headers are valid, do not
-                  respond in the first round... */
+                * respond in the first round...
+                */
                *ptr = &dummy;
                return MHD_YES;
        }
@@ -422,7 +448,7 @@ int main(int argc, char *argv[])
        server_data.cpu_usage = create_cpu_usage_sensor(600);
 #endif
 
-       if (!*server_data.sensors)
+       if (!server_data.sensors || !*server_data.sensors)
                log_err(_("No sensors detected."));
 
        d = MHD_start_daemon(MHD_USE_THREAD_PER_CONNECTION,
@@ -481,7 +507,7 @@ int main(int argc, char *argv[])
        psensor_free(server_data.cpu_usage);
 #endif
        free(server_data.www_dir);
-       sensors_cleanup();
+       lmsensor_cleanup();
 
 #ifdef HAVE_GTOP
        sysinfo_cleanup();
index 2ac33ee..7226979 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index a278a3a..9c371d5 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -67,7 +67,7 @@ void sysinfo_update(struct psysinfo *info)
                info->interfaces = glibtop_get_netlist(&buf);
 }
 
-void sysinfo_cleanup()
+void sysinfo_cleanup(void)
 {
        if (cpu)
                g_free(cpu);
index 3330eb7..1d0537a 100644 (file)
@@ -37,7 +37,7 @@ struct psysinfo {
 };
 
 void sysinfo_update(struct psysinfo *sysinfo);
-void sysinfo_cleanup();
+void sysinfo_cleanup(void);
 
 char *sysinfo_to_json_string(const struct psysinfo *sysinfo);
 
index dcb3ea0..041e8d8 100644 (file)
--- a/src/ui.c
+++ b/src/ui.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
  */
 #include <stdlib.h>
 
-#include "cfg.h"
-#include "slog.h"
-#include "ui.h"
-#include "ui_graph.h"
-#include "ui_pref.h"
-#include "ui_sensorpref.h"
-#include "ui_sensorlist.h"
-#include "ui_status.h"
-#include "ui_appindicator.h"
+#include <cfg.h>
+#include <slog.h>
+#include <ui.h>
+#include <ui_appindicator.h>
+#include <ui_graph.h>
+#include <ui_pref.h>
+#include <ui_sensorlist.h>
+#include <ui_sensorpref.h>
+#include <ui_status.h>
+
+static GtkWidget *w_sensors_scrolled_tree;
+static GtkWidget *w_graph;
+static GtkContainer *w_sensor_box;
+static GtkContainer *w_main_box;
+
+static void update_layout(void)
+{
+       enum sensorlist_position sensorlist_pos;
+
+       g_object_ref(w_sensors_scrolled_tree);
+       g_object_ref(w_graph);
+
+       gtk_container_remove(w_sensor_box,
+                            w_sensors_scrolled_tree);
+
+       gtk_container_remove(w_sensor_box, w_graph);
+
+       gtk_container_remove(w_main_box, GTK_WIDGET(w_sensor_box));
+
+       sensorlist_pos = config_get_sensorlist_position();
+       if (sensorlist_pos == SENSORLIST_POSITION_RIGHT
+           || sensorlist_pos == SENSORLIST_POSITION_LEFT)
+               w_sensor_box
+                       = GTK_CONTAINER(gtk_paned_new
+                                       (GTK_ORIENTATION_HORIZONTAL));
+       else
+               w_sensor_box
+                       = GTK_CONTAINER(gtk_paned_new
+                                       (GTK_ORIENTATION_VERTICAL));
+
+       gtk_box_pack_end(GTK_BOX(w_main_box),
+                        GTK_WIDGET(w_sensor_box), TRUE, TRUE, 2);
+
+       if (sensorlist_pos == SENSORLIST_POSITION_RIGHT
+           || sensorlist_pos == SENSORLIST_POSITION_BOTTOM) {
+               gtk_paned_pack1(GTK_PANED(w_sensor_box), w_graph, TRUE, TRUE);
+               gtk_paned_pack2(GTK_PANED(w_sensor_box),
+                               w_sensors_scrolled_tree,
+                               FALSE,
+                               TRUE);
+       } else {
+               gtk_paned_pack1(GTK_PANED(w_sensor_box),
+                               w_sensors_scrolled_tree,
+                               FALSE,
+                               TRUE);
+               gtk_paned_pack2(GTK_PANED(w_sensor_box), w_graph, TRUE, TRUE);
+       }
+
+       g_object_unref(w_sensors_scrolled_tree);
+       g_object_unref(w_graph);
+
+       gtk_widget_show_all(GTK_WIDGET(w_sensor_box));
+}
+
+static void set_decoration(GtkWindow *win)
+{
+       gtk_window_set_decorated(win, config_is_window_decoration_enabled());
+}
+
+static void set_keep_below(GtkWindow *win)
+{
+       gtk_window_set_keep_below(win, config_is_window_keep_below_enabled());
+}
+
+static void set_menu_bar_enabled(GtkWidget *bar)
+{
+       if (config_is_menu_bar_enabled())
+               gtk_widget_show(bar);
+       else
+               gtk_widget_hide(bar);
+}
+
+static void
+decoration_changed_cbk(GSettings *settings, gchar *key, gpointer data)
+{
+       set_decoration(GTK_WINDOW(data));
+}
+
+static void
+keep_below_changed_cbk(GSettings *settings, gchar *key, gpointer data)
+{
+       set_keep_below(GTK_WINDOW(data));
+}
+
+static void
+menu_bar_changed_cbk(GSettings *settings, gchar *key, gpointer data)
+{
+       set_menu_bar_enabled(GTK_WIDGET(data));
+}
+
+static void
+sensorlist_position_changed_cbk(GSettings *settings, gchar *key, gpointer data)
+{
+       update_layout();
+}
+
+static void connect_cbks(GtkWindow *win, GtkWidget *menu_bar)
+{
+       log_fct_enter();
+
+       g_signal_connect_after(config_get_GSettings(),
+                              "changed::interface-window-decoration-disabled",
+                              G_CALLBACK(decoration_changed_cbk),
+                              win);
+
+       g_signal_connect_after(config_get_GSettings(),
+                              "changed::interface-window-keep-below-enabled",
+                              G_CALLBACK(keep_below_changed_cbk),
+                              win);
+
+       g_signal_connect_after(config_get_GSettings(),
+                              "changed::interface-menu-bar-disabled",
+                              G_CALLBACK(menu_bar_changed_cbk),
+                              menu_bar);
+
+       g_signal_connect_after(config_get_GSettings(),
+                              "changed::interface-sensorlist-position",
+                              G_CALLBACK(sensorlist_position_changed_cbk),
+                              menu_bar);
+
+
+       log_fct_exit();
+}
 
 static void save_window_pos(struct ui_psensor *ui)
 {
@@ -53,7 +177,7 @@ static void save_window_pos(struct ui_psensor *ui)
                log_debug("Window size: %d %d", cfg->window_w, cfg->window_h);
 
                cfg->window_divider_pos
-                       = gtk_paned_get_position(GTK_PANED(ui->sensor_box));
+                       = gtk_paned_get_position(GTK_PANED(w_sensor_box));
 
                config_save(cfg);
        }
@@ -76,18 +200,20 @@ on_delete_event_cb(GtkWidget *widget, GdkEvent *event, gpointer data)
        return TRUE;
 }
 
-void ui_show_about_dialog()
+void ui_show_about_dialog(GtkWindow *parent)
 {
        static const char *const authors[] = { "jeanfi@gmail.com", NULL };
 
+       log_fct("parent=%p", parent);
+
        gtk_show_about_dialog
-               (NULL,
+               (parent,
                 "authors", authors,
                 "comments",
                 _("Psensor is a GTK+ application for monitoring hardware "
                   "sensors"),
                 "copyright",
-                _("Copyright(c) 2010-2014 jeanfi@gmail.com"),
+                _("Copyright(c) 2010-2016 jeanfi@gmail.com"),
 #if GTK_CHECK_VERSION(3, 12, 0)
                 "license-type", GTK_LICENSE_GPL_2_0,
 #endif
@@ -101,9 +227,21 @@ void ui_show_about_dialog()
                 NULL);
 }
 
-void ui_cb_about(GtkMenuItem *mi, gpointer data)
+void ui_cb_about(GtkAction *a, gpointer data)
 {
-       ui_show_about_dialog();
+       struct ui_psensor *ui;
+       GtkWidget *parent;
+
+       ui = (struct ui_psensor *)data;
+
+       log_fct("ui=%p", ui);
+
+       if (ui)
+               parent = ui->main_window;
+       else
+               parent = NULL;
+
+       ui_show_about_dialog(GTK_WINDOW(parent));
 }
 
 void ui_cb_menu_quit(GtkMenuItem *mi, gpointer data)
@@ -179,7 +317,7 @@ static void slog_enabled_cbk(void *data)
 
 void ui_window_create(struct ui_psensor *ui)
 {
-       GtkWidget *window;
+       GtkWidget *window, *menu_bar;
        GdkPixbuf *icon;
        GtkIconTheme *icon_theme;
        struct config *cfg;
@@ -187,6 +325,8 @@ void ui_window_create(struct ui_psensor *ui)
        GtkBuilder *builder;
        GError *error;
 
+       log_fct("ui=%p", ui);
+
        builder = gtk_builder_new();
 
        error = NULL;
@@ -225,50 +365,42 @@ void ui_window_create(struct ui_psensor *ui)
        g_signal_connect(window,
                         "delete_event", G_CALLBACK(on_delete_event_cb), ui);
 
-       gtk_window_set_decorated(GTK_WINDOW(window),
-                                cfg->window_decoration_enabled);
+       set_decoration(GTK_WINDOW(window));
+       set_keep_below(GTK_WINDOW(window));
 
-       gtk_window_set_keep_below(GTK_WINDOW(window),
-                                 cfg->window_keep_below_enabled);
-
-       ui->menu_bar = GTK_WIDGET(gtk_builder_get_object(builder, "menu_bar"));
-       ui->main_box = GTK_WIDGET(gtk_builder_get_object(builder, "main_box"));
+       menu_bar = GTK_WIDGET(gtk_builder_get_object(builder, "menu_bar"));
+       w_main_box = GTK_CONTAINER(gtk_builder_get_object(builder, "main_box"));
        ui->popup_menu = GTK_WIDGET(gtk_builder_get_object(builder,
                                                           "popup_menu"));
        g_object_ref(G_OBJECT(ui->popup_menu));
        ui->main_window = window;
-       ui->w_graph = GTK_WIDGET(gtk_builder_get_object(builder,
-                                                       "graph"));
+       w_graph = GTK_WIDGET(gtk_builder_get_object(builder, "graph"));
        ui_graph_create(ui);
 
-       ui->sensor_box = GTK_PANED(gtk_builder_get_object(builder,
-                                                         "sensor_box"));
+       w_sensor_box = GTK_CONTAINER(gtk_builder_get_object(builder,
+                                                           "sensor_box"));
        ui->sensors_store = GTK_LIST_STORE(gtk_builder_get_object
                                           (builder, "sensors_store"));
        ui->sensors_tree = GTK_TREE_VIEW(gtk_builder_get_object
                                         (builder, "sensors_tree"));
-       ui->sensors_scrolled_tree
-               = GTK_SCROLLED_WINDOW(gtk_builder_get_object
-                                     (builder, "sensors_scrolled_tree"));
+       w_sensors_scrolled_tree
+               = GTK_WIDGET(gtk_builder_get_object
+                            (builder, "sensors_scrolled_tree"));
 
        ui_sensorlist_create(ui);
 
+       connect_cbks(GTK_WINDOW(window), menu_bar);
+
        log_debug("ui_window_create(): show_all");
-       gtk_widget_show_all(ui->main_box);
+       update_layout();
+       gtk_widget_show_all(GTK_WIDGET(w_main_box));
+       set_menu_bar_enabled(menu_bar);
 
        g_object_unref(G_OBJECT(builder));
 
        log_debug("ui_window_create() ends");
 }
 
-static void menu_bar_show(unsigned int show, struct ui_psensor *ui)
-{
-       if (show)
-               gtk_widget_show(ui->menu_bar);
-       else
-               gtk_widget_hide(ui->menu_bar);
-}
-
 void ui_window_update(struct ui_psensor *ui)
 {
        struct config *cfg;
@@ -277,55 +409,10 @@ void ui_window_update(struct ui_psensor *ui)
 
        cfg = ui->config;
 
-       g_object_ref(GTK_WIDGET(ui->sensors_scrolled_tree));
-       g_object_ref(GTK_WIDGET(ui->w_graph));
-
-       gtk_container_remove(GTK_CONTAINER(ui->sensor_box),
-                            GTK_WIDGET(ui->sensors_scrolled_tree));
-
-       gtk_container_remove(GTK_CONTAINER(ui->sensor_box), ui->w_graph);
-
-       gtk_container_remove(GTK_CONTAINER(ui->main_box),
-                            GTK_WIDGET(ui->sensor_box));
-
-       if (cfg->sensorlist_position == SENSORLIST_POSITION_RIGHT
-           || cfg->sensorlist_position == SENSORLIST_POSITION_LEFT)
-               ui->sensor_box
-                       = GTK_PANED(gtk_paned_new(GTK_ORIENTATION_HORIZONTAL));
-       else
-               ui->sensor_box
-                       = GTK_PANED(gtk_paned_new(GTK_ORIENTATION_VERTICAL));
-
-       gtk_box_pack_end(GTK_BOX(ui->main_box),
-                        GTK_WIDGET(ui->sensor_box), TRUE, TRUE, 2);
-
-       if (cfg->sensorlist_position == SENSORLIST_POSITION_RIGHT
-           || cfg->sensorlist_position == SENSORLIST_POSITION_BOTTOM) {
-               gtk_paned_pack1(ui->sensor_box,
-                               GTK_WIDGET(ui->w_graph), TRUE, TRUE);
-               gtk_paned_pack2(ui->sensor_box,
-                               GTK_WIDGET(ui->sensors_scrolled_tree),
-                               FALSE, TRUE);
-       } else {
-               gtk_paned_pack1(ui->sensor_box,
-                               GTK_WIDGET(ui->sensors_scrolled_tree),
-                               FALSE, TRUE);
-               gtk_paned_pack2(ui->sensor_box,
-                               GTK_WIDGET(ui->w_graph), TRUE, TRUE);
-       }
-
        if (cfg->window_restore_enabled)
-               gtk_paned_set_position(ui->sensor_box, cfg->window_divider_pos);
-
-       g_object_unref(GTK_WIDGET(ui->sensors_scrolled_tree));
-       g_object_unref(GTK_WIDGET(ui->w_graph));
-
-       gtk_widget_show_all(GTK_WIDGET(ui->sensor_box));
+               gtk_paned_set_position(GTK_PANED(w_sensor_box),
+                                      cfg->window_divider_pos);
 
-       if (cfg->menu_bar_disabled)
-               menu_bar_show(0, ui);
-       else
-               menu_bar_show(1, ui);
 }
 
 void ui_window_show(struct ui_psensor *ui)
@@ -349,11 +436,11 @@ static int cmp_sensors(const void *p1, const void *p2)
        return pos1 - pos2;
 }
 
-struct psensor **ui_get_sensors_ordered_by_position(const struct ui_psensor *ui)
+struct psensor **ui_get_sensors_ordered_by_position(struct psensor **sensors)
 {
        struct psensor **result;
 
-       result = psensor_list_copy(ui->sensors);
+       result = psensor_list_copy(sensors);
        qsort(result,
              psensor_list_size(result),
              sizeof(struct psensor *),
@@ -361,3 +448,8 @@ struct psensor **ui_get_sensors_ordered_by_position(const struct ui_psensor *ui)
 
        return result;
 }
+
+GtkWidget *ui_get_graph(void)
+{
+       return w_graph;
+}
index af17b78..95135d6 100644 (file)
--- a/src/ui.h
+++ b/src/ui.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -26,7 +26,7 @@
 #include <glib/gi18n.h>
 #include <gtk/gtk.h>
 
-#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
+#if defined(HAVE_APPINDICATOR)
 #include <libappindicator/app-indicator.h>
 #endif
 
@@ -39,31 +39,14 @@ struct ui_psensor {
        /* mutex which MUST be used for accessing sensors.*/
        pthread_mutex_t sensors_mutex;
 
-       GtkWidget *w_graph;
-
        struct config *config;
 
        GtkWidget *main_window;
 
-       GtkWidget *menu_bar;
-
        GtkWidget *popup_menu;
 
-       /*
-        * The main vertical box, top contains the menubar, bottom
-        * contains the sensor_box.
-        */
-       GtkWidget *main_box;
-
-       /*
-        * The box which contains the sensors graph and the sensors
-        * information list.
-        */
-       GtkPaned *sensor_box;
-
        GtkListStore *sensors_store;
        GtkTreeView *sensors_tree;
-       GtkScrolledWindow *sensors_scrolled_tree;
 
        int graph_update_interval;
 };
@@ -89,14 +72,13 @@ void ui_window_create(struct ui_psensor *ui);
 
 void ui_menu_bar_show(unsigned int show, struct ui_psensor *ui);
 
-void ui_show_about_dialog();
-
 void ui_enable_alpha_channel(struct ui_psensor *ui);
 
 void ui_cb_preferences(GtkMenuItem *mi, gpointer data);
-void ui_cb_about(GtkMenuItem *mi, gpointer data);
 void ui_cb_menu_quit(GtkMenuItem *mi, gpointer data);
 void ui_cb_sensor_preferences(GtkMenuItem *mi, gpointer data);
 
-struct psensor **ui_get_sensors_ordered_by_position(const struct ui_psensor *);
+GtkWidget *ui_get_graph(void);
+
+struct psensor **ui_get_sensors_ordered_by_position(struct psensor **);
 #endif
index c25e270..ed4cc64 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #include <gtk/gtk.h>
 #include <libappindicator/app-indicator.h>
 
-#include "cfg.h"
-#include "psensor.h"
-#include "ui.h"
-#include "ui_appindicator.h"
-#include "ui_sensorpref.h"
-#include "ui_status.h"
-#include "ui_pref.h"
+#include <cfg.h>
+#include <psensor.h>
+#include <ui.h>
+#include <ui_appindicator.h>
+#include <ui_sensorpref.h>
+#include <ui_status.h>
+#include <ui_pref.h>
 
 static const char *ICON = "psensor_normal";
 static const char *ATTENTION_ICON = "psensor_hot";
 
+static const char *GLADE_FILE
+= PACKAGE_DATA_DIR G_DIR_SEPARATOR_S "psensor-appindicator.glade";
+
 static struct psensor **sensors;
 static GtkMenuItem **menu_items;
-static int appindicator_supported = 1;
+static bool appindicator_supported = true;
 static AppIndicator *indicator;
 static struct ui_psensor *ui_psensor;
 
-void cb_menu_show(GtkMenuItem *mi, gpointer data)
+void ui_appindicator_menu_show_cb(GtkMenuItem *mi, gpointer data)
 {
        ui_window_show((struct ui_psensor *)data);
 }
 
 void ui_appindicator_cb_preferences(GtkMenuItem *mi, gpointer data)
 {
-#ifdef HAVE_APPINDICATOR_029
-       gdk_threads_enter();
-#endif
-
        ui_pref_dialog_run((struct ui_psensor *)data);
-
-#ifdef HAVE_APPINDICATOR_029
-       gdk_threads_leave();
-#endif
 }
 
 void ui_appindicator_cb_sensor_preferences(GtkMenuItem *mi, gpointer data)
 {
        struct ui_psensor *ui = data;
 
-#ifdef HAVE_APPINDICATOR_029
-       gdk_threads_enter();
-#endif
-
        if (ui->sensors && *ui->sensors)
                ui_sensorpref_dialog_run(*ui->sensors, ui);
-
-#ifdef HAVE_APPINDICATOR_029
-       gdk_threads_leave();
-#endif
 }
 
 static void
@@ -103,19 +90,21 @@ static void update_menu_items(int use_celsius)
 }
 
 static void
-build_sensor_menu_items(const struct ui_psensor *ui, GtkMenu *menu)
+create_sensor_menu_items(const struct ui_psensor *ui, GtkMenu *menu)
 {
        int i, j, n, celsius;
        const char *name;
        struct psensor **sorted_sensors;
 
-       free(menu_items);
-
-       celsius  = ui->config->temperature_unit == CELSIUS;
+       if (config_get_temperature_unit() == CELSIUS)
+               celsius = 1;
+       else
+               celsius = 0;
 
-       sorted_sensors = ui_get_sensors_ordered_by_position(ui);
+       sorted_sensors = ui_get_sensors_ordered_by_position(ui->sensors);
        n = psensor_list_size(sorted_sensors);
-       menu_items = malloc(n * sizeof(GtkWidget *));
+       menu_items = malloc((n + 1) * sizeof(GtkWidget *));
+
        sensors = malloc((n + 1) * sizeof(struct psensor *));
        for (i = 0, j = 0; i < n; i++) {
                if (config_is_appindicator_enabled(sorted_sensors[i]->id)) {
@@ -136,53 +125,63 @@ build_sensor_menu_items(const struct ui_psensor *ui, GtkMenu *menu)
        }
 
        sensors[j] = NULL;
+       menu_items[j] = NULL;
 
        free(sorted_sensors);
 }
 
-static GtkWidget *get_menu(struct ui_psensor *ui)
+static GtkMenu *load_menu(struct ui_psensor *ui)
 {
        GError *error;
        GtkMenu *menu;
        guint ok;
        GtkBuilder *builder;
 
+       log_fct_enter();
+
        builder = gtk_builder_new();
 
        error = NULL;
-       ok = gtk_builder_add_from_file
-               (builder,
-                PACKAGE_DATA_DIR G_DIR_SEPARATOR_S "psensor.glade",
-                &error);
+       ok = gtk_builder_add_from_file(builder, GLADE_FILE, &error);
 
        if (!ok) {
-               log_printf(LOG_ERR, error->message);
+               log_err(_("Failed to load glade file %s: %s"),
+                       GLADE_FILE,
+                       error->message);
                g_error_free(error);
                return NULL;
        }
 
        menu = GTK_MENU(gtk_builder_get_object(builder, "appindicator_menu"));
-       build_sensor_menu_items(ui, menu);
+       create_sensor_menu_items(ui, menu);
        gtk_builder_connect_signals(builder, ui);
 
        g_object_ref(G_OBJECT(menu));
        g_object_unref(G_OBJECT(builder));
 
-       return GTK_WIDGET(menu);
+       log_fct_exit();
+
+       return menu;
 }
 
 static void update_label(struct ui_psensor *ui)
 {
        char *label, *str, *tmp, *guide;
        struct psensor **p;
+       int use_celsius;
 
-       p =  ui_get_sensors_ordered_by_position(ui);
+       p =  ui_get_sensors_ordered_by_position(ui->sensors);
        label = NULL;
        guide = NULL;
+
+       if (config_get_temperature_unit() == CELSIUS)
+               use_celsius = 1;
+       else
+               use_celsius = 0;
+
        while (*p) {
                if (config_is_appindicator_label_enabled((*p)->id)) {
-                       str = psensor_current_value_to_str
-                               (*p, ui->config->temperature_unit == CELSIUS);
+                       str = psensor_current_value_to_str(*p, use_celsius);
 
                        if (label == NULL) {
                                label = str;
@@ -223,7 +222,7 @@ static void update_label(struct ui_psensor *ui)
        app_indicator_set_label(indicator, label, guide);
 }
 
-void ui_appindicator_update(struct ui_psensor *ui, unsigned int attention)
+void ui_appindicator_update(struct ui_psensor *ui, bool attention)
 {
        AppIndicatorStatus status;
 
@@ -240,9 +239,12 @@ void ui_appindicator_update(struct ui_psensor *ui, unsigned int attention)
 
        if (attention && status == APP_INDICATOR_STATUS_ACTIVE)
                app_indicator_set_status(indicator,
-                                        APP_INDICATOR_STATUS_ATTENTION);
+               APP_INDICATOR_STATUS_ATTENTION);
 
-       update_menu_items(ui->config->temperature_unit == CELSIUS);
+       if (config_get_temperature_unit() == CELSIUS)
+               update_menu_items(1);
+       else
+               update_menu_items(0);
 }
 
 static GtkStatusIcon *unity_fallback(AppIndicator *indicator)
@@ -251,7 +253,7 @@ static GtkStatusIcon *unity_fallback(AppIndicator *indicator)
 
        log_debug("ui_appindicator.unity_fallback()");
 
-       appindicator_supported = 0;
+       appindicator_supported = false;
 
        ico = ui_status_get_icon(ui_psensor);
 
@@ -267,17 +269,47 @@ unity_unfallback(AppIndicator *indicator, GtkStatusIcon *status_icon)
 
        ui_status_set_visible(0);
 
-       appindicator_supported = 1;
+       appindicator_supported = true;
+}
+
+static void remove_sensor_menu_items(GtkMenu *menu)
+{
+       GtkMenuItem **items;
+
+       if (!menu_items)
+               return;
+
+       items = menu_items;
+       while (*items) {
+               gtk_container_remove(GTK_CONTAINER(menu), GTK_WIDGET(*items));
+
+               items++;
+       }
+
+       free(menu_items);
+       free(sensors);
 }
 
 void ui_appindicator_update_menu(struct ui_psensor *ui)
 {
-       GtkWidget *menu;
+       GtkMenu *menu;
+
+       menu = GTK_MENU(app_indicator_get_menu(indicator));
 
-       menu = get_menu(ui);
-       app_indicator_set_menu(indicator, GTK_MENU(menu));
+       if (menu) {
+               remove_sensor_menu_items(menu);
+               create_sensor_menu_items(ui, menu);
+       } else {
+               menu = load_menu(ui);
+
+               if (menu) {
+                       app_indicator_set_menu(indicator, menu);
+                       g_object_unref(G_OBJECT(menu));
+               }
+       }
 
-       gtk_widget_show_all(menu);
+       if (menu)
+               gtk_widget_show_all(GTK_WIDGET(menu));
 }
 
 void ui_appindicator_init(struct ui_psensor *ui)
@@ -298,12 +330,12 @@ void ui_appindicator_init(struct ui_psensor *ui)
        ui_appindicator_update_menu(ui);
 }
 
-int is_appindicator_supported()
+bool is_appindicator_supported(void)
 {
        return appindicator_supported;
 }
 
-void ui_appindicator_cleanup()
+void ui_appindicator_cleanup(void)
 {
        free(sensors);
 }
index 1dc682e..c808aa6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_UI_APPINDICATOR_H_
 #define _PSENSOR_UI_APPINDICATOR_H_
 
-#include "config.h"
-#include "ui.h"
+#include <config.h>
+
+#include <bool.h>
+#include <ui.h>
+
+#if defined(HAVE_APPINDICATOR) && HAVE_APPINDICATOR
+
+bool is_appindicator_supported(void);
 
-#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
 void ui_appindicator_init(struct ui_psensor *ui);
-void ui_appindicator_update(struct ui_psensor *ui, unsigned int attention);
+void ui_appindicator_update(struct ui_psensor *ui, bool alert);
 void ui_appindicator_update_menu(struct ui_psensor *ui);
-int is_appindicator_supported();
-void ui_appindicator_cleanup();
+void ui_appindicator_cleanup(void);
+void ui_appindicator_menu_show_cb(GtkMenuItem *, gpointer);
+
 #else
-#define is_appindicator_supported() 0
+
+static inline bool is_appindicator_supported(void) { return false; }
+
+static inline void ui_appindicator_init(struct ui_psensor *ui) {}
+static inline void ui_appindicator_update(struct ui_psensor *ui, bool alert) {}
+static inline void ui_appindicator_update_menu(struct ui_psensor *ui) {}
+static inline void ui_appindicator_cleanup(void) {}
+static inline void ui_appindicator_menu_show_cb(GtkMenuItem *m, gpointer d) {}
+
 #endif
 
 #endif
index 85277ff..3c77827 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
  */
 #include <gtk/gtk.h>
 
-#include "ui_color.h"
+#include <ui_color.h>
 
-int ui_change_color(const char *title, struct color *col, GtkWindow *win)
+/*
+ * UI to change a given color.
+ *
+ * Returns 1 if the color has been modified.
+ */
+bool ui_change_color(const char *title, GdkRGBA *color, GtkWindow *win)
 {
-       GdkRGBA color;
        int res;
        GtkColorChooserDialog *colordlg;
-       double r, g, b;
-
-       color.red = col->red;
-       color.green = col->green;
-       color.blue = col->blue;
-       color.alpha = 1;
 
        colordlg = GTK_COLOR_CHOOSER_DIALOG
                (gtk_color_chooser_dialog_new(title, win));
 
        gtk_color_chooser_set_use_alpha(GTK_COLOR_CHOOSER(colordlg), 0);
 
-       gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(colordlg), &color);
+       gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(colordlg), color);
 
        res = gtk_dialog_run(GTK_DIALOG(colordlg));
 
-       if (res == GTK_RESPONSE_OK) {
-               gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(colordlg), &color);
-
-               /* GdkRGBA defines rgb as double 0..1 but chooser returns
-                * values > 1 when selecting a custom undefined color.
-                * Not sure whether that's a gtk/gdk bug. */
-
-               if (color.red > 1)
-                       r = 1;
-               else
-                       r = color.red;
-
-               if (color.green > 1)
-                       g = 1;
-               else
-                       g = color.green;
-
-               if (color.blue > 1)
-                       b = 1;
-               else
-                       b = color.blue;
-
-               color_set(col, r, g, b);
-       }
+       if (res == GTK_RESPONSE_OK)
+               gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(colordlg), color);
 
        gtk_widget_destroy(GTK_WIDGET(colordlg));
 
index 8d957f1..3c41b78 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_UI_COLOR_H_
 #define _PSENSOR_UI_COLOR_H_
 
-#include "color.h"
+#include <bool.h>
 
-/*
- * UI to change a given color.
- *
- * Returns 1 if the color has been modified.
- */
-int ui_change_color(const char *title, struct color *col, GtkWindow *win);
+bool ui_change_color(const char *, GdkRGBA *, GtkWindow *);
 
 #endif
index e5e0e76..577e83a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -38,14 +38,14 @@ on_expose_event(GtkWidget *widget, GdkEventExpose *event, gpointer data)
        struct ui_psensor *ui_psensor = (struct ui_psensor *)data;
 
        graph_update(ui_psensor->sensors,
-                    ui_psensor->w_graph,
+                    ui_get_graph(),
                     ui_psensor->config,
                     ui_psensor->main_window);
 
        return FALSE;
 }
 
-void smooth_curves_enabled_changed_cbk(void *data)
+static void smooth_curves_enabled_changed_cbk(void *data)
 {
        is_smooth_curves_enabled = config_is_smooth_curves_enabled();
 }
@@ -56,7 +56,7 @@ void ui_graph_create(struct ui_psensor *ui)
 
        log_debug("ui_graph_create()");
 
-       w_graph = ui->w_graph;
+       w_graph = ui_get_graph();
 
        is_smooth_curves_enabled = config_is_smooth_curves_enabled();
        g_signal_connect_after(config_get_GSettings(),
index c53cd5d..a316075 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
index a668014..719f502 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -59,7 +59,7 @@ void ui_notify(struct psensor *sensor, struct ui_psensor *ui)
                notify_init("psensor");
 
        if (notify_is_initted() == TRUE) {
-               if (ui->config->temperature_unit == CELSIUS)
+               if (config_get_temperature_unit() == CELSIUS)
                        use_celsius = 1;
                else
                        use_celsius = 0;
index 82b66a1..51dc3d1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_UI_NOTIFY_H_
 #define _PSENSOR_UI_NOTIFY_H_
 
-#include "psensor.h"
-#include "ui.h"
+#include <ui.h>
 
-void ui_notify(struct psensor *sensor, struct ui_psensor *ui);
+#if defined(HAVE_LIBNOTIFY) && HAVE_LIBNOTIFY
+
+void ui_notify(struct psensor *, struct ui_psensor *);
+
+#else
+
+static inline void ui_notify(struct psensor *s, struct ui_psensor *u) {}
+
+#endif
 
 #endif
index 5494777..8d2c8ab 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #include <stdlib.h>
 #include <string.h>
 
-#include <ui.h>
+#include <amd.h>
 #include <cfg.h>
 #include <graph.h>
-#include <ui_pref.h>
-#include <ui_color.h>
+#include <hdd.h>
+#include <lmsensor.h>
+#include <nvidia.h>
+#include <pgtop2.h>
+#include <pudisks2.h>
 #include <pxdg.h>
+#include <ui.h>
+#include <ui_color.h>
+#include <ui_pref.h>
+#include <ui_unity.h>
+
+void ui_pref_decoration_toggled_cbk(GtkToggleButton *btn, gpointer data)
+{
+       config_set_window_decoration_enabled
+               (!gtk_toggle_button_get_active(btn));
+}
+
+void ui_pref_keep_below_toggled_cbk(GtkToggleButton *btn, gpointer data)
+{
+       config_set_window_keep_below_enabled
+               (gtk_toggle_button_get_active(btn));
+}
+
+void ui_pref_temperature_unit_changed_cbk(GtkComboBox *combo, gpointer data)
+{
+       config_set_temperature_unit(gtk_combo_box_get_active(combo));
+}
+
+void ui_pref_menu_toggled_cbk(GtkToggleButton *btn, gpointer data)
+{
+       config_set_menu_bar_enabled(gtk_toggle_button_get_active(btn));
+}
+
+void ui_pref_count_visible_toggled_cbk(GtkToggleButton *btn, gpointer data)
+{
+       config_set_count_visible(gtk_toggle_button_get_active(btn));
+}
+
+void ui_pref_sensorlist_position_changed_cbk(GtkComboBox *combo, gpointer data)
+{
+       config_set_sensorlist_position(gtk_combo_box_get_active(combo));
+}
 
 GdkRGBA color_to_GdkRGBA(struct color *color)
 {
@@ -52,11 +91,11 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
        GtkSpinButton *w_update_interval, *w_monitoring_duration,
                *w_s_update_interval, *w_slog_interval;
        GtkComboBox *w_sensorlist_pos;
-       GtkToggleButton *w_hide_window_decoration, *w_keep_window_below,
-               *w_enable_menu, *w_enable_launcher_counter, *w_hide_on_startup,
-               *w_win_restore, *w_slog_enabled, *w_autostart, *w_smooth_curves,
-               *w_atiadlsdk, *w_lmsensors, *w_nvctrl, *w_gtop2, *w_hddtemp,
-               *w_libatasmart, *w_udisks2;
+       GtkToggleButton *w_enable_menu, *w_enable_launcher_counter,
+               *w_hide_on_startup, *w_win_restore, *w_slog_enabled,
+               *w_autostart, *w_smooth_curves, *w_atiadlsdk, *w_lmsensors,
+               *w_nvctrl, *w_gtop2, *w_hddtemp, *w_libatasmart, *w_udisks2,
+               *w_decoration, *w_keep_below;
        GtkComboBoxText *w_temp_unit;
        GtkEntry *w_notif_script;
        char *notif_script;
@@ -111,6 +150,16 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
        gtk_spin_button_set_value(w_s_update_interval,
                                  cfg->sensor_update_interval);
 
+       w_decoration = GTK_TOGGLE_BUTTON(gtk_builder_get_object
+                                        (builder, "hide_window_decoration"));
+       gtk_toggle_button_set_active(w_decoration,
+                                    !config_is_window_decoration_enabled());
+
+       w_keep_below = GTK_TOGGLE_BUTTON(gtk_builder_get_object
+                                        (builder, "keep_window_below"));
+       gtk_toggle_button_set_active(w_keep_below,
+                                    config_is_window_keep_below_enabled());
+
        w_monitoring_duration
                = GTK_SPIN_BUTTON(gtk_builder_get_object
                                  (builder, "monitoring_duration"));
@@ -119,17 +168,8 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
 
        w_sensorlist_pos = GTK_COMBO_BOX
                (gtk_builder_get_object(builder, "sensors_list_position"));
-       gtk_combo_box_set_active(w_sensorlist_pos, cfg->sensorlist_position);
-
-       w_hide_window_decoration = GTK_TOGGLE_BUTTON
-               (gtk_builder_get_object(builder, "hide_window_decoration"));
-       gtk_toggle_button_set_active(w_hide_window_decoration,
-                                    !cfg->window_decoration_enabled);
-
-       w_keep_window_below = GTK_TOGGLE_BUTTON
-               (gtk_builder_get_object(builder, "keep_window_below"));
-       gtk_toggle_button_set_active(w_keep_window_below,
-                                    cfg->window_keep_below_enabled);
+       gtk_combo_box_set_active(w_sensorlist_pos,
+                                config_get_sensorlist_position());
 
        w_autostart = GTK_TOGGLE_BUTTON
                (gtk_builder_get_object(builder, "autostart"));
@@ -137,12 +177,23 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
 
        w_enable_menu = GTK_TOGGLE_BUTTON
                (gtk_builder_get_object(builder, "enable_menu"));
-       gtk_toggle_button_set_active(w_enable_menu, !cfg->menu_bar_disabled);
+       gtk_toggle_button_set_active(w_enable_menu,
+                                    config_is_menu_bar_enabled());
 
        w_enable_launcher_counter = GTK_TOGGLE_BUTTON
                (gtk_builder_get_object(builder, "enable_launcher_counter"));
        gtk_toggle_button_set_active(w_enable_launcher_counter,
-                                    !cfg->unity_launcher_count_disabled);
+                                    config_is_count_visible());
+
+       if (ui_unity_is_supported()) {
+               gtk_widget_set_has_tooltip
+                       (GTK_WIDGET(w_enable_launcher_counter), FALSE);
+       } else {
+               gtk_widget_set_sensitive
+                       (GTK_WIDGET(w_enable_launcher_counter), FALSE);
+               gtk_widget_set_has_tooltip
+                       (GTK_WIDGET(w_enable_launcher_counter), TRUE);
+       }
 
        w_smooth_curves = GTK_TOGGLE_BUTTON
                (gtk_builder_get_object(builder, "graph_smooth_curves"));
@@ -172,7 +223,7 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
                = GTK_COMBO_BOX_TEXT(gtk_builder_get_object
                                     (builder, "temperature_unit"));
        gtk_combo_box_set_active(GTK_COMBO_BOX(w_temp_unit),
-                                cfg->temperature_unit);
+                                config_get_temperature_unit());
 
        /* providers */
        w_lmsensors
@@ -180,29 +231,50 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
                                                           "lmsensors"));
        gtk_toggle_button_set_active(w_lmsensors, config_is_lmsensor_enabled());
 
+       if (lmsensor_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_lmsensors), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_lmsensors), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_lmsensors), TRUE);
+       }
+
        w_nvctrl
                = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
                                                           "nvctrl"));
-#if !HAVE_NVIDIA
-       gtk_widget_set_sensitive(GTK_WIDGET(w_nvctrl), 0);
-#endif
+
+       if (nvidia_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_nvctrl), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_nvctrl), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_nvctrl), TRUE);
+       }
+
        gtk_toggle_button_set_active(w_nvctrl, config_is_nvctrl_enabled());
 
        w_atiadlsdk
                = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
                                                           "atiadlsdk"));
-#if !HAVE_LIBATIADL
-       gtk_widget_set_sensitive(GTK_WIDGET(w_atiadlsdk), 0);
-#endif
+       if (amd_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_atiadlsdk), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_atiadlsdk), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_atiadlsdk), TRUE);
+       }
+
        gtk_toggle_button_set_active(w_atiadlsdk,
                                     config_is_atiadlsdk_enabled());
 
        w_gtop2
                = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
                                                           "gtop2"));
-#if !HAVE_GTOP
-       gtk_widget_set_sensitive(GTK_WIDGET(w_gtop2), 0);
-#endif
+
+       if (gtop2_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_gtop2), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_gtop2), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_gtop2), TRUE);
+       }
+
        gtk_toggle_button_set_active(w_gtop2, config_is_gtop2_enabled());
 
        w_hddtemp
@@ -214,20 +286,34 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
        w_libatasmart
                = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
                                                           "libatasmart"));
-#if !HAVE_ATASMART
-       gtk_widget_set_sensitive(GTK_WIDGET(w_libatasmart), 0);
-#endif
+
+       if (atasmart_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_libatasmart), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_libatasmart), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_libatasmart), TRUE);
+       }
+
        gtk_toggle_button_set_active(w_libatasmart,
                                     config_is_libatasmart_enabled());
 
        w_udisks2
                = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
                                                           "udisks2"));
-#if !HAVE_LIBUDISKS2
-       gtk_widget_set_sensitive(GTK_WIDGET(w_udisks2), 0);
-#endif
+
+       if (udisks2_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_udisks2), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_udisks2), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_udisks2), TRUE);
+       }
+
        gtk_toggle_button_set_active(w_udisks2, config_is_udisks2_enabled());
 
+       gtk_window_set_transient_for(GTK_WINDOW(diag),
+                                    GTK_WINDOW(ui->main_window));
+       gtk_builder_connect_signals(builder, NULL);
+
        result = gtk_dialog_run(diag);
 
        if (result == GTK_RESPONSE_ACCEPT) {
@@ -259,28 +345,6 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
                else
                        cfg->alpha_channel_enabled = 1;
 
-               cfg->sensorlist_position
-                       = gtk_combo_box_get_active(w_sensorlist_pos);
-
-               cfg->window_decoration_enabled =
-                       !gtk_toggle_button_get_active(w_hide_window_decoration);
-
-               cfg->window_keep_below_enabled
-                       = gtk_toggle_button_get_active(w_keep_window_below);
-
-               cfg->menu_bar_disabled
-                       = !gtk_toggle_button_get_active(w_enable_menu);
-
-               cfg->unity_launcher_count_disabled
-                       = !gtk_toggle_button_get_active
-                       (w_enable_launcher_counter);
-
-               gtk_window_set_decorated(GTK_WINDOW(ui->main_window),
-                                        cfg->window_decoration_enabled);
-
-               gtk_window_set_keep_below(GTK_WINDOW(ui->main_window),
-                                         cfg->window_keep_below_enabled);
-
                cfg->sensor_update_interval
                        = gtk_spin_button_get_value_as_int(w_s_update_interval);
 
@@ -303,9 +367,6 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
                cfg->slog_interval
                        = gtk_spin_button_get_value_as_int(w_slog_interval);
 
-               cfg->temperature_unit
-                       = gtk_combo_box_get_active(GTK_COMBO_BOX(w_temp_unit));
-
                cfg->sensor_values_max_length = compute_values_max_length(cfg);
 
                config_save(cfg);
index 2e669c5..54cf2e1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -24,4 +24,7 @@
 void ui_pref_dialog_run(struct ui_psensor *);
 GdkRGBA color_to_GdkRGBA(struct color *color);
 
+void ui_pref_decoration_toggled_cbk(GtkToggleButton *, gpointer);
+void ui_pref_keep_below_toggled_cbk(GtkToggleButton *, gpointer);
+
 #endif
index 5f1cb4f..9d4b748 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -58,12 +58,12 @@ static void populate(struct ui_psensor *ui)
 {
        GtkTreeIter iter;
        GtkListStore *store;
-       GdkRGBA color;
+       GdkRGBA *color;
        char *scolor;
        struct psensor **ordered_sensors, **s_cur, *s;
        unsigned int enabled;
 
-       ordered_sensors = ui_get_sensors_ordered_by_position(ui);
+       ordered_sensors = ui_get_sensors_ordered_by_position(ui->sensors);
        store = ui->sensors_store;
 
        gtk_list_store_clear(store);
@@ -73,23 +73,21 @@ static void populate(struct ui_psensor *ui)
 
                gtk_list_store_append(store, &iter);
 
-               color.red = s->color->red;
-               color.green = s->color->green;
-               color.blue = s->color->blue;
-               color.alpha = 1.0;
+               color = config_get_sensor_color(s->id);
 
-               scolor = gdk_rgba_to_string(&color);
+               scolor = gdk_rgba_to_string(color);
 
                enabled = config_is_sensor_enabled(s->id);
-
                gtk_list_store_set(store, &iter,
                                   COL_NAME, s->name,
                                   COL_COLOR_STR, scolor,
-                                  COL_GRAPH_ENABLED, s->graph_enabled,
+                                  COL_GRAPH_ENABLED,
+                                  config_is_sensor_graph_enabled(s->id),
                                   COL_SENSOR, s,
                                   COL_DISPLAY_ENABLED, enabled,
                                   -1);
                free(scolor);
+               gdk_rgba_free(color);
        }
        free(ordered_sensors);
 }
@@ -112,7 +110,10 @@ void ui_sensorlist_update(struct ui_psensor *ui, bool complete)
 
        store = ui->sensors_store;
 
-       use_celsius = ui->config->temperature_unit == CELSIUS;
+       if (config_get_temperature_unit() == CELSIUS)
+               use_celsius = 1;
+       else
+               use_celsius = 0;
 
        valid = gtk_tree_model_get_iter_first(model, &iter);
        while (valid) {
@@ -121,8 +122,12 @@ void ui_sensorlist_update(struct ui_psensor *ui, bool complete)
                value = psensor_value_to_str(s->type,
                                             psensor_get_current_value(s),
                                             use_celsius);
-               min = psensor_value_to_str(s->type, s->min, use_celsius);
-               max = psensor_value_to_str(s->type, s->max, use_celsius);
+               min = psensor_value_to_str(s->type,
+                                          s->sess_lowest,
+                                          use_celsius);
+               max = psensor_value_to_str(s->type,
+                                          s->sess_highest,
+                                          use_celsius);
 
                gtk_list_store_set(store, &iter,
                                   COL_TEMP, value,
@@ -283,6 +288,7 @@ static int clicked_cbk(GtkWidget *widget, GdkEventButton *event, gpointer data)
        GtkTreeView *view;
        struct psensor *s;
        int coli;
+       GdkRGBA *color;
 
        ui = (struct ui_psensor *)data;
        view = ui->sensors_tree;
@@ -293,13 +299,15 @@ static int clicked_cbk(GtkWidget *widget, GdkEventButton *event, gpointer data)
                coli = col_index_to_col(get_col_index_at_pos(view, event->x));
 
                if (coli == COL_COLOR) {
+                       color = config_get_sensor_color(s->id);
                        if (ui_change_color(_("Select sensor color"),
-                                           s->color,
+                                           color,
                                            GTK_WINDOW(ui->main_window))) {
+                               config_set_sensor_color(s->id, color);
                                ui_sensorlist_update(ui, 1);
-                               config_set_sensor_color(s->id, s->color);
                                config_sync();
                        }
+                       gdk_rgba_free(color);
                        return TRUE;
                } else if (coli >= 0 && coli != COL_GRAPH_ENABLED) {
                        menu = create_sensor_popup(ui, s);
@@ -323,6 +331,7 @@ void ui_sensorlist_cb_graph_toggled(GtkCellRendererToggle *cell,
        GtkTreePath *path;
        struct psensor *s, *s2;
        gboolean valid;
+       bool b;
 
        ui = (struct ui_psensor *)data;
        fmodel = gtk_tree_view_get_model(ui->sensors_tree);
@@ -333,8 +342,9 @@ void ui_sensorlist_cb_graph_toggled(GtkCellRendererToggle *cell,
 
        gtk_tree_model_get(fmodel, &iter, COL_SENSOR, &s, -1);
 
-       s->graph_enabled ^= 1;
-       config_set_sensor_graph_enabled(s->id, s->graph_enabled);
+       b = config_is_sensor_graph_enabled(s->id) ^ 1;
+       config_set_sensor_graph_enabled(s->id, b);
+
        config_sync();
 
        gtk_tree_path_free(path);
@@ -348,7 +358,7 @@ void ui_sensorlist_cb_graph_toggled(GtkCellRendererToggle *cell,
                        gtk_list_store_set(ui->sensors_store,
                                           &iter,
                                           COL_GRAPH_ENABLED,
-                                          s->graph_enabled,
+                                          b,
                                           -1);
                valid = gtk_tree_model_iter_next(model, &iter);
        }
index 8e4d6c6..953bbcd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -28,4 +28,6 @@ void ui_sensorlist_create(struct ui_psensor *);
 /* Update values current/min/max */
 void ui_sensorlist_update(struct ui_psensor *ui, bool complete);
 
+void ui_sensorlist_cb_graph_toggled(GtkCellRendererToggle *, gchar *, gpointer);
+
 #endif
index 6ca0815..b87d53d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 
 #include <cfg.h>
 #include <temperature.h>
+#include <ui_appindicator.h>
+#include <ui_color.h>
 #include <ui_pref.h>
 #include <ui_sensorlist.h>
 #include <ui_sensorpref.h>
-#include <ui_color.h>
-
-
-#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
-#include "ui_appindicator.h"
-#endif
 
 enum {
        COL_NAME = 0,
        COL_SENSOR_PREF
 };
 
-struct sensor_pref {
-       struct psensor *sensor;
-       char *name;
-       int graph_enabled;
-       struct color *color;
-       int alarm_enabled;
-       int alarm_high_threshold;
-       int alarm_low_threshold;
-       unsigned int appindicator_enabled;
-       unsigned int appindicator_label_enabled;
-       unsigned int display_enabled;
-};
-
-struct cb_data {
-       struct ui_psensor *ui;
-       GtkBuilder *builder;
-};
+static GtkTreeView *w_sensors_list;
+static GtkDialog *w_dialog;
+static GtkLabel *w_sensor_id;
+static GtkLabel *w_sensor_type;
+static GtkLabel *w_sensor_chipname;
+static GtkLabel *w_sensor_min;
+static GtkLabel *w_sensor_max;
+static GtkLabel *w_sensor_low_threshold_unit;
+static GtkLabel *w_sensor_high_threshold_unit;
+static GtkEntry *w_sensor_name;
+static GtkToggleButton *w_sensor_draw;
+static GtkToggleButton *w_sensor_display;
+static GtkToggleButton *w_sensor_alarm;
+static GtkToggleButton *w_appindicator_enabled;
+static GtkToggleButton *w_appindicator_label_enabled;
+static GtkColorButton *w_sensor_color;
+static GtkSpinButton *w_sensor_high_threshold;
+static GtkSpinButton *w_sensor_low_threshold;
+static GtkListStore *store;
+
+/* 'true' when the notifications of field changes are due to the change
+ * of the selected sensor.
+ */
+static bool ignore_changes;
 
-static struct sensor_pref *
-sensor_pref_new(struct psensor *s, struct config *cfg)
+static struct psensor *get_selected_sensor(void)
 {
-       struct sensor_pref *p;
-
-       p = malloc(sizeof(struct sensor_pref));
-
-       p->sensor = s;
-       p->name = strdup(s->name);
-       p->graph_enabled = s->graph_enabled;
-       p->alarm_enabled = s->alarm_enabled;
-       p->color = color_dup(s->color);
-       p->display_enabled = config_is_sensor_enabled(s->id);
+       GtkTreeModel *model;
+       GtkTreeIter iter;
+       struct psensor *s;
+       GtkTreeSelection *selection;
 
-       if (cfg->temperature_unit == CELSIUS) {
-               p->alarm_high_threshold = s->alarm_high_threshold;
-               p->alarm_low_threshold = s->alarm_low_threshold;
-       } else {
-               p->alarm_high_threshold
-                       = celsius_to_fahrenheit(s->alarm_high_threshold);
-               p->alarm_low_threshold
-                       = celsius_to_fahrenheit(s->alarm_low_threshold);
-       }
+       selection = gtk_tree_view_get_selection(w_sensors_list);
 
-       p->appindicator_enabled = s->appindicator_enabled;
-       p->appindicator_label_enabled
-               = config_is_appindicator_label_enabled(s->id);
+       s = NULL;
+       if (gtk_tree_selection_get_selected(selection, &model, &iter))
+               gtk_tree_model_get(model, &iter, COL_SENSOR_PREF, &s, -1);
 
-       return p;
+       return s;
 }
 
-static void sensor_pref_free(struct sensor_pref *p)
+static void apply_config(struct ui_psensor *ui)
 {
-       if (!p)
-               return;
-
-       free(p->name);
-       free(p->color);
+       config_sync();
 
-       free(p);
+       ui_sensorlist_update(ui, 1);
+       ui_appindicator_update_menu(ui);
 }
 
-static struct sensor_pref *get_selected_sensor_pref(GtkTreeView *tree)
+void ui_sensorpref_name_changed_cb(GtkEntry *entry, gpointer data)
 {
-       GtkTreeModel *model;
-       GtkTreeIter iter;
-       struct sensor_pref *pref;
-       GtkTreeSelection *selection;
+       struct psensor *s;
 
-       selection = gtk_tree_view_get_selection(tree);
+       const gchar *str;
 
-       pref = NULL;
-       if (gtk_tree_selection_get_selected(selection, &model, &iter))
-               gtk_tree_model_get(model, &iter, COL_SENSOR_PREF, &pref, -1);
+       if (ignore_changes)
+               return;
 
-       return pref;
-}
+       s = get_selected_sensor();
 
-void ui_sensorpref_name_changed_cb(GtkEntry *entry, gpointer data)
-{
-       struct sensor_pref *p;
-       const char *str;
+       if (!s)
+               return;
 
        str = gtk_entry_get_text(entry);
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       if (strcmp(str, s->name)) {
+               free(s->name);
+               s->name = strdup(str);
+               config_set_sensor_name(s->id, str);
 
-       if (p && strcmp(p->name, str)) {
-               free(p->name);
-               p->name = strdup(str);
+               apply_config((struct ui_psensor *)data);
        }
 }
 
 void ui_sensorpref_draw_toggled_cb(GtkToggleButton *btn, gpointer data)
 {
-       struct sensor_pref *p;
+       gboolean active;
+       struct psensor *s;
+
+       if (ignore_changes)
+               return;
+
+       s = get_selected_sensor();
+
+       if (!s)
+               return;
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       active = gtk_toggle_button_get_active(btn);
+       config_set_sensor_graph_enabled(s->id, active);
 
-       if (p)
-               p->graph_enabled = gtk_toggle_button_get_active(btn);
+       apply_config((struct ui_psensor *)data);
 }
 
 void ui_sensorpref_display_toggled_cb(GtkToggleButton *btn, gpointer data)
 {
-       struct sensor_pref *p;
+       gboolean active;
+       struct psensor *s;
+
+       if (ignore_changes)
+               return;
+
+       s = get_selected_sensor();
+
+       if (!s)
+               return;
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       active = gtk_toggle_button_get_active(btn);
+       config_set_sensor_enabled(s->id, active);
 
-       if (p)
-               p->display_enabled = gtk_toggle_button_get_active(btn);
+       apply_config((struct ui_psensor *)data);
 }
 
 void ui_sensorpref_alarm_toggled_cb(GtkToggleButton *btn, gpointer data)
 {
-       struct sensor_pref *p;
+       gboolean active;
+       struct psensor *s;
+
+       if (ignore_changes)
+               return;
+
+       s = get_selected_sensor();
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       if (!s)
+               return;
+
+       active = gtk_toggle_button_get_active(btn);
+       config_set_sensor_alarm_enabled(s->id, active);
 
-       if (p)
-               p->alarm_enabled = gtk_toggle_button_get_active(btn);
+       apply_config((struct ui_psensor *)data);
 }
 
 void
 ui_sensorpref_appindicator_menu_toggled_cb(GtkToggleButton *btn, gpointer data)
 {
-       struct sensor_pref *p;
+       gboolean active;
+       struct psensor *s;
+
+       if (ignore_changes)
+               return;
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       s = get_selected_sensor();
 
-       if (p)
-               p->appindicator_enabled = gtk_toggle_button_get_active(btn);
+       if (!s)
+               return;
+
+       active = gtk_toggle_button_get_active(btn);
+       config_set_appindicator_enabled(s->id, active);
+
+       apply_config((struct ui_psensor *)data);
 }
 
 void
 ui_sensorpref_appindicator_label_toggled_cb(GtkToggleButton *btn, gpointer data)
 {
-       struct sensor_pref *p;
+       gboolean active;
+       struct psensor *s;
+
+       if (ignore_changes)
+               return;
+
+       s = get_selected_sensor();
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       if (!s)
+               return;
 
-       if (p)
-               p->appindicator_label_enabled
-                       = gtk_toggle_button_get_active(btn);
+       active = gtk_toggle_button_get_active(btn);
+       config_set_appindicator_label_enabled(s->id, active);
+
+       apply_config((struct ui_psensor *)data);
 }
 
 void ui_sensorpref_color_set_cb(GtkColorButton *widget, gpointer data)
 {
-       struct sensor_pref *p;
+       struct psensor *s;
        GdkRGBA color;
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       if (ignore_changes)
+               return;
 
-       if (p) {
-               gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(widget), &color);
-               color_set(p->color, color.red, color.green, color.blue);
-       }
+       s = get_selected_sensor();
+       if (!s)
+               return;
+
+       gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(widget), &color);
+       config_set_sensor_color(s->id, &color);
+
+       apply_config((struct ui_psensor *)data);
 }
 
 void
 ui_sensorpref_alarm_high_threshold_changed_cb(GtkSpinButton *btn, gpointer data)
 {
-       struct sensor_pref *p;
+       struct psensor *s;
+       gdouble v;
+
+       if (ignore_changes)
+               return;
+
+       s = get_selected_sensor();
+       if (!s)
+               return;
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       v = gtk_spin_button_get_value(btn);
+       if (config_get_temperature_unit() == FAHRENHEIT)
+               v = fahrenheit_to_celsius(v);
 
-       if (p)
-               p->alarm_high_threshold = gtk_spin_button_get_value(btn);
+       config_set_sensor_alarm_high_threshold(s->id, v);
+       s->alarm_high_threshold = v;
+
+       apply_config((struct ui_psensor *)data);
 }
 
 void
 ui_sensorpref_alarm_low_threshold_changed_cb(GtkSpinButton *btn, gpointer data)
 {
-       struct sensor_pref *p;
+       struct psensor *s;
+       gdouble v;
+
+       if (ignore_changes)
+               return;
+
+       s = get_selected_sensor();
+       if (!s)
+               return;
+
+       v = gtk_spin_button_get_value(btn);
+       if (config_get_temperature_unit() == FAHRENHEIT)
+               v = fahrenheit_to_celsius(v);
 
-       p = get_selected_sensor_pref(GTK_TREE_VIEW(data));
+       config_set_sensor_alarm_low_threshold(s->id, v);
+       s->alarm_low_threshold = v;
 
-       if (p)
-               p->alarm_low_threshold = gtk_spin_button_get_value(btn);
+       apply_config((struct ui_psensor *)data);
 }
 
-static void
-update_pref(struct sensor_pref *p, struct config *cfg, GtkBuilder *builder)
+static void update_pref(struct psensor *s)
 {
-       GtkLabel *w_id, *w_type, *w_high_threshold_unit, *w_low_threshold_unit,
-               *w_chipname;
-       GtkEntry *w_name;
-       GtkToggleButton *w_draw, *w_alarm, *w_appindicator_enabled,
-               *w_appindicator_label_enabled, *w_display;
-       GtkColorButton *w_color;
-       GtkSpinButton *w_high_threshold, *w_low_threshold;
-       GdkRGBA color;
-       struct psensor *s;
-       int use_celsius;
-
-       s = p->sensor;
+       int use_celsius, threshold;
+       GdkRGBA *color;
+       const char *chip;
+       char *smin, *smax;
 
-       w_id = GTK_LABEL(gtk_builder_get_object(builder, "sensor_id"));
-       gtk_label_set_text(w_id, s->id);
+       if (!s)
+               return;
 
-       w_type = GTK_LABEL(gtk_builder_get_object(builder, "sensor_type"));
-       gtk_label_set_text(w_type, psensor_type_to_str(s->type));
+       ignore_changes = true;
 
-       w_name = GTK_ENTRY(gtk_builder_get_object(builder, "sensor_name"));
-       gtk_entry_set_text(w_name, p->name);
+       gtk_label_set_text(w_sensor_id, s->id);
+       gtk_label_set_text(w_sensor_type, psensor_type_to_str(s->type));
+       gtk_entry_set_text(w_sensor_name, s->name);
 
-       w_chipname = GTK_LABEL(gtk_builder_get_object(builder, "chip_name"));
        if (s->chip)
-               gtk_label_set_text(w_chipname, s->chip);
+               chip = s->chip;
        else
-               gtk_label_set_text(w_chipname, _("Unknown"));
-
-       w_draw = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
-                                                         "sensor_draw"));
-       gtk_toggle_button_set_active(w_draw, p->graph_enabled);
-
-       w_display = GTK_TOGGLE_BUTTON(gtk_builder_get_object
-                                     (builder,
-                                      "sensor_enable_checkbox"));
-       gtk_toggle_button_set_active(w_display, p->display_enabled);
-
-       color = color_to_GdkRGBA(p->color);
-       w_color = GTK_COLOR_BUTTON(gtk_builder_get_object(builder,
-                                                         "sensor_color"));
-       gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(w_color), &color);
-
-       w_alarm = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
-                                                          "sensor_alarm"));
-       w_high_threshold = GTK_SPIN_BUTTON(gtk_builder_get_object
-                                         (builder,
-                                          "sensor_alarm_high_threshold"));
-       w_low_threshold = GTK_SPIN_BUTTON(gtk_builder_get_object
-                                        (builder,
-                                         "sensor_alarm_low_threshold"));
-
-       w_high_threshold_unit = GTK_LABEL(gtk_builder_get_object
-                                        (builder,
-                                         "sensor_alarm_high_threshold_unit"));
-       w_low_threshold_unit = GTK_LABEL(gtk_builder_get_object
-                                       (builder,
-                                        "sensor_alarm_low_threshold_unit"));
-
-       use_celsius = cfg->temperature_unit == CELSIUS ? 1 : 0;
-       gtk_label_set_text(w_high_threshold_unit,
-                          psensor_type_to_unit_str(s->type,
-                                                   use_celsius));
-       gtk_label_set_text(w_low_threshold_unit,
-                          psensor_type_to_unit_str(s->type,
-                                                   use_celsius));
+               chip = _("Unknown");
+       gtk_label_set_text(w_sensor_chipname, chip);
 
-       w_appindicator_enabled = GTK_TOGGLE_BUTTON
-               (gtk_builder_get_object(builder, "indicator_checkbox"));
-       w_appindicator_label_enabled = GTK_TOGGLE_BUTTON
-               (gtk_builder_get_object(builder, "indicator_label_checkbox"));
+       use_celsius = config_get_temperature_unit() == CELSIUS ? 1 : 0;
 
-       gtk_toggle_button_set_active(w_alarm, p->alarm_enabled);
-       gtk_spin_button_set_value(w_high_threshold, p->alarm_high_threshold);
-       gtk_spin_button_set_value(w_low_threshold, p->alarm_low_threshold);
-       gtk_widget_set_sensitive(GTK_WIDGET(w_alarm), TRUE);
-       gtk_widget_set_sensitive(GTK_WIDGET(w_high_threshold), TRUE);
-       gtk_widget_set_sensitive(GTK_WIDGET(w_low_threshold), TRUE);
+       if (s->min == UNKNOWN_DBL_VALUE)
+               smin = strdup(_("Unknown"));
+       else
+               smin = psensor_value_to_str(s->type, s->min, use_celsius);
+
+       gtk_label_set_text(w_sensor_min, smin);
+       free(smin);
+
+       if (s->max == UNKNOWN_DBL_VALUE)
+               smax = strdup(_("Unknown"));
+       else
+               smax = psensor_value_to_str(s->type, s->max, use_celsius);
+       gtk_label_set_text(w_sensor_max, smax);
+       free(smax);
+
+       gtk_toggle_button_set_active(w_sensor_draw,
+                                    config_is_sensor_graph_enabled(s->id));
+
+       gtk_toggle_button_set_active(w_sensor_display,
+                                    config_is_sensor_enabled(s->id));
+
+       color = config_get_sensor_color(s->id);
+       gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(w_sensor_color), color);
+       gdk_rgba_free(color);
+
+       gtk_label_set_text(w_sensor_high_threshold_unit,
+                          psensor_type_to_unit_str(s->type, use_celsius));
+       gtk_label_set_text(w_sensor_low_threshold_unit,
+                          psensor_type_to_unit_str(s->type, use_celsius));
+
+       if (is_appindicator_supported()) {
+               gtk_widget_set_has_tooltip
+                       (GTK_WIDGET(w_appindicator_label_enabled), FALSE);
+               gtk_widget_set_has_tooltip
+                       (GTK_WIDGET(w_appindicator_enabled), FALSE);
+       } else {
+               gtk_widget_set_sensitive
+                       (GTK_WIDGET(w_appindicator_label_enabled), FALSE);
+               gtk_widget_set_has_tooltip
+                       (GTK_WIDGET(w_appindicator_label_enabled), TRUE);
+               gtk_widget_set_sensitive
+                       (GTK_WIDGET(w_appindicator_enabled), FALSE);
+               gtk_widget_set_has_tooltip
+                       (GTK_WIDGET(w_appindicator_enabled), TRUE);
+       }
+
+       gtk_toggle_button_set_active(w_sensor_alarm,
+                                    config_get_sensor_alarm_enabled(s->id));
+
+       threshold = s->alarm_high_threshold;
+       if (!use_celsius)
+               threshold = celsius_to_fahrenheit(threshold);
+       gtk_spin_button_set_value(w_sensor_high_threshold, threshold);
+
+       threshold = s->alarm_low_threshold;
+       if (!use_celsius)
+               threshold = celsius_to_fahrenheit(threshold);
+       gtk_spin_button_set_value(w_sensor_low_threshold, threshold);
 
        gtk_toggle_button_set_active(w_appindicator_enabled,
-                                    p->appindicator_enabled);
+                                    config_is_appindicator_enabled(s->id));
+
+       gtk_toggle_button_set_active
+               (w_appindicator_label_enabled,
+                config_is_appindicator_label_enabled(s->id));
 
-       gtk_toggle_button_set_active(w_appindicator_label_enabled,
-                                    p->appindicator_label_enabled);
+       ignore_changes = false;
 }
 
-static void on_changed(GtkTreeSelection *selection, gpointer data)
+void
+ui_sensorpref_tree_selection_changed_cb(GtkTreeSelection *sel, gpointer data)
 {
-       struct cb_data *cbdata = data;
-       struct ui_psensor *ui = cbdata->ui;
-       struct sensor_pref *p;
-       GtkTreeView *tree;
-
-       tree = GTK_TREE_VIEW(gtk_builder_get_object(cbdata->builder,
-                                                   "sensors_list"));
-       p = get_selected_sensor_pref(tree);
-       update_pref(p, ui->config, cbdata->builder);
+       update_pref(get_selected_sensor());
 }
 
-static void
-select_sensor(struct psensor *s, struct psensor **sensors, GtkTreeView *tree)
+static void select_sensor(struct psensor *s, struct psensor **sensors)
 {
        struct psensor **s_cur;
        int i;
        GtkTreePath *p;
+       GtkTreeSelection *sel;
 
-       p = NULL;
        for (s_cur = sensors, i = 0; *s_cur; s_cur++, i++)
                if (s == *s_cur) {
                        p = gtk_tree_path_new_from_indices(i, -1);
-                       break;
-               }
+                       sel = gtk_tree_view_get_selection(w_sensors_list);
+                       gtk_tree_selection_select_path(sel, p);
 
-       if (p) {
-               GtkTreeSelection *s = gtk_tree_view_get_selection(tree);
+                       gtk_tree_path_free(p);
 
-               gtk_tree_selection_select_path(s, p);
-               gtk_tree_path_free(p);
-       }
+                       update_pref(s);
+                       break;
+               }
 }
 
-static void apply_pref(struct sensor_pref *p, int pos, struct config *cfg)
+static void quit(void)
 {
-       struct psensor *s;
-
-       s = p->sensor;
-
-       if (strcmp(p->name, s->name)) {
-               free(s->name);
-               s->name = strdup(p->name);
-               config_set_sensor_name(s->id, s->name);
-       }
-
-       if (s->graph_enabled != p->graph_enabled) {
-               s->graph_enabled = p->graph_enabled;
-               config_set_sensor_graph_enabled(s->id, s->graph_enabled);
-       }
-
-       if (is_temp_type(s->type) && cfg->temperature_unit == FAHRENHEIT) {
-               s->alarm_high_threshold
-                       = fahrenheit_to_celsius(p->alarm_high_threshold);
-               s->alarm_low_threshold
-                       = fahrenheit_to_celsius(p->alarm_low_threshold);
-       } else {
-               s->alarm_high_threshold = p->alarm_high_threshold;
-               s->alarm_low_threshold = p->alarm_low_threshold;
-       }
-
-       config_set_sensor_alarm_high_threshold(s->id, s->alarm_high_threshold);
-       config_set_sensor_alarm_low_threshold(s->id, s->alarm_low_threshold);
-
-       if (s->alarm_enabled != p->alarm_enabled) {
-               s->alarm_enabled = p->alarm_enabled;
-               config_set_sensor_alarm_enabled(s->id, s->alarm_enabled);
-       }
-
-       color_set(s->color,
-                 p->color->red,
-                 p->color->green,
-                 p->color->blue);
-       config_set_sensor_color(s->id, s->color);
-
-       if (s->appindicator_enabled != p->appindicator_enabled) {
-               s->appindicator_enabled = p->appindicator_enabled;
-               config_set_appindicator_enabled(s->id, s->appindicator_enabled);
-       }
-
-       config_set_appindicator_label_enabled(s->id,
-                                             p->appindicator_label_enabled);
-
-       config_set_sensor_position(s->id, pos);
-
-       config_set_sensor_enabled(s->id, p->display_enabled);
+       gtk_widget_destroy(GTK_WIDGET(w_dialog));
+       w_dialog = NULL;
 }
 
-static void apply_prefs(GtkTreeModel *model, struct config *cfg)
+static gboolean
+on_delete_event_cb(GtkWidget *widget, GdkEvent *event, gpointer data)
 {
-       gboolean valid;
-       struct sensor_pref *spref;
-       GtkTreeIter iter;
-       int i;
+       quit();
+       return TRUE;
+}
 
-       valid = gtk_tree_model_get_iter_first(model, &iter);
-       i = 0;
-       while (valid) {
-               gtk_tree_model_get(model, &iter, COL_SENSOR_PREF, &spref, -1);
-               apply_pref(spref, i, cfg);
-               valid = gtk_tree_model_iter_next(model, &iter);
-               i++;
-       }
-       config_sync();
+void ui_sensorpref_close_clicked_cb(GtkButton *btn, gpointer data)
+{
+       quit();
 }
 
-void ui_sensorpref_dialog_run(struct psensor *sensor, struct ui_psensor *ui)
+static GtkBuilder *load_ui(struct ui_psensor *ui)
 {
-       GtkDialog *diag;
-       gint result;
-       guint ok;
        GtkBuilder *builder;
        GError *error;
-       GtkTreeView *w_sensors_list;
-       GtkListStore *store;
-       struct psensor **s_cur, *s, **ordered_sensors;
-       GtkTreeSelection *selection;
-       struct cb_data cbdata;
-       GtkTreeIter iter;
-       struct sensor_pref *spref;
-       gboolean valid;
-       GtkTreeModel *model;
+       guint ok;
 
-       cbdata.ui = ui;
+       error = NULL;
 
        builder = gtk_builder_new();
-       cbdata.builder = builder;
-
-       error = NULL;
        ok = gtk_builder_add_from_file
                (builder,
                 PACKAGE_DATA_DIR G_DIR_SEPARATOR_S "sensor-edit.glade",
@@ -442,59 +422,100 @@ void ui_sensorpref_dialog_run(struct psensor *sensor, struct ui_psensor *ui)
        if (!ok) {
                log_printf(LOG_ERR, error->message);
                g_error_free(error);
-               return;
+               return NULL;
        }
 
-       w_sensors_list
-               = GTK_TREE_VIEW(gtk_builder_get_object(builder,
-                                                      "sensors_list"));
-       gtk_builder_connect_signals(builder, w_sensors_list);
+       w_sensors_list = GTK_TREE_VIEW
+               (gtk_builder_get_object(builder, "sensors_list"));
+       w_dialog = GTK_DIALOG(gtk_builder_get_object(builder, "dialog1"));
+       w_sensor_id = GTK_LABEL(gtk_builder_get_object(builder, "sensor_id"));
+       w_sensor_type = GTK_LABEL
+               (gtk_builder_get_object(builder, "sensor_type"));
+       w_sensor_name = GTK_ENTRY
+               (gtk_builder_get_object(builder, "sensor_name"));
+       w_sensor_chipname = GTK_LABEL
+               (gtk_builder_get_object(builder, "chip_name"));
+       w_sensor_min = GTK_LABEL
+               (gtk_builder_get_object(builder, "sensor_min"));
+       w_sensor_max = GTK_LABEL
+               (gtk_builder_get_object(builder, "sensor_max"));
+       w_sensor_draw = GTK_TOGGLE_BUTTON
+               (gtk_builder_get_object(builder, "sensor_draw"));
+       w_sensor_display = GTK_TOGGLE_BUTTON
+               (gtk_builder_get_object(builder, "sensor_enable_checkbox"));
+       w_sensor_color = GTK_COLOR_BUTTON
+               (gtk_builder_get_object(builder, "sensor_color"));
+       w_sensor_alarm = GTK_TOGGLE_BUTTON
+               (gtk_builder_get_object(builder, "sensor_alarm"));
+       w_sensor_high_threshold
+               = GTK_SPIN_BUTTON(gtk_builder_get_object
+                                 (builder, "sensor_alarm_high_threshold"));
+       w_sensor_low_threshold
+               = GTK_SPIN_BUTTON(gtk_builder_get_object
+                                 (builder, "sensor_alarm_low_threshold"));
+       w_sensor_high_threshold_unit
+               = GTK_LABEL(gtk_builder_get_object
+                           (builder, "sensor_alarm_high_threshold_unit"));
+       w_sensor_low_threshold_unit
+               = GTK_LABEL(gtk_builder_get_object
+                           (builder, "sensor_alarm_low_threshold_unit"));
+       w_appindicator_enabled = GTK_TOGGLE_BUTTON
+               (gtk_builder_get_object(builder, "indicator_checkbox"));
+       w_appindicator_label_enabled = GTK_TOGGLE_BUTTON
+               (gtk_builder_get_object(builder, "indicator_label_checkbox"));
 
        store = GTK_LIST_STORE(gtk_builder_get_object(builder,
                                                      "sensors_liststore"));
 
-       ordered_sensors = ui_get_sensors_ordered_by_position(ui);
+       gtk_window_set_transient_for(GTK_WINDOW(w_dialog),
+                                    GTK_WINDOW(ui->main_window));
+       gtk_builder_connect_signals(builder, ui);
+
+       g_signal_connect(w_dialog,
+                        "delete_event",
+                        G_CALLBACK(on_delete_event_cb),
+                        w_dialog);
+
+       return builder;
+}
+
+static void populate(struct psensor *sensor, struct psensor **sensors)
+{
+       GtkTreeIter iter;
+       struct psensor **s_cur, **ordered_sensors, *s;
+
+       gtk_list_store_clear(store);
+
+       ordered_sensors = ui_get_sensors_ordered_by_position(sensors);
        for (s_cur = ordered_sensors; *s_cur; s_cur++) {
                s = *s_cur;
                gtk_list_store_append(store, &iter);
 
-               spref = sensor_pref_new(s, ui->config);
                gtk_list_store_set(store, &iter,
                                   COL_NAME, s->name,
-                                  COL_SENSOR_PREF, spref,
+                                  COL_SENSOR_PREF, s,
                                   -1);
-
-               if (s == sensor)
-                       update_pref(spref, ui->config, builder);
        }
 
-       selection = gtk_tree_view_get_selection(w_sensors_list);
-       g_signal_connect(selection, "changed", G_CALLBACK(on_changed), &cbdata);
-       select_sensor(sensor, ordered_sensors, w_sensors_list);
+       select_sensor(sensor, ordered_sensors);
 
        free(ordered_sensors);
+}
 
-       diag = GTK_DIALOG(gtk_builder_get_object(builder, "dialog1"));
-       result = gtk_dialog_run(diag);
+void ui_sensorpref_dialog_run(struct psensor *sensor, struct ui_psensor *ui)
+{
+       GtkBuilder *builder;
 
-       model = gtk_tree_view_get_model(w_sensors_list);
+       if (w_dialog == NULL) {
+               builder = load_ui(ui);
 
-       if (result == GTK_RESPONSE_ACCEPT) {
-               apply_prefs(model, ui->config);
-               ui_sensorlist_update(ui, 1);
-#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
-               ui_appindicator_update_menu(ui);
-#endif
-       }
+               if (!builder)
+                       return;
 
-       valid = gtk_tree_model_get_iter_first(model, &iter);
-       while (valid) {
-               gtk_tree_model_get(model, &iter, COL_SENSOR_PREF, &spref, -1);
-               sensor_pref_free(spref);
-               valid = gtk_tree_model_iter_next(model, &iter);
+               g_object_unref(G_OBJECT(builder));
        }
 
-       g_object_unref(G_OBJECT(builder));
+       populate(sensor, ui->sensors);
 
-       gtk_widget_destroy(GTK_WIDGET(diag));
+       gtk_window_present(GTK_WINDOW(w_dialog));
 }
index e23c743..692dedc 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_UI_SENSORPREF_H_
 #define _PSENSOR_UI_SENSORPREF_H_
 
-#include "ui.h"
+#include <ui.h>
 
 void ui_sensorpref_dialog_run(struct psensor *sensor, struct ui_psensor *ui);
 
+void ui_sensorpref_name_changed_cb(GtkEntry *, gpointer);
+void ui_sensorpref_draw_toggled_cb(GtkToggleButton *, gpointer);
+void ui_sensorpref_display_toggled_cb(GtkToggleButton *, gpointer);
+void ui_sensorpref_alarm_toggled_cb(GtkToggleButton *, gpointer);
+void ui_sensorpref_appindicator_menu_toggled_cb(GtkToggleButton *, gpointer);
+void ui_sensorpref_appindicator_label_toggled_cb(GtkToggleButton *, gpointer);
+void ui_sensorpref_color_set_cb(GtkColorButton *, gpointer);
+void ui_sensorpref_alarm_high_threshold_changed_cb(GtkSpinButton *, gpointer);
+void ui_sensorpref_alarm_low_threshold_changed_cb(GtkSpinButton *, gpointer);
+void ui_sensorpref_tree_selection_changed_cb(GtkTreeSelection *, gpointer);
+void ui_sensorpref_close_clicked_cb(GtkButton *, gpointer);
+
 #endif
index 50dfc9c..22ba5c0 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -23,7 +23,7 @@ static const char *ICON = "psensor_normal";
 static const char *ATTENTION_ICON = "psensor_hot";
 
 static GtkStatusIcon *status;
-static unsigned status_attention;
+static unsigned int status_attention;
 
 static void cb_activate(GtkStatusIcon *icon,
                        gpointer data)
@@ -62,12 +62,12 @@ void ui_status_init(struct ui_psensor *ui)
                         ui);
 }
 
-int is_status_supported()
+int is_status_supported(void)
 {
        return status && gtk_status_icon_is_embedded(status);
 }
 
-void ui_status_cleanup()
+void ui_status_cleanup(void)
 {
        log_debug("ui_status_cleanup()");
 
index cd23300..8a59fd5 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #include <ui.h>
 
 void ui_status_init(struct ui_psensor *ui);
-void ui_status_cleanup();
+void ui_status_cleanup(void);
 void ui_status_update(struct ui_psensor *ui, unsigned int attention);
 /* Whether status icon is supported i.e. visible. */
-int is_status_supported();
+int is_status_supported(void);
 GtkStatusIcon *ui_status_get_icon(struct ui_psensor *ui);
 /* Whether the statuc icon should be visible.*/
 void ui_status_set_visible(unsigned int visible);
index 2c00403..b288447 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
  */
 #include <unity.h>
 
+#include <cfg.h>
 #include <temperature.h>
 #include <ui_unity.h>
 
-static int initialized;
 static UnityLauncherEntry *psensor_entry;
-static unsigned int last_visible = -1;
+static bool count_visible;
 
-void ui_unity_launcher_entry_update(struct psensor **sensors,
-                                   unsigned int show,
-                                   int use_celsius)
+static void
+count_visible_changed_cbk(GSettings *settings, gchar *key, gpointer data)
 {
-       double v;
-
-       if (!initialized) {
-               psensor_entry = unity_launcher_entry_get_for_desktop_file
-                       (PSENSOR_DESKTOP_FILE);
+       count_visible = config_is_count_visible();
 
+       if (count_visible) {
                unity_launcher_entry_set_count(psensor_entry, 0);
-               initialized = 1;
+               unity_launcher_entry_set_count_visible(psensor_entry, TRUE);
+       } else {
+               unity_launcher_entry_set_count_visible(psensor_entry, FALSE);
        }
+}
+
+static double get_max_current_value(struct psensor **sensors, unsigned int type)
+{
+       double m, v;
+       struct psensor *s;
+
+       m = UNKNOWN_DBL_VALUE;
+       while (*sensors) {
+               s = *sensors;
 
-       if (last_visible != show) {
-               if (show)
-                       unity_launcher_entry_set_count_visible(psensor_entry,
-                                                              TRUE);
-               else
-                       unity_launcher_entry_set_count_visible(psensor_entry,
-                                                              FALSE);
-               last_visible = show;
+               if ((s->type & type) && config_is_sensor_graph_enabled(s->id)) {
+                       v = psensor_get_current_value(s);
+
+                       if (m == UNKNOWN_DBL_VALUE || v > m)
+                               m = v;
+               }
+
+               sensors++;
        }
 
-       if (sensors && *sensors) {
-               v = psensor_get_max_current_value(sensors, SENSOR_TYPE_TEMP);
+       return m;
+}
+
+void ui_unity_launcher_entry_update(struct psensor **sensors)
+{
+       double v;
+
+       if (!count_visible || !sensors || !*sensors)
+               return;
+
+       v = get_max_current_value(sensors, SENSOR_TYPE_TEMP);
 
-               if (!use_celsius)
+       if (v != UNKNOWN_DBL_VALUE) {
+               if (config_get_temperature_unit() == FAHRENHEIT)
                        v = celsius_to_fahrenheit(v);
 
                unity_launcher_entry_set_count(psensor_entry, v);
        }
 }
+
+void ui_unity_init(void)
+{
+       psensor_entry = unity_launcher_entry_get_for_desktop_file
+               (PSENSOR_DESKTOP_FILE);
+
+       count_visible = config_is_count_visible();
+
+       if (count_visible) {
+               unity_launcher_entry_set_count(psensor_entry, 0);
+               unity_launcher_entry_set_count_visible(psensor_entry, TRUE);
+       } else {
+               unity_launcher_entry_set_count_visible(psensor_entry, FALSE);
+       }
+
+       g_signal_connect_after(config_get_GSettings(),
+                              "changed::interface-unity-launcher-count-disabled",
+                              G_CALLBACK(count_visible_changed_cbk),
+                              NULL);
+}
index d4c79a5..52e51d9 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2014 jeanfi@gmail.com
+ * Copyright (C) 2010-2016 jeanfi@gmail.com
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
 #ifndef _PSENSOR_UI_UNITY_H_
 #define _PSENSOR_UI_UNITY_H_
 
+#include <bool.h>
 #include <psensor.h>
 
-void ui_unity_launcher_entry_update(struct psensor **sensors,
-                                   unsigned int show,
-                                   int use_celsius);
+#if defined(HAVE_UNITY) && HAVE_UNITY
+
+static inline bool ui_unity_is_supported(void) { return true; }
+
+void ui_unity_launcher_entry_update(struct psensor **);
+
+void ui_unity_init(void);
+
+#else
+
+static inline bool ui_unity_is_supported(void) { return false; }
+
+static inline void
+ui_unity_launcher_entry_update(struct psensor **s) {}
+
+static inline void ui_unity_init(void) {}
+
+#endif
 
 #endif
index 9f59764..5bf8b1f 100644 (file)
@@ -1,10 +1,11 @@
 check-local: checkpatch.pl
-       find $(top_srcdir)/src -name \*.c -exec $(srcdir)/checkpatch.pl --ignore FUNCTION_WITHOUT_ARGS,SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
-       find $(top_srcdir)/src -name \*.h -exec $(srcdir)/checkpatch.pl --ignore FUNCTION_WITHOUT_ARGS,SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
+       find $(top_srcdir)/src -name \*.c -exec $(srcdir)/checkpatch.pl --ignore SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
+       find $(top_srcdir)/src -name \*.h -exec $(srcdir)/checkpatch.pl --ignore SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
 
 DEFS = -DPACKAGE_DATA_DIR=\"$(pkgdatadir)\" -DLOCALEDIR=\"$(localedir)\" @DEFS@
 
 EXTRA_DIST = checkpatch.pl \
+       spelling.txt \
        test-cppcheck.sh \
        test-io-dir-list.sh
 
index 215d0da..9b8d7f5 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -98,11 +88,16 @@ TESTS = test-io-dir-list.sh test-psensor-type-to-unit-str$(EXEEXT) \
        test-url-normalize$(EXEEXT) $(am__append_3)
 @CPPCHECK_TRUE@am__append_3 = test-cppcheck.sh
 subdir = tests
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/depcomp $(top_srcdir)/test-driver
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -399,8 +394,6 @@ TEST_LOGS = $(am__test_logs2:.test.log=.log)
 TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
 TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
        $(TEST_LOG_FLAGS)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp \
-       $(top_srcdir)/test-driver
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -430,7 +423,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -490,7 +482,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -505,7 +496,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -551,7 +541,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -561,6 +550,7 @@ top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 EXTRA_DIST = checkpatch.pl \
+       spelling.txt \
        test-cppcheck.sh \
        test-io-dir-list.sh
 
@@ -588,6 +578,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu tests/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -765,7 +756,7 @@ $(TEST_SUITE_LOG): $(TEST_LOGS)
        if test -n "$$am__remaking_logs"; then \
          echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
               "recursion detected" >&2; \
-       elif test -n "$$redo_logs"; then \
+       else \
          am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
        fi; \
        if $(am__make_dryrun); then :; else \
@@ -1087,11 +1078,9 @@ uninstall-am:
        mostlyclean-generic pdf pdf-am ps ps-am recheck tags tags-am \
        uninstall uninstall-am
 
-.PRECIOUS: Makefile
-
 check-local: checkpatch.pl
-       find $(top_srcdir)/src -name \*.c -exec $(srcdir)/checkpatch.pl --ignore FUNCTION_WITHOUT_ARGS,SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
-       find $(top_srcdir)/src -name \*.h -exec $(srcdir)/checkpatch.pl --ignore FUNCTION_WITHOUT_ARGS,SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
+       find $(top_srcdir)/src -name \*.c -exec $(srcdir)/checkpatch.pl --ignore SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
+       find $(top_srcdir)/src -name \*.h -exec $(srcdir)/checkpatch.pl --ignore SPLIT_STRING --show-types -q --no-tree  -emacs -f {} \;
 
 # 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.
index cab1691..4904ced 100755 (executable)
@@ -7,9 +7,12 @@
 
 use strict;
 use POSIX;
+use File::Basename;
+use Cwd 'abs_path';
+use Term::ANSIColor qw(:constants);
 
 my $P = $0;
-$P =~ s@.*/@@g;
+my $D = dirname(abs_path($P));
 
 my $V = '0.32';
 
@@ -22,13 +25,17 @@ my $chk_patch = 1;
 my $tst_only;
 my $emacs = 0;
 my $terse = 0;
+my $showfile = 0;
 my $file = 0;
+my $git = 0;
+my %git_commits = ();
 my $check = 0;
 my $check_orig = 0;
 my $summary = 1;
 my $mailback = 0;
 my $summary_file = 0;
 my $show_types = 0;
+my $list_types = 0;
 my $fix = 0;
 my $fix_inplace = 0;
 my $root;
@@ -43,6 +50,11 @@ my $configuration_file = ".checkpatch.conf";
 my $max_line_length = 80;
 my $ignore_perl_version = 0;
 my $minimum_perl_version = 5.10.0;
+my $min_conf_desc_length = 4;
+my $spelling_file = "$D/spelling.txt";
+my $codespell = 0;
+my $codespellfile = "/usr/share/codespell/dictionary.txt";
+my $color = 1;
 
 sub help {
        my ($exitcode) = @_;
@@ -58,12 +70,25 @@ Options:
   --patch                    treat FILE as patchfile (default)
   --emacs                    emacs compile window format
   --terse                    one line per report
+  --showfile                 emit diffed file position, not input file position
+  -g, --git                  treat FILE as a single commit or git revision range
+                             single git commit with:
+                               <rev>
+                               <rev>^
+                               <rev>~n
+                             multiple git commits with:
+                               <rev1>..<rev2>
+                               <rev1>...<rev2>
+                               <rev>-<count>
+                             git merges are ignored
   -f, --file                 treat FILE as regular source file
   --subjective, --strict     enable more subjective tests
+  --list-types               list the possible message types
   --types TYPE(,TYPE2...)    show only these comma separated message types
   --ignore TYPE(,TYPE2...)   ignore various comma separated message types
+  --show-types               show the specific message type in the output
   --max-line-length=n        set the maximum line length, if exceeded, warn
-  --show-types               show the message "types" in the output
+  --min-conf-desc-length=n   set the min description length, if shorter, warn
   --root=PATH                PATH to the kernel tree root
   --no-summary               suppress the per-file summary
   --mailback                 only produce a report in case of warnings/errors
@@ -83,6 +108,10 @@ Options:
                              file.  It's your fault if there's no backup or git
   --ignore-perl-version      override checking of perl version.  expect
                              runtime errors.
+  --codespell                Use the codespell dictionary for spelling/typos
+                             (default:/usr/share/codespell/dictionary.txt)
+  --codespellfile            Use this codespell dictionary
+  --color                    Use colors when output is STDOUT (default: on)
   -h, --help, --version      display this help and exit
 
 When FILE is - read standard input.
@@ -91,6 +120,37 @@ EOM
        exit($exitcode);
 }
 
+sub uniq {
+       my %seen;
+       return grep { !$seen{$_}++ } @_;
+}
+
+sub list_types {
+       my ($exitcode) = @_;
+
+       my $count = 0;
+
+       local $/ = undef;
+
+       open(my $script, '<', abs_path($P)) or
+           die "$P: Can't read '$P' $!\n";
+
+       my $text = <$script>;
+       close($script);
+
+       my @types = ();
+       for ($text =~ /\b(?:(?:CHK|WARN|ERROR)\s*\(\s*"([^"]+)")/g) {
+               push (@types, $_);
+       }
+       @types = sort(uniq(@types));
+       print("#\tMessage type\n\n");
+       foreach my $type (@types) {
+               print(++$count . "\t" . $type . "\n");
+       }
+
+       exit($exitcode);
+}
+
 my $conf = which_conf($configuration_file);
 if (-f $conf) {
        my @conf_args;
@@ -124,13 +184,17 @@ GetOptions(
        'patch!'        => \$chk_patch,
        'emacs!'        => \$emacs,
        'terse!'        => \$terse,
+       'showfile!'     => \$showfile,
        'f|file!'       => \$file,
+       'g|git!'        => \$git,
        'subjective!'   => \$check,
        'strict!'       => \$check,
        'ignore=s'      => \@ignore,
        'types=s'       => \@use,
        'show-types!'   => \$show_types,
+       'list-types!'   => \$list_types,
        'max-line-length=i' => \$max_line_length,
+       'min-conf-desc-length=i' => \$min_conf_desc_length,
        'root=s'        => \$root,
        'summary!'      => \$summary,
        'mailback!'     => \$mailback,
@@ -140,12 +204,17 @@ GetOptions(
        'ignore-perl-version!' => \$ignore_perl_version,
        'debug=s'       => \%debug,
        'test-only=s'   => \$tst_only,
+       'codespell!'    => \$codespell,
+       'codespellfile=s'       => \$codespellfile,
+       'color!'        => \$color,
        'h|help'        => \$help,
        'version'       => \$help
 ) or help(1);
 
 help(0) if ($help);
 
+list_types(0) if ($list_types);
+
 $fix = 1 if ($fix_inplace);
 $check_orig = $check;
 
@@ -183,12 +252,12 @@ sub hash_save_array_words {
 sub hash_show_words {
        my ($hashRef, $prefix) = @_;
 
-       if ($quiet == 0 && keys %$hashRef) {
-               print "NOTE: $prefix message types:";
+       if (keys %$hashRef) {
+               print "\nNOTE: $prefix message types:";
                foreach my $word (sort keys %$hashRef) {
                        print " $word";
                }
-               print "\n\n";
+               print "\n";
        }
 }
 
@@ -244,11 +313,13 @@ our $Sparse       = qr{
                        __kernel|
                        __force|
                        __iomem|
+                       __pmem|
                        __must_check|
                        __init_refok|
                        __kprobes|
                        __ref|
-                       __rcu
+                       __rcu|
+                       __private
                }x;
 our $InitAttributePrefix = qr{__(?:mem|cpu|dev|net_|)};
 our $InitAttributeData = qr{$InitAttributePrefix(?:initdata\b)};
@@ -272,6 +343,7 @@ our $Attribute      = qr{
                        __noreturn|
                        __used|
                        __cold|
+                       __pure|
                        __noclone|
                        __deprecated|
                        __read_mostly|
@@ -292,6 +364,7 @@ our $Binary = qr{(?i)0b[01]+$Int_type?};
 our $Hex       = qr{(?i)0x[0-9a-f]+$Int_type?};
 our $Int       = qr{[0-9]+$Int_type?};
 our $Octal     = qr{0[0-7]+$Int_type?};
+our $String    = qr{"[X\t]*"};
 our $Float_hex = qr{(?i)0x[0-9a-f]+p-?[0-9]+[fl]?};
 our $Float_dec = qr{(?i)(?:[0-9]+\.[0-9]*|[0-9]*\.[0-9]+)(?:e-?[0-9]+)?[fl]?};
 our $Float_int = qr{(?i)[0-9]+e-?[0-9]+[fl]?};
@@ -308,6 +381,7 @@ our $Operators      = qr{
 
 our $c90_Keywords = qr{do|for|while|if|else|return|goto|continue|switch|default|case|break}x;
 
+our $BasicType;
 our $NonptrType;
 our $NonptrTypeMisordered;
 our $NonptrTypeWithAttr;
@@ -331,10 +405,22 @@ our $UTF8 = qr{
        | $NON_ASCII_UTF8
 }x;
 
-our $typeTypedefs = qr{(?x:
+our $typeC99Typedefs = qr{(?:__)?(?:[us]_?)?int_?(?:8|16|32|64)_t};
+our $typeOtherOSTypedefs = qr{(?x:
+       u_(?:char|short|int|long) |          # bsd
+       u(?:nchar|short|int|long)            # sysv
+)};
+our $typeKernelTypedefs = qr{(?x:
        (?:__)?(?:u|s|be|le)(?:8|16|32|64)|
        atomic_t
 )};
+our $typeTypedefs = qr{(?x:
+       $typeC99Typedefs\b|
+       $typeOtherOSTypedefs\b|
+       $typeKernelTypedefs\b
+)};
+
+our $zero_initializer = qr{(?:(?:0[xX])?0+$Int_type?|NULL|false)\b};
 
 our $logFunctions = qr{(?x:
        printk(?:_ratelimited|_once|)|
@@ -397,6 +483,29 @@ our @typeList = (
        qr{${Ident}_handler_fn},
        @typeListMisordered,
 );
+
+our $C90_int_types = qr{(?x:
+       long\s+long\s+int\s+(?:un)?signed|
+       long\s+long\s+(?:un)?signed\s+int|
+       long\s+long\s+(?:un)?signed|
+       (?:(?:un)?signed\s+)?long\s+long\s+int|
+       (?:(?:un)?signed\s+)?long\s+long|
+       int\s+long\s+long\s+(?:un)?signed|
+       int\s+(?:(?:un)?signed\s+)?long\s+long|
+
+       long\s+int\s+(?:un)?signed|
+       long\s+(?:un)?signed\s+int|
+       long\s+(?:un)?signed|
+       (?:(?:un)?signed\s+)?long\s+int|
+       (?:(?:un)?signed\s+)?long|
+       int\s+long\s+(?:un)?signed|
+       int\s+(?:(?:un)?signed\s+)?long|
+
+       int\s+(?:un)?signed|
+       (?:(?:un)?signed\s+)?int
+)};
+
+our @typeListFile = ();
 our @typeListWithAttr = (
        @typeList,
        qr{struct\s+$InitAttribute\s+$Ident},
@@ -406,6 +515,7 @@ our @typeListWithAttr = (
 our @modifierList = (
        qr{fastcall},
 );
+our @modifierListFile = ();
 
 our @mode_permission_funcs = (
        ["module_param", 3],
@@ -423,18 +533,81 @@ foreach my $entry (@mode_permission_funcs) {
        $mode_perms_search .= $entry->[0];
 }
 
+our $mode_perms_world_writable = qr{
+       S_IWUGO         |
+       S_IWOTH         |
+       S_IRWXUGO       |
+       S_IALLUGO       |
+       0[0-7][0-7][2367]
+}x;
+
 our $allowed_asm_includes = qr{(?x:
        irq|
-       memory
+       memory|
+       time|
+       reboot
 )};
 # memory.h: ARM has a custom one
 
+# Load common spelling mistakes and build regular expression list.
+my $misspellings;
+my %spelling_fix;
+
+if (open(my $spelling, '<', $spelling_file)) {
+       while (<$spelling>) {
+               my $line = $_;
+
+               $line =~ s/\s*\n?$//g;
+               $line =~ s/^\s*//g;
+
+               next if ($line =~ m/^\s*#/);
+               next if ($line =~ m/^\s*$/);
+
+               my ($suspect, $fix) = split(/\|\|/, $line);
+
+               $spelling_fix{$suspect} = $fix;
+       }
+       close($spelling);
+} else {
+       warn "No typos will be found - file '$spelling_file': $!\n";
+}
+
+if ($codespell) {
+       if (open(my $spelling, '<', $codespellfile)) {
+               while (<$spelling>) {
+                       my $line = $_;
+
+                       $line =~ s/\s*\n?$//g;
+                       $line =~ s/^\s*//g;
+
+                       next if ($line =~ m/^\s*#/);
+                       next if ($line =~ m/^\s*$/);
+                       next if ($line =~ m/, disabled/i);
+
+                       $line =~ s/,.*$//;
+
+                       my ($suspect, $fix) = split(/->/, $line);
+
+                       $spelling_fix{$suspect} = $fix;
+               }
+               close($spelling);
+       } else {
+               warn "No codespell typos will be found - file '$codespellfile': $!\n";
+       }
+}
+
+$misspellings = join("|", sort keys %spelling_fix) if keys %spelling_fix;
+
 sub build_types {
-       my $mods = "(?x:  \n" . join("|\n  ", @modifierList) . "\n)";
-       my $all = "(?x:  \n" . join("|\n  ", @typeList) . "\n)";
+       my $mods = "(?x:  \n" . join("|\n  ", (@modifierList, @modifierListFile)) . "\n)";
+       my $all = "(?x:  \n" . join("|\n  ", (@typeList, @typeListFile)) . "\n)";
        my $Misordered = "(?x:  \n" . join("|\n  ", @typeListMisordered) . "\n)";
        my $allWithAttr = "(?x:  \n" . join("|\n  ", @typeListWithAttr) . "\n)";
        $Modifier       = qr{(?:$Attribute|$Sparse|$mods)};
+       $BasicType      = qr{
+                               (?:$typeTypedefs\b)|
+                               (?:${all}\b)
+               }x;
        $NonptrType     = qr{
                        (?:$Modifier\s+|const\s+)*
                        (?:
@@ -483,10 +656,10 @@ our $Typecast     = qr{\s*(\(\s*$NonptrType\s*\)){0,1}\s*};
 
 our $balanced_parens = qr/(\((?:[^\(\)]++|(?-1))*\))/;
 our $LvalOrFunc        = qr{((?:[\&\*]\s*)?$Lval)\s*($balanced_parens{0,1})\s*};
-our $FuncArg = qr{$Typecast{0,1}($LvalOrFunc|$Constant)};
+our $FuncArg = qr{$Typecast{0,1}($LvalOrFunc|$Constant|$String)};
 
 our $declaration_macros = qr{(?x:
-       (?:$Storage\s+)?(?:[A-Z_][A-Z0-9]*_){0,2}(?:DEFINE|DECLARE)(?:_[A-Z0-9]+){1,2}\s*\(|
+       (?:$Storage\s+)?(?:[A-Z_][A-Z0-9]*_){0,2}(?:DEFINE|DECLARE)(?:_[A-Z0-9]+){1,6}\s*\(|
        (?:$Storage\s+)?LIST_HEAD\s*\(|
        (?:$Storage\s+)?${Type}\s+uninitialized_var\s*\(
 )};
@@ -598,6 +771,8 @@ sub git_commit_info {
        $output =~ s/^\s*//gm;
        my @lines = split("\n", $output);
 
+       return ($id, $desc) if ($#lines < 0);
+
        if ($lines[0] =~ /^error: short SHA1 $commit is ambiguous\./) {
 # Maybe one day convert this block of bash into something that returns
 # all matching commit ids, but it's very slow...
@@ -626,10 +801,42 @@ my @fixed_inserted = ();
 my @fixed_deleted = ();
 my $fixlinenr = -1;
 
+# If input is git commits, extract all commits from the commit expressions.
+# For example, HEAD-3 means we need check 'HEAD, HEAD~1, HEAD~2'.
+die "$P: No git repository found\n" if ($git && !-e ".git");
+
+if ($git) {
+       my @commits = ();
+       foreach my $commit_expr (@ARGV) {
+               my $git_range;
+               if ($commit_expr =~ m/^(.*)-(\d+)$/) {
+                       $git_range = "-$2 $1";
+               } elsif ($commit_expr =~ m/\.\./) {
+                       $git_range = "$commit_expr";
+               } else {
+                       $git_range = "-1 $commit_expr";
+               }
+               my $lines = `git log --no-color --no-merges --pretty=format:'%H %s' $git_range`;
+               foreach my $line (split(/\n/, $lines)) {
+                       $line =~ /^([0-9a-fA-F]{40,40}) (.*)$/;
+                       next if (!defined($1) || !defined($2));
+                       my $sha1 = $1;
+                       my $subject = $2;
+                       unshift(@commits, $sha1);
+                       $git_commits{$sha1} = $subject;
+               }
+       }
+       die "$P: no git commits after extraction!\n" if (@commits == 0);
+       @ARGV = @commits;
+}
+
 my $vname;
 for my $filename (@ARGV) {
        my $FILE;
-       if ($file) {
+       if ($git) {
+               open($FILE, '-|', "git format-patch -M --stdout -1 $filename") ||
+                       die "$P: $filename: git format-patch failed - $!\n";
+       } elsif ($file) {
                open($FILE, '-|', "diff -u /dev/null $filename") ||
                        die "$P: $filename: diff failed - $!\n";
        } elsif ($filename eq '-') {
@@ -640,6 +847,8 @@ for my $filename (@ARGV) {
        }
        if ($filename eq '-') {
                $vname = 'Your patch';
+       } elsif ($git) {
+               $vname = "Commit " . substr($filename, 0, 12) . ' ("' . $git_commits{$filename} . '")';
        } else {
                $vname = $filename;
        }
@@ -648,6 +857,13 @@ for my $filename (@ARGV) {
                push(@rawlines, $_);
        }
        close($FILE);
+
+       if ($#ARGV > 0 && $quiet == 0) {
+               print '-' x length($vname) . "\n";
+               print "$vname\n";
+               print '-' x length($vname) . "\n";
+       }
+
        if (!process($filename)) {
                $exit = 1;
        }
@@ -657,6 +873,29 @@ for my $filename (@ARGV) {
        @fixed_inserted = ();
        @fixed_deleted = ();
        $fixlinenr = -1;
+       @modifierListFile = ();
+       @typeListFile = ();
+       build_types();
+}
+
+if (!$quiet) {
+       hash_show_words(\%use_type, "Used");
+       hash_show_words(\%ignore_type, "Ignored");
+
+       if ($^V lt 5.10.0) {
+               print << "EOM"
+
+NOTE: perl $^V is not modern enough to detect all possible issues.
+      An upgrade to at least perl v5.10.0 is suggested.
+EOM
+       }
+       if ($exit) {
+               print << "EOM"
+
+NOTE: If any of the errors are false positives, please report
+      them to the maintainer, see CHECKPATCH in MAINTAINERS.
+EOM
+       }
 }
 
 exit($exit);
@@ -912,7 +1151,7 @@ sub sanitise_line {
 sub get_quoted_string {
        my ($line, $rawline) = @_;
 
-       return "" if ($line !~ m/(\"[X]+\")/g);
+       return "" if ($line !~ m/($String)/g);
        return substr($rawline, $-[0], $+[0] - $-[0]);
 }
 
@@ -1521,13 +1760,13 @@ sub possible {
                        for my $modifier (split(' ', $possible)) {
                                if ($modifier !~ $notPermitted) {
                                        warn "MODIFIER: $modifier ($possible) ($line)\n" if ($dbg_possible);
-                                       push(@modifierList, $modifier);
+                                       push(@modifierListFile, $modifier);
                                }
                        }
 
                } else {
                        warn "POSSIBLE: $possible ($line)\n" if ($dbg_possible);
-                       push(@typeList, $possible);
+                       push(@typeListFile, $possible);
                }
                build_types();
        } else {
@@ -1552,15 +1791,32 @@ sub report {
            (defined $tst_only && $msg !~ /\Q$tst_only\E/)) {
                return 0;
        }
-       my $line;
+       my $output = '';
+       if (-t STDOUT && $color) {
+               if ($level eq 'ERROR') {
+                       $output .= RED;
+               } elsif ($level eq 'WARNING') {
+                       $output .= YELLOW;
+               } else {
+                       $output .= GREEN;
+               }
+       }
+       $output .= $prefix . $level . ':';
        if ($show_types) {
-               $line = "$prefix$level:$type: $msg\n";
-       } else {
-               $line = "$prefix$level: $msg\n";
+               $output .= BLUE if (-t STDOUT && $color);
+               $output .= "$type:";
+       }
+       $output .= RESET if (-t STDOUT && $color);
+       $output .= ' ' . $msg . "\n";
+
+       if ($showfile) {
+               my @lines = split("\n", $output, -1);
+               splice(@lines, 1, 1);
+               $output = join("\n", @lines);
        }
-       $line = (split('\n', $line))[0] . "\n" if ($terse);
+       $output = (split('\n', $output))[0] . "\n" if ($terse);
 
-       push(our @report, $line);
+       push(our @report, $output);
 
        return 1;
 }
@@ -1601,7 +1857,7 @@ sub fix_inserted_deleted_lines {
        foreach my $old_line (@{$linesRef}) {
                my $save_line = 1;
                my $line = $old_line;   #don't modify the array
-               if ($line =~ /^(?:\+\+\+\|\-\-\-)\s+\S+/) {     #new filename
+               if ($line =~ /^(?:\+\+\+|\-\-\-)\s+\S+/) {      #new filename
                        $delta_offset = 0;
                } elsif ($line =~ /^\@\@ -\d+,\d+ \+\d+,\d+ \@\@/) {    #new hunk
                        $range_last_linenr = $new_linenr;
@@ -1806,13 +2062,16 @@ sub process {
        our $clean = 1;
        my $signoff = 0;
        my $is_patch = 0;
-
        my $in_header_lines = $file ? 0 : 1;
        my $in_commit_log = 0;          #Scanning lines before patch
+       my $commit_log_possible_stack_dump = 0;
+       my $commit_log_long_line = 0;
+       my $commit_log_has_diff = 0;
        my $reported_maintainer_file = 0;
        my $non_utf8_charset = 0;
 
        my $last_blank_line = 0;
+       my $last_coalesced_string_linenr = -1;
 
        our @report = ();
        our $cnt_lines = 0;
@@ -1941,7 +2200,8 @@ sub process {
                my $rawline = $rawlines[$linenr - 1];
 
 #extract the line range in the file after the patch is applied
-               if ($line=~/^\@\@ -\d+(?:,\d+)? \+(\d+)(,(\d+))? \@\@/) {
+               if (!$in_commit_log &&
+                   $line =~ /^\@\@ -\d+(?:,\d+)? \+(\d+)(,(\d+))? \@\@/) {
                        $is_patch = 1;
                        $first_line = $linenr + 1;
                        $realline=$1-1;
@@ -1982,10 +2242,6 @@ sub process {
 
                my $hunk_line = ($realcnt != 0);
 
-#make up the handle for any error we report on this line
-               $prefix = "$filename:$realline: " if ($emacs && $file);
-               $prefix = "$filename:$linenr: " if ($emacs && !$file);
-
                $here = "#$linenr: " if (!$file);
                $here = "#$realline: " if ($file);
 
@@ -2015,8 +2271,19 @@ sub process {
                        $found_file = 1;
                }
 
+#make up the handle for any error we report on this line
+               if ($showfile) {
+                       $prefix = "$realfile:$realline: "
+               } elsif ($emacs) {
+                       if ($file) {
+                               $prefix = "$filename:$realline: ";
+                       } else {
+                               $prefix = "$filename:$linenr: ";
+                       }
+               }
+
                if ($found_file) {
-                       if ($realfile =~ m@^(drivers/net/|net/)@) {
+                       if ($realfile =~ m@^(?:drivers/net/|net/|drivers/staging/)@) {
                                $check = 1;
                        } else {
                                $check = $check_orig;
@@ -2032,6 +2299,17 @@ sub process {
 
                $cnt_lines++ if ($realcnt != 0);
 
+# Check if the commit log has what seems like a diff which can confuse patch
+               if ($in_commit_log && !$commit_log_has_diff &&
+                   (($line =~ m@^\s+diff\b.*a/[\w/]+@ &&
+                     $line =~ m@^\s+diff\b.*a/([\w/]+)\s+b/$1\b@) ||
+                    $line =~ m@^\s*(?:\-\-\-\s+a/|\+\+\+\s+b/)@ ||
+                    $line =~ m/^\s*\@\@ \-\d+,\d+ \+\d+,\d+ \@\@/)) {
+                       ERROR("DIFF_IN_COMMIT_MSG",
+                             "Avoid using diff content in the commit message - patch(1) might not work\n" . $herecurr);
+                       $commit_log_has_diff = 1;
+               }
+
 # Check for incorrect file permissions
                if ($line =~ /^new (file )?mode.*[7531]\d{0,2}$/) {
                        my $permhere = $here . "FILE: $realfile\n";
@@ -2048,6 +2326,12 @@ sub process {
                        $in_commit_log = 0;
                }
 
+# Check if MAINTAINERS is being updated.  If so, there's probably no need to
+# emit the "does MAINTAINERS need updating?" message on file add/move/delete
+               if ($line =~ /^\s*MAINTAINERS\s*\|/) {
+                       $reported_maintainer_file = 1;
+               }
+
 # Check signature styles
                if (!$in_header_lines &&
                    $line =~ /^(\s*)([a-z0-9_-]+by:|$signature_tags)(\s*)(.*)/i) {
@@ -2118,6 +2402,13 @@ sub process {
                        }
                }
 
+# Check email subject for common tools that don't need to be mentioned
+               if ($in_header_lines &&
+                   $line =~ /^Subject:.*\b(?:checkpatch|sparse|smatch)\b[^:]/i) {
+                       WARN("EMAIL_SUBJECT",
+                            "A patch subject line should describe the change not the tool that found it\n" . $herecurr);
+               }
+
 # Check for old stable address
                if ($line =~ /^\s*cc:\s*.*<?\bstable\@kernel\.org\b>?.*$/i) {
                        ERROR("STABLE_ADDRESS",
@@ -2130,21 +2421,92 @@ sub process {
                              "Remove Gerrit Change-Id's before submitting upstream.\n" . $herecurr);
                }
 
-# Check for improperly formed commit descriptions
-               if ($in_commit_log &&
-                   $line =~ /\bcommit\s+[0-9a-f]{5,}/i &&
-                   !($line =~ /\b[Cc]ommit [0-9a-f]{12,40} \("/ ||
-                     ($line =~ /\b[Cc]ommit [0-9a-f]{12,40}\s*$/ &&
-                      defined $rawlines[$linenr] &&
-                      $rawlines[$linenr] =~ /^\s*\("/))) {
-                       $line =~ /\b(c)ommit\s+([0-9a-f]{5,})/i;
-                       my $init_char = $1;
-                       my $orig_commit = lc($2);
-                       my $id = '01234567890ab';
-                       my $desc = 'commit description';
-                       ($id, $desc) = git_commit_info($orig_commit, $id, $desc);
-                       ERROR("GIT_COMMIT_ID",
-                             "Please use 12 or more chars for the git commit ID like: '${init_char}ommit $id (\"$desc\")'\n" . $herecurr);
+# Check if the commit log is in a possible stack dump
+               if ($in_commit_log && !$commit_log_possible_stack_dump &&
+                   ($line =~ /^\s*(?:WARNING:|BUG:)/ ||
+                    $line =~ /^\s*\[\s*\d+\.\d{6,6}\s*\]/ ||
+                                       # timestamp
+                    $line =~ /^\s*\[\<[0-9a-fA-F]{8,}\>\]/)) {
+                                       # stack dump address
+                       $commit_log_possible_stack_dump = 1;
+               }
+
+# Check for line lengths > 75 in commit log, warn once
+               if ($in_commit_log && !$commit_log_long_line &&
+                   length($line) > 75 &&
+                   !($line =~ /^\s*[a-zA-Z0-9_\/\.]+\s+\|\s+\d+/ ||
+                                       # file delta changes
+                     $line =~ /^\s*(?:[\w\.\-]+\/)++[\w\.\-]+:/ ||
+                                       # filename then :
+                     $line =~ /^\s*(?:Fixes:|Link:)/i ||
+                                       # A Fixes: or Link: line
+                     $commit_log_possible_stack_dump)) {
+                       WARN("COMMIT_LOG_LONG_LINE",
+                            "Possible unwrapped commit description (prefer a maximum 75 chars per line)\n" . $herecurr);
+                       $commit_log_long_line = 1;
+               }
+
+# Reset possible stack dump if a blank line is found
+               if ($in_commit_log && $commit_log_possible_stack_dump &&
+                   $line =~ /^\s*$/) {
+                       $commit_log_possible_stack_dump = 0;
+               }
+
+# Check for git id commit length and improperly formed commit descriptions
+               if ($in_commit_log && !$commit_log_possible_stack_dump &&
+                   $line !~ /^\s*(?:Link|Patchwork|http|BugLink):/i &&
+                   ($line =~ /\bcommit\s+[0-9a-f]{5,}\b/i ||
+                    ($line =~ /\b[0-9a-f]{12,40}\b/i &&
+                     $line !~ /[\<\[][0-9a-f]{12,40}[\>\]]/i &&
+                     $line !~ /\bfixes:\s*[0-9a-f]{12,40}/i))) {
+                       my $init_char = "c";
+                       my $orig_commit = "";
+                       my $short = 1;
+                       my $long = 0;
+                       my $case = 1;
+                       my $space = 1;
+                       my $hasdesc = 0;
+                       my $hasparens = 0;
+                       my $id = '0123456789ab';
+                       my $orig_desc = "commit description";
+                       my $description = "";
+
+                       if ($line =~ /\b(c)ommit\s+([0-9a-f]{5,})\b/i) {
+                               $init_char = $1;
+                               $orig_commit = lc($2);
+                       } elsif ($line =~ /\b([0-9a-f]{12,40})\b/i) {
+                               $orig_commit = lc($1);
+                       }
+
+                       $short = 0 if ($line =~ /\bcommit\s+[0-9a-f]{12,40}/i);
+                       $long = 1 if ($line =~ /\bcommit\s+[0-9a-f]{41,}/i);
+                       $space = 0 if ($line =~ /\bcommit [0-9a-f]/i);
+                       $case = 0 if ($line =~ /\b[Cc]ommit\s+[0-9a-f]{5,40}[^A-F]/);
+                       if ($line =~ /\bcommit\s+[0-9a-f]{5,}\s+\("([^"]+)"\)/i) {
+                               $orig_desc = $1;
+                               $hasparens = 1;
+                       } elsif ($line =~ /\bcommit\s+[0-9a-f]{5,}\s*$/i &&
+                                defined $rawlines[$linenr] &&
+                                $rawlines[$linenr] =~ /^\s*\("([^"]+)"\)/) {
+                               $orig_desc = $1;
+                               $hasparens = 1;
+                       } elsif ($line =~ /\bcommit\s+[0-9a-f]{5,}\s+\("[^"]+$/i &&
+                                defined $rawlines[$linenr] &&
+                                $rawlines[$linenr] =~ /^\s*[^"]+"\)/) {
+                               $line =~ /\bcommit\s+[0-9a-f]{5,}\s+\("([^"]+)$/i;
+                               $orig_desc = $1;
+                               $rawlines[$linenr] =~ /^\s*([^"]+)"\)/;
+                               $orig_desc .= " " . $1;
+                               $hasparens = 1;
+                       }
+
+                       ($id, $description) = git_commit_info($orig_commit,
+                                                             $id, $orig_desc);
+
+                       if ($short || $long || $space || $case || ($orig_desc ne $description) || !$hasparens) {
+                               ERROR("GIT_COMMIT_ID",
+                                     "Please use git commit description style 'commit <12+ chars of sha1> (\"<title line>\")' - ie: '${init_char}ommit $id (\"$description\")'\n" . $herecurr);
+                       }
                }
 
 # Check for added, moved or deleted files
@@ -2215,6 +2577,24 @@ sub process {
                            "8-bit UTF-8 used in possible commit log\n" . $herecurr);
                }
 
+# Check for various typo / spelling mistakes
+               if (defined($misspellings) &&
+                   ($in_commit_log || $line =~ /^(?:\+|Subject:)/i)) {
+                       while ($rawline =~ /(?:^|[^a-z@])($misspellings)(?:\b|$|[^a-z@])/gi) {
+                               my $typo = $1;
+                               my $typo_fix = $spelling_fix{lc($typo)};
+                               $typo_fix = ucfirst($typo_fix) if ($typo =~ /^[A-Z]/);
+                               $typo_fix = uc($typo_fix) if ($typo =~ /^[A-Z]+$/);
+                               my $msg_type = \&WARN;
+                               $msg_type = \&CHK if ($file);
+                               if (&{$msg_type}("TYPO_SPELLING",
+                                                "'$typo' may be misspelled - perhaps '$typo_fix'?\n" . $herecurr) &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s/(^|[^A-Za-z@])($typo)($|[^A-Za-z@])/$1$typo_fix$3/;
+                               }
+                       }
+               }
+
 # ignore non-hunk lines and lines being removed
                next if (!$hunk_line || $line =~ /^-/);
 
@@ -2283,8 +2663,10 @@ sub process {
                                }
                                $length++;
                        }
-                       WARN("CONFIG_DESCRIPTION",
-                            "please write a paragraph that describes the config symbol fully\n" . $herecurr) if ($is_start && $is_end && $length < 4);
+                       if ($is_start && $is_end && $length < $min_conf_desc_length) {
+                               WARN("CONFIG_DESCRIPTION",
+                                    "please write a paragraph that describes the config symbol fully\n" . $herecurr);
+                       }
                        #print "is_start<$is_start> is_end<$is_end> length<$length>\n";
                }
 
@@ -2295,6 +2677,13 @@ sub process {
                             "Use of CONFIG_EXPERIMENTAL is deprecated. For alternatives, see https://lkml.org/lkml/2012/10/23/580\n");
                }
 
+# discourage the use of boolean for type definition attributes of Kconfig options
+               if ($realfile =~ /Kconfig/ &&
+                   $line =~ /^\+\s*\bboolean\b/) {
+                       WARN("CONFIG_TYPE_BOOLEAN",
+                            "Use of boolean is deprecated, please use bool instead.\n" . $herecurr);
+               }
+
                if (($realfile =~ /Makefile.*/ || $realfile =~ /Kbuild.*/) &&
                    ($line =~ /\+(EXTRA_[A-Z]+FLAGS).*/)) {
                        my $flag = $1;
@@ -2341,44 +2730,58 @@ sub process {
                }
 
 # check we are in a valid source file if not then ignore this hunk
-               next if ($realfile !~ /\.(h|c|s|S|pl|sh)$/);
-
-#line length limit
-               if ($line =~ /^\+/ && $prevrawline !~ /\/\*\*/ &&
-                   $rawline !~ /^.\s*\*\s*\@$Ident\s/ &&
-                   !($line =~ /^\+\s*$logFunctions\s*\(\s*(?:(KERN_\S+\s*|[^"]*))?"[X\t]*"\s*(?:|,|\)\s*;)\s*$/ ||
-                   $line =~ /^\+\s*"[^"]*"\s*(?:\s*|,|\)\s*;)\s*$/) &&
-                   $length > $max_line_length)
-               {
-                       WARN("LONG_LINE",
-                            "line over $max_line_length characters\n" . $herecurr);
-               }
+               next if ($realfile !~ /\.(h|c|s|S|pl|sh|dtsi|dts)$/);
 
-# Check for user-visible strings broken across lines, which breaks the ability
-# to grep for the string.  Make exceptions when the previous string ends in a
-# newline (multiple lines in one string constant) or '\t', '\r', ';', or '{'
-# (common in inline assembly) or is a octal \123 or hexadecimal \xaf value
-               if ($line =~ /^\+\s*"/ &&
-                   $prevline =~ /"\s*$/ &&
-                   $prevrawline !~ /(?:\\(?:[ntr]|[0-7]{1,3}|x[0-9a-fA-F]{1,2})|;\s*|\{\s*)"\s*$/) {
-                       WARN("SPLIT_STRING",
-                            "quoted string split across lines\n" . $hereprev);
-               }
+# line length limit (with some exclusions)
+#
+# There are a few types of lines that may extend beyond $max_line_length:
+#      logging functions like pr_info that end in a string
+#      lines with a single string
+#      #defines that are a single string
+#
+# There are 3 different line length message types:
+# LONG_LINE_COMMENT    a comment starts before but extends beyond $max_linelength
+# LONG_LINE_STRING     a string starts before but extends beyond $max_line_length
+# LONG_LINE            all other lines longer than $max_line_length
+#
+# if LONG_LINE is ignored, the other 2 types are also ignored
+#
 
-# check for missing a space in a string concatination
-               if ($prevrawline =~ /[^\\]\w"$/ && $rawline =~ /^\+[\t ]+"\w/) {
-                       WARN('MISSING_SPACE',
-                            "break quoted strings at a space character\n" . $hereprev);
-               }
+               if ($line =~ /^\+/ && $length > $max_line_length) {
+                       my $msg_type = "LONG_LINE";
 
-# check for spaces before a quoted newline
-               if ($rawline =~ /^.*\".*\s\\n/) {
-                       if (WARN("QUOTED_WHITESPACE_BEFORE_NEWLINE",
-                                "unnecessary whitespace before a quoted newline\n" . $herecurr) &&
-                           $fix) {
-                               $fixed[$fixlinenr] =~ s/^(\+.*\".*)\s+\\n/$1\\n/;
+                       # Check the allowed long line types first
+
+                       # logging functions that end in a string that starts
+                       # before $max_line_length
+                       if ($line =~ /^\+\s*$logFunctions\s*\(\s*(?:(?:KERN_\S+\s*|[^"]*))?($String\s*(?:|,|\)\s*;)\s*)$/ &&
+                           length(expand_tabs(substr($line, 1, length($line) - length($1) - 1))) <= $max_line_length) {
+                               $msg_type = "";
+
+                       # lines with only strings (w/ possible termination)
+                       # #defines with only strings
+                       } elsif ($line =~ /^\+\s*$String\s*(?:\s*|,|\)\s*;)\s*$/ ||
+                                $line =~ /^\+\s*#\s*define\s+\w+\s+$String$/) {
+                               $msg_type = "";
+
+                       # Otherwise set the alternate message types
+
+                       # a comment starts before $max_line_length
+                       } elsif ($line =~ /($;[\s$;]*)$/ &&
+                                length(expand_tabs(substr($line, 1, length($line) - length($1) - 1))) <= $max_line_length) {
+                               $msg_type = "LONG_LINE_COMMENT"
+
+                       # a quoted string starts before $max_line_length
+                       } elsif ($sline =~ /\s*($String(?:\s*(?:\\|,\s*|\)\s*;\s*))?)$/ &&
+                                length(expand_tabs(substr($line, 1, length($line) - length($1) - 1))) <= $max_line_length) {
+                               $msg_type = "LONG_LINE_STRING"
                        }
 
+                       if ($msg_type ne "" &&
+                           (show_type("LONG_LINE") || show_type($msg_type))) {
+                               WARN($msg_type,
+                                    "line over $max_line_length characters\n" . $herecurr);
+                       }
                }
 
 # check for adding lines without a newline.
@@ -2402,7 +2805,7 @@ sub process {
                }
 
 # check we are in a valid source file C or perl if not then ignore this hunk
-               next if ($realfile !~ /\.(h|c|pl)$/);
+               next if ($realfile !~ /\.(h|c|pl|dtsi|dts)$/);
 
 # at the beginning of a line any tabs must come first and anything
 # more than 8 must use tabs.
@@ -2436,6 +2839,19 @@ sub process {
                            "Logical continuations should be on the previous line\n" . $hereprev);
                }
 
+# check indentation starts on a tab stop
+               if ($^V && $^V ge 5.10.0 &&
+                   $sline =~ /^\+\t+( +)(?:$c90_Keywords\b|\{\s*$|\}\s*(?:else\b|while\b|\s*$))/) {
+                       my $indent = length($1);
+                       if ($indent % 8) {
+                               if (WARN("TABSTOP",
+                                        "Statements should start on a tabstop\n" . $herecurr) &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s@(^\+\t+) +@$1 . "\t" x ($indent/8)@e;
+                               }
+                       }
+               }
+
 # check multi-line statement indentation matches previous line
                if ($^V && $^V ge 5.10.0 &&
                    $prevline =~ /^\+([ \t]*)((?:$c90_Keywords(?:\s+if)\s*)|(?:$Declare\s*)?(?:$Ident|\(\s*\*\s*$Ident\s*\))\s*|$Ident\s*=\s*$Ident\s*)\(.*(\&\&|\|\||,)\s*$/) {
@@ -2466,7 +2882,15 @@ sub process {
                        }
                }
 
-               if ($line =~ /^\+.*\(\s*$Type\s*\)[ \t]+(?!$Assignment|$Arithmetic|{)/) {
+# check for space after cast like "(int) foo" or "(struct foo) bar"
+# avoid checking a few false positives:
+#   "sizeof(<type>)" or "__alignof__(<type>)"
+#   function pointer declarations like "(*foo)(int) = bar;"
+#   structure definitions like "(struct foo) { 0 };"
+#   multiline macros that define functions
+#   known attributes or the __attribute__ keyword
+               if ($line =~ /^\+(.*)\(\s*$Type\s*\)([ \t]++)((?![={]|\\$|$Attribute|__attribute__))/ &&
+                   (!defined($1) || $1 !~ /\b(?:sizeof|__alignof__)\s*$/)) {
                        if (CHK("SPACING",
                                "No space is necessary after a cast\n" . $herecurr) &&
                            $fix) {
@@ -2475,6 +2899,8 @@ sub process {
                        }
                }
 
+# Block comment styles
+# Networking with an initial /*
                if ($realfile =~ m@^(drivers/net/|net/)@ &&
                    $prevrawline =~ /^\+[ \t]*\/\*[ \t]*$/ &&
                    $rawline =~ /^\+[ \t]*\*/ &&
@@ -2483,22 +2909,23 @@ sub process {
                             "networking block comments don't use an empty /* line, use /* Comment...\n" . $hereprev);
                }
 
-               if ($realfile =~ m@^(drivers/net/|net/)@ &&
-                   $prevrawline =~ /^\+[ \t]*\/\*/ &&          #starting /*
+# Block comments use * on subsequent lines
+               if ($prevline =~ /$;[ \t]*$/ &&                 #ends in comment
+                   $prevrawline =~ /^\+.*?\/\*/ &&             #starting /*
                    $prevrawline !~ /\*\/[ \t]*$/ &&            #no trailing */
                    $rawline =~ /^\+/ &&                        #line is new
                    $rawline !~ /^\+[ \t]*\*/) {                #no leading *
-                       WARN("NETWORKING_BLOCK_COMMENT_STYLE",
-                            "networking block comments start with * on subsequent lines\n" . $hereprev);
+                       WARN("BLOCK_COMMENT_STYLE",
+                            "Block comments use * on subsequent lines\n" . $hereprev);
                }
 
-               if ($realfile =~ m@^(drivers/net/|net/)@ &&
-                   $rawline !~ m@^\+[ \t]*\*/[ \t]*$@ &&       #trailing */
+# Block comments use */ on trailing lines
+               if ($rawline !~ m@^\+[ \t]*\*/[ \t]*$@ &&       #trailing */
                    $rawline !~ m@^\+.*/\*.*\*/[ \t]*$@ &&      #inline /*...*/
                    $rawline !~ m@^\+.*\*{2,}/[ \t]*$@ &&       #trailing **/
                    $rawline =~ m@^\+[ \t]*.+\*\/[ \t]*$@) {    #non blank */
-                       WARN("NETWORKING_BLOCK_COMMENT_STYLE",
-                            "networking block comments put the trailing */ on a separate line\n" . $herecurr);
+                       WARN("BLOCK_COMMENT_STYLE",
+                            "Block comments use a trailing */ on a separate line\n" . $herecurr);
                }
 
 # check for missing blank lines after struct/union declarations
@@ -2592,10 +3019,14 @@ sub process {
                next if ($realfile !~ /\.(h|c)$/);
 
 # check indentation of any line with a bare else
+# (but not if it is a multiple line "if (foo) return bar; else return baz;")
 # if the previous line is a break or return and is indented 1 tab more...
                if ($sline =~ /^\+([\t]+)(?:}[ \t]*)?else(?:[ \t]*{)?\s*$/) {
                        my $tabs = length($1) + 1;
-                       if ($prevline =~ /^\+\t{$tabs,$tabs}(?:break|return)\b/) {
+                       if ($prevline =~ /^\+\t{$tabs,$tabs}break\b/ ||
+                           ($prevline =~ /^\+\t{$tabs,$tabs}return\b/ &&
+                            defined $lines[$linenr] &&
+                            $lines[$linenr] !~ /^[ \+]\t{$tabs,$tabs}return/)) {
                                WARN("UNNECESSARY_ELSE",
                                     "else is not generally useful after a break or return\n" . $hereprev);
                        }
@@ -2800,15 +3231,22 @@ sub process {
 
                        substr($s, 0, length($c), '');
 
-                       # Make sure we remove the line prefixes as we have
-                       # none on the first line, and are going to readd them
-                       # where necessary.
-                       $s =~ s/\n./\n/gs;
+                       # remove inline comments
+                       $s =~ s/$;/ /g;
+                       $c =~ s/$;/ /g;
 
                        # Find out how long the conditional actually is.
                        my @newlines = ($c =~ /\n/gs);
                        my $cond_lines = 1 + $#newlines;
 
+                       # Make sure we remove the line prefixes as we have
+                       # none on the first line, and are going to readd them
+                       # where necessary.
+                       $s =~ s/\n./\n/gs;
+                       while ($s =~ /\n\s+\\\n/) {
+                               $cond_lines += $s =~ s/\n\s+\\\n/\n/g;
+                       }
+
                        # We want to check the first line inside the block
                        # starting at the end of the conditional, so remove:
                        #  1) any blank line termination
@@ -2874,8 +3312,10 @@ sub process {
 
                        #print "line<$line> prevline<$prevline> indent<$indent> sindent<$sindent> check<$check> continuation<$continuation> s<$s> cond_lines<$cond_lines> stat_real<$stat_real> stat<$stat>\n";
 
-                       if ($check && (($sindent % 8) != 0 ||
-                           ($sindent <= $indent && $s ne ''))) {
+                       if ($check && $s ne '' &&
+                           (($sindent % 8) != 0 ||
+                            ($sindent < $indent) ||
+                            ($sindent > $indent + 8))) {
                                WARN("SUSPECT_CODE_INDENT",
                                     "suspect code indent for conditional statements ($indent, $sindent)\n" . $herecurr . "$stat_real\n");
                        }
@@ -2897,6 +3337,30 @@ sub process {
 #ignore lines not being added
                next if ($line =~ /^[^\+]/);
 
+# check for declarations of signed or unsigned without int
+               while ($line =~ m{($Declare)\s*(?!char\b|short\b|int\b|long\b)\s*($Ident)?\s*[=,;\[\)\(]}g) {
+                       my $type = $1;
+                       my $var = $2;
+                       $var = "" if (!defined $var);
+                       if ($type =~ /^(?:(?:$Storage|$Inline|$Attribute)\s+)*((?:un)?signed)((?:\s*\*)*)\s*$/) {
+                               my $sign = $1;
+                               my $pointer = $2;
+
+                               $pointer = "" if (!defined $pointer);
+
+                               if (WARN("UNSPECIFIED_INT",
+                                        "Prefer '" . trim($sign) . " int" . rtrim($pointer) . "' to bare use of '$sign" . rtrim($pointer) . "'\n" . $herecurr) &&
+                                   $fix) {
+                                       my $decl = trim($sign) . " int ";
+                                       my $comp_pointer = $pointer;
+                                       $comp_pointer =~ s/\s//g;
+                                       $decl .= $comp_pointer;
+                                       $decl = rtrim($decl) if ($var eq "");
+                                       $fixed[$fixlinenr] =~ s@\b$sign\s*\Q$pointer\E\s*$var\b@$decl$var@;
+                               }
+                       }
+               }
+
 # TEST: allow direct testing of the type matcher.
                if ($dbg_type) {
                        if ($line =~ /^.\s*$Declare\s*$/) {
@@ -3016,21 +3480,20 @@ sub process {
                }
 
 # check for global initialisers.
-               if ($line =~ /^\+(\s*$Type\s*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL|false)\s*;/) {
+               if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*($zero_initializer)\s*;/) {
                        if (ERROR("GLOBAL_INITIALISERS",
-                                 "do not initialise globals to 0 or NULL\n" .
-                                     $herecurr) &&
+                                 "do not initialise globals to $1\n" . $herecurr) &&
                            $fix) {
-                               $fixed[$fixlinenr] =~ s/($Type\s*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL|false)\s*;/$1;/;
+                               $fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*$zero_initializer\s*;/$1;/;
                        }
                }
 # check for static initialisers.
-               if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
+               if ($line =~ /^\+.*\bstatic\s.*=\s*($zero_initializer)\s*;/) {
                        if (ERROR("INITIALISED_STATIC",
-                                 "do not initialise statics to 0 or NULL\n" .
+                                 "do not initialise statics to $1\n" .
                                      $herecurr) &&
                            $fix) {
-                               $fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
+                               $fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*$zero_initializer\s*;/$1;/;
                        }
                }
 
@@ -3055,6 +3518,18 @@ sub process {
                                $herecurr);
                }
 
+# check for const <foo> const where <foo> is not a pointer or array type
+               if ($sline =~ /\bconst\s+($BasicType)\s+const\b/) {
+                       my $found = $1;
+                       if ($sline =~ /\bconst\s+\Q$found\E\s+const\b\s*\*/) {
+                               WARN("CONST_CONST",
+                                    "'const $found const *' should probably be 'const $found * const'\n" . $herecurr);
+                       } elsif ($sline !~ /\bconst\s+\Q$found\E\s+const\s+\w+\s*\[/) {
+                               WARN("CONST_CONST",
+                                    "'const $found const' should probably be 'const $found'\n" . $herecurr);
+                       }
+               }
+
 # check for non-global char *foo[] = {"bar", ...} declarations.
                if ($line =~ /^.\s+(?:static\s+|const\s+)?char\s+\*\s*\w+\s*\[\s*\]\s*=\s*\{/) {
                        WARN("STATIC_CONST_CHAR_ARRAY",
@@ -3062,6 +3537,19 @@ sub process {
                                $herecurr);
                }
 
+# check for sizeof(foo)/sizeof(foo[0]) that could be ARRAY_SIZE(foo)
+               if ($line =~ m@\bsizeof\s*\(\s*($Lval)\s*\)@) {
+                       my $array = $1;
+                       if ($line =~ m@\b(sizeof\s*\(\s*\Q$array\E\s*\)\s*/\s*sizeof\s*\(\s*\Q$array\E\s*\[\s*0\s*\]\s*\))@) {
+                               my $array_div = $1;
+                               if (WARN("ARRAY_SIZE",
+                                        "Prefer ARRAY_SIZE($array)\n" . $herecurr) &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s/\Q$array_div\E/ARRAY_SIZE($array)/;
+                               }
+                       }
+               }
+
 # check for function declarations without arguments like "int foo()"
                if ($line =~ /(\b$Type\s+$Ident)\s*\(\s*\)/) {
                        if (ERROR("FUNCTION_WITHOUT_ARGS",
@@ -3147,13 +3635,15 @@ sub process {
                        }
                }
 
-# # no BUG() or BUG_ON()
-#              if ($line =~ /\b(BUG|BUG_ON)\b/) {
-#                      print "Try to use WARN_ON & Recovery code rather than BUG() or BUG_ON()\n";
-#                      print "$herecurr";
-#                      $clean = 0;
-#              }
+# avoid BUG() or BUG_ON()
+               if ($line =~ /\b(?:BUG|BUG_ON)\b/) {
+                       my $msg_type = \&WARN;
+                       $msg_type = \&CHK if ($file);
+                       &{$msg_type}("AVOID_BUG",
+                                    "Avoid crashing the kernel - try using WARN_ON & recovery code rather than BUG() or BUG_ON()\n" . $herecurr);
+               }
 
+# avoid LINUX_VERSION_CODE
                if ($line =~ /\bLINUX_VERSION_CODE\b/) {
                        WARN("LINUX_VERSION_CODE",
                             "LINUX_VERSION_CODE should be avoided, code should be for the version to which it is merged\n" . $herecurr);
@@ -3162,7 +3652,7 @@ sub process {
 # check for uses of printk_ratelimit
                if ($line =~ /\bprintk_ratelimit\s*\(/) {
                        WARN("PRINTK_RATELIMITED",
-"Prefer printk_ratelimited or pr_<level>_ratelimited to printk_ratelimit\n" . $herecurr);
+                            "Prefer printk_ratelimited or pr_<level>_ratelimited to printk_ratelimit\n" . $herecurr);
                }
 
 # printk should use KERN_* levels.  Note that follow on printk's on the
@@ -3217,10 +3707,18 @@ sub process {
                             "Prefer dev_$level(... to dev_printk(KERN_$orig, ...\n" . $herecurr);
                }
 
+# ENOSYS means "bad syscall nr" and nothing else.  This will have a small
+# number of false positives, but assembly files are not checked, so at
+# least the arch entry code will not trigger this warning.
+               if ($line =~ /\bENOSYS\b/) {
+                       WARN("ENOSYS",
+                            "ENOSYS means 'invalid syscall nr' and nothing else\n" . $herecurr);
+               }
+
 # function brace can't be on same line, except for #defines of do while,
 # or if closed on same line
                if (($line=~/$Type\s*$Ident\(.*\).*\s*{/) and
-                   !($line=~/\#\s*define.*do\s{/) and !($line=~/}/)) {
+                   !($line=~/\#\s*define.*do\s\{/) and !($line=~/}/)) {
                        if (ERROR("OPEN_BRACE",
                                  "open brace '{' following function declarations go on the next line\n" . $herecurr) &&
                            $fix) {
@@ -3473,7 +3971,7 @@ sub process {
 
                                # Ignore operators passed as parameters.
                                if ($op_type ne 'V' &&
-                                   $ca =~ /\s$/ && $cc =~ /^\s*,/) {
+                                   $ca =~ /\s$/ && $cc =~ /^\s*[,\)]/) {
 
 #                              # Ignore comments
 #                              } elsif ($op =~ /^$;+$/) {
@@ -3510,14 +4008,33 @@ sub process {
                                                }
                                        }
 
-                               # , must have a space on the right.
+                               # , must not have a space before and must have a space on the right.
                                } elsif ($op eq ',') {
+                                       my $rtrim_before = 0;
+                                       my $space_after = 0;
+                                       if ($ctx =~ /Wx./) {
+                                               if (ERROR("SPACING",
+                                                         "space prohibited before that '$op' $at\n" . $hereptr)) {
+                                                       $line_fixed = 1;
+                                                       $rtrim_before = 1;
+                                               }
+                                       }
                                        if ($ctx !~ /.x[WEC]/ && $cc !~ /^}/) {
                                                if (ERROR("SPACING",
                                                          "space required after that '$op' $at\n" . $hereptr)) {
-                                                       $good = $fix_elements[$n] . trim($fix_elements[$n + 1]) . " ";
                                                        $line_fixed = 1;
                                                        $last_after = $n;
+                                                       $space_after = 1;
+                                               }
+                                       }
+                                       if ($rtrim_before || $space_after) {
+                                               if ($rtrim_before) {
+                                                       $good = rtrim($fix_elements[$n]) . trim($fix_elements[$n + 1]);
+                                               } else {
+                                                       $good = $fix_elements[$n] . trim($fix_elements[$n + 1]);
+                                               }
+                                               if ($space_after) {
+                                                       $good .= " ";
                                                }
                                        }
 
@@ -3589,7 +4106,22 @@ sub process {
                                         $op eq '*' or $op eq '/' or
                                         $op eq '%')
                                {
-                                       if ($ctx =~ /Wx[^WCE]|[^WCE]xW/) {
+                                       if ($check) {
+                                               if (defined $fix_elements[$n + 2] && $ctx !~ /[EW]x[EW]/) {
+                                                       if (CHK("SPACING",
+                                                               "spaces preferred around that '$op' $at\n" . $hereptr)) {
+                                                               $good = rtrim($fix_elements[$n]) . " " . trim($fix_elements[$n + 1]) . " ";
+                                                               $fix_elements[$n + 2] =~ s/^\s+//;
+                                                               $line_fixed = 1;
+                                                       }
+                                               } elsif (!defined $fix_elements[$n + 2] && $ctx !~ /Wx[OE]/) {
+                                                       if (CHK("SPACING",
+                                                               "space preferred before that '$op' $at\n" . $hereptr)) {
+                                                               $good = rtrim($fix_elements[$n]) . " " . trim($fix_elements[$n + 1]);
+                                                               $line_fixed = 1;
+                                                       }
+                                               }
+                                       } elsif ($ctx =~ /Wx[^WCE]|[^WCE]xW/) {
                                                if (ERROR("SPACING",
                                                          "need consistent spacing around '$op' $at\n" . $hereptr)) {
                                                        $good = rtrim($fix_elements[$n]) . " " . trim($fix_elements[$n + 1]) . " ";
@@ -3624,6 +4156,14 @@ sub process {
                                                $ok = 1;
                                        }
 
+                                       # for asm volatile statements
+                                       # ignore a colon with another
+                                       # colon immediately before or after
+                                       if (($op eq ':') &&
+                                           ($ca =~ /:$/ || $cc =~ /^:/)) {
+                                               $ok = 1;
+                                       }
+
                                        # messages are ERROR, but ?: are CHK
                                        if ($ok == 0) {
                                                my $msg_type = \&ERROR;
@@ -3690,8 +4230,8 @@ sub process {
 ##             }
 
 #need space before brace following if, while, etc
-               if (($line =~ /\(.*\){/ && $line !~ /\($Type\){/) ||
-                   $line =~ /do{/) {
+               if (($line =~ /\(.*\)\{/ && $line !~ /\($Type\)\{/) ||
+                   $line =~ /do\{/) {
                        if (ERROR("SPACING",
                                  "space required before the open brace '{'\n" . $herecurr) &&
                            $fix) {
@@ -3752,7 +4292,6 @@ sub process {
                        if (ERROR("SPACING",
                                  "space prohibited before that close parenthesis ')'\n" . $herecurr) &&
                            $fix) {
-                               print("fixlinenr: <$fixlinenr> fixed[fixlinenr]: <$fixed[$fixlinenr]>\n");
                                $fixed[$fixlinenr] =~
                                    s/\s+\)/\)/;
                        }
@@ -3762,9 +4301,27 @@ sub process {
 # ie: &(foo->bar) should be &foo->bar and *(foo->bar) should be *foo->bar
 
                while ($line =~ /(?:[^&]&\s*|\*)\(\s*($Ident\s*(?:$Member\s*)+)\s*\)/g) {
-                       CHK("UNNECESSARY_PARENTHESES",
-                           "Unnecessary parentheses around $1\n" . $herecurr);
-                   }
+                       my $var = $1;
+                       if (CHK("UNNECESSARY_PARENTHESES",
+                               "Unnecessary parentheses around $var\n" . $herecurr) &&
+                           $fix) {
+                               $fixed[$fixlinenr] =~ s/\(\s*\Q$var\E\s*\)/$var/;
+                       }
+               }
+
+# check for unnecessary parentheses around function pointer uses
+# ie: (foo->bar)(); should be foo->bar();
+# but not "if (foo->bar) (" to avoid some false positives
+               if ($line =~ /(\bif\s*|)(\(\s*$Ident\s*(?:$Member\s*)+\))[ \t]*\(/ && $1 !~ /^if/) {
+                       my $var = $2;
+                       if (CHK("UNNECESSARY_PARENTHESES",
+                               "Unnecessary parentheses around function pointer $var\n" . $herecurr) &&
+                           $fix) {
+                               my $var2 = deparenthesize($var);
+                               $var2 =~ s/\s//g;
+                               $fixed[$fixlinenr] =~ s/\Q$var\E/$var2/;
+                       }
+               }
 
 #goto labels aren't indented, allow a single space however
                if ($line=~/^.\s+[A-Za-z\d_]+:(?![0-9]+)/ and
@@ -3820,12 +4377,41 @@ sub process {
                        }
                }
 
-# Return of what appears to be an errno should normally be -'ve
-               if ($line =~ /^.\s*return\s*(E[A-Z]*)\s*;/) {
+# comparisons with a constant or upper case identifier on the left
+#      avoid cases like "foo + BAR < baz"
+#      only fix matches surrounded by parentheses to avoid incorrect
+#      conversions like "FOO < baz() + 5" being "misfixed" to "baz() > FOO + 5"
+               if ($^V && $^V ge 5.10.0 &&
+                   $line =~ /^\+(.*)\b($Constant|[A-Z_][A-Z0-9_]*)\s*($Compare)\s*($LvalOrFunc)/) {
+                       my $lead = $1;
+                       my $const = $2;
+                       my $comp = $3;
+                       my $to = $4;
+                       my $newcomp = $comp;
+                       if ($lead !~ /(?:$Operators|\.)\s*$/ &&
+                           $to !~ /^(?:Constant|[A-Z_][A-Z0-9_]*)$/ &&
+                           WARN("CONSTANT_COMPARISON",
+                                "Comparisons should place the constant on the right side of the test\n" . $herecurr) &&
+                           $fix) {
+                               if ($comp eq "<") {
+                                       $newcomp = ">";
+                               } elsif ($comp eq "<=") {
+                                       $newcomp = ">=";
+                               } elsif ($comp eq ">") {
+                                       $newcomp = "<";
+                               } elsif ($comp eq ">=") {
+                                       $newcomp = "<=";
+                               }
+                               $fixed[$fixlinenr] =~ s/\(\s*\Q$const\E\s*$Compare\s*\Q$to\E\s*\)/($to $newcomp $const)/;
+                       }
+               }
+
+# Return of what appears to be an errno should normally be negative
+               if ($sline =~ /\breturn(?:\s*\(+\s*|\s+)(E[A-Z]+)(?:\s*\)+\s*|\s*)[;:,]/) {
                        my $name = $1;
                        if ($name ne 'EOF' && $name ne 'ERROR') {
                                WARN("USE_NEGATIVE_ERRNO",
-                                    "return of an errno should typically be -ve (return -$1)\n" . $herecurr);
+                                    "return of an errno should typically be negative (ie: return -$1)\n" . $herecurr);
                        }
                }
 
@@ -4004,7 +4590,9 @@ sub process {
 #Ignore Page<foo> variants
                            $var !~ /^(?:Clear|Set|TestClear|TestSet|)Page[A-Z]/ &&
 #Ignore SI style variants like nS, mV and dB (ie: max_uV, regulator_min_uA_show)
-                           $var !~ /^(?:[a-z_]*?)_?[a-z][A-Z](?:_[a-z_]+)?$/) {
+                           $var !~ /^(?:[a-z_]*?)_?[a-z][A-Z](?:_[a-z_]+)?$/ &&
+#Ignore some three character SI units explicitly, like MiB and KHz
+                           $var !~ /^(?:[a-z_]*?)_?(?:[KMGT]iB|[KMGT]?Hz)(?:_[a-z_]+)?$/) {
                                while ($var =~ m{($Ident)}g) {
                                        my $word = $1;
                                        next if ($word !~ /[A-Z][a-z]|[a-z][A-Z]/);
@@ -4033,7 +4621,8 @@ sub process {
                        }
                }
 
-#warn if <asm/foo.h> is #included and <linux/foo.h> is available (uses RAW line)
+# warn if <asm/foo.h> is #included and <linux/foo.h> is available and includes
+# itself <asm/foo.h> (uses RAW line)
                if ($tree && $rawline =~ m{^.\s*\#\s*include\s*\<asm\/(.*)\.h\>}) {
                        my $file = "$1.h";
                        my $checkfile = "include/linux/$file";
@@ -4041,12 +4630,15 @@ sub process {
                            $realfile ne $checkfile &&
                            $1 !~ /$allowed_asm_includes/)
                        {
-                               if ($realfile =~ m{^arch/}) {
-                                       CHK("ARCH_INCLUDE_LINUX",
-                                           "Consider using #include <linux/$file> instead of <asm/$file>\n" . $herecurr);
-                               } else {
-                                       WARN("INCLUDE_LINUX",
-                                            "Use #include <linux/$file> instead of <asm/$file>\n" . $herecurr);
+                               my $asminclude = `grep -Ec "#include\\s+<asm/$file>" $root/$checkfile`;
+                               if ($asminclude > 0) {
+                                       if ($realfile =~ m{^arch/}) {
+                                               CHK("ARCH_INCLUDE_LINUX",
+                                                   "Consider using #include <linux/$file> instead of <asm/$file>\n" . $herecurr);
+                                       } else {
+                                               WARN("INCLUDE_LINUX",
+                                                    "Use #include <linux/$file> instead of <asm/$file>\n" . $herecurr);
+                                       }
                                }
                        }
                }
@@ -4060,12 +4652,17 @@ sub process {
                        my $cnt = $realcnt;
                        my ($off, $dstat, $dcond, $rest);
                        my $ctx = '';
+                       my $has_flow_statement = 0;
+                       my $has_arg_concat = 0;
                        ($dstat, $dcond, $ln, $cnt, $off) =
                                ctx_statement_block($linenr, $realcnt, 0);
                        $ctx = $dstat;
                        #print "dstat<$dstat> dcond<$dcond> cnt<$cnt> off<$off>\n";
                        #print "LINE<$lines[$ln-1]> len<" . length($lines[$ln-1]) . "\n";
 
+                       $has_flow_statement = 1 if ($ctx =~ /\b(goto|return)\b/);
+                       $has_arg_concat = 1 if ($ctx =~ /\#\#/ && $ctx !~ /\#\#\s*(?:__VA_ARGS__|args)\b/);
+
                        $dstat =~ s/^.\s*\#\s*define\s+$Ident(?:\([^\)]*\))?\s*//;
                        $dstat =~ s/$;//g;
                        $dstat =~ s/\\\n.//g;
@@ -4075,16 +4672,19 @@ sub process {
                        # Flatten any parentheses and braces
                        while ($dstat =~ s/\([^\(\)]*\)/1/ ||
                               $dstat =~ s/\{[^\{\}]*\}/1/ ||
-                              $dstat =~ s/\[[^\[\]]*\]/1/)
+                              $dstat =~ s/.\[[^\[\]]*\]/1/)
                        {
                        }
 
                        # Flatten any obvious string concatentation.
-                       while ($dstat =~ s/("X*")\s*$Ident/$1/ ||
-                              $dstat =~ s/$Ident\s*("X*")/$1/)
+                       while ($dstat =~ s/($String)\s*$Ident/$1/ ||
+                              $dstat =~ s/$Ident\s*($String)/$1/)
                        {
                        }
 
+                       # Make asm volatile uses seem like a generic function
+                       $dstat =~ s/\b_*asm_*\s+_*volatile_*\b/asm_volatile/g;
+
                        my $exceptions = qr{
                                $Declare|
                                module_param_named|
@@ -4095,7 +4695,8 @@ sub process {
                                union|
                                struct|
                                \.$Ident\s*=\s*|
-                               ^\"|\"$
+                               ^\"|\"$|
+                               ^\[
                        }x;
                        #print "REST<$rest> dstat<$dstat> ctx<$ctx>\n";
                        if ($dstat ne '' &&
@@ -4110,7 +4711,7 @@ sub process {
                            $dstat !~ /^for\s*$Constant$/ &&                            # for (...)
                            $dstat !~ /^for\s*$Constant\s+(?:$Ident|-?$Constant)$/ &&   # for (...) bar()
                            $dstat !~ /^do\s*{/ &&                                      # do {...
-                           $dstat !~ /^\({/ &&                                         # ({...
+                           $dstat !~ /^\(\{/ &&                                                # ({...
                            $ctx !~ /^.\s*#\s*define\s+TRACE_(?:SYSTEM|INCLUDE_FILE|INCLUDE_PATH)\b/)
                        {
                                $ctx =~ s/\n*$//;
@@ -4126,10 +4727,23 @@ sub process {
                                              "Macros with multiple statements should be enclosed in a do - while loop\n" . "$herectx");
                                } else {
                                        ERROR("COMPLEX_MACRO",
-                                             "Macros with complex values should be enclosed in parenthesis\n" . "$herectx");
+                                             "Macros with complex values should be enclosed in parentheses\n" . "$herectx");
                                }
                        }
 
+# check for macros with flow control, but without ## concatenation
+# ## concatenation is commonly a macro that defines a function so ignore those
+                       if ($has_flow_statement && !$has_arg_concat) {
+                               my $herectx = $here . "\n";
+                               my $cnt = statement_rawlines($ctx);
+
+                               for (my $n = 0; $n < $cnt; $n++) {
+                                       $herectx .= raw_line($linenr, $n) . "\n";
+                               }
+                               WARN("MACRO_WITH_FLOW_CONTROL",
+                                    "Macros with flow control statements should be avoided\n" . "$herectx");
+                       }
+
 # check for line continuations outside of #defines, preprocessor #, and asm
 
                } else {
@@ -4157,6 +4771,7 @@ sub process {
                        $ctx = $dstat;
 
                        $dstat =~ s/\\\n.//g;
+                       $dstat =~ s/$;/ /g;
 
                        if ($dstat =~ /^\+\s*#\s*define\s+$Ident\s*${balanced_parens}\s*do\s*{(.*)\s*}\s*while\s*\(\s*0\s*\)\s*([;\s]*)\s*$/) {
                                my $stmts = $2;
@@ -4323,12 +4938,18 @@ sub process {
 
 # check for unnecessary blank lines around braces
                if (($line =~ /^.\s*}\s*$/ && $prevrawline =~ /^.\s*$/)) {
-                       CHK("BRACES",
-                           "Blank lines aren't necessary before a close brace '}'\n" . $hereprev);
+                       if (CHK("BRACES",
+                               "Blank lines aren't necessary before a close brace '}'\n" . $hereprev) &&
+                           $fix && $prevrawline =~ /^\+/) {
+                               fix_delete_line($fixlinenr - 1, $prevrawline);
+                       }
                }
                if (($rawline =~ /^.\s*$/ && $prevline =~ /^..*{\s*$/)) {
-                       CHK("BRACES",
-                           "Blank lines aren't necessary after an open brace '{'\n" . $hereprev);
+                       if (CHK("BRACES",
+                               "Blank lines aren't necessary after an open brace '{'\n" . $hereprev) &&
+                           $fix) {
+                               fix_delete_line($fixlinenr, $rawline);
+                       }
                }
 
 # no volatiles please
@@ -4338,6 +4959,89 @@ sub process {
                             "Use of volatile is usually wrong: see Documentation/volatile-considered-harmful.txt\n" . $herecurr);
                }
 
+# Check for user-visible strings broken across lines, which breaks the ability
+# to grep for the string.  Make exceptions when the previous string ends in a
+# newline (multiple lines in one string constant) or '\t', '\r', ';', or '{'
+# (common in inline assembly) or is a octal \123 or hexadecimal \xaf value
+               if ($line =~ /^\+\s*$String/ &&
+                   $prevline =~ /"\s*$/ &&
+                   $prevrawline !~ /(?:\\(?:[ntr]|[0-7]{1,3}|x[0-9a-fA-F]{1,2})|;\s*|\{\s*)"\s*$/) {
+                       if (WARN("SPLIT_STRING",
+                                "quoted string split across lines\n" . $hereprev) &&
+                                    $fix &&
+                                    $prevrawline =~ /^\+.*"\s*$/ &&
+                                    $last_coalesced_string_linenr != $linenr - 1) {
+                               my $extracted_string = get_quoted_string($line, $rawline);
+                               my $comma_close = "";
+                               if ($rawline =~ /\Q$extracted_string\E(\s*\)\s*;\s*$|\s*,\s*)/) {
+                                       $comma_close = $1;
+                               }
+
+                               fix_delete_line($fixlinenr - 1, $prevrawline);
+                               fix_delete_line($fixlinenr, $rawline);
+                               my $fixedline = $prevrawline;
+                               $fixedline =~ s/"\s*$//;
+                               $fixedline .= substr($extracted_string, 1) . trim($comma_close);
+                               fix_insert_line($fixlinenr - 1, $fixedline);
+                               $fixedline = $rawline;
+                               $fixedline =~ s/\Q$extracted_string\E\Q$comma_close\E//;
+                               if ($fixedline !~ /\+\s*$/) {
+                                       fix_insert_line($fixlinenr, $fixedline);
+                               }
+                               $last_coalesced_string_linenr = $linenr;
+                       }
+               }
+
+# check for missing a space in a string concatenation
+               if ($prevrawline =~ /[^\\]\w"$/ && $rawline =~ /^\+[\t ]+"\w/) {
+                       WARN('MISSING_SPACE',
+                            "break quoted strings at a space character\n" . $hereprev);
+               }
+
+# check for spaces before a quoted newline
+               if ($rawline =~ /^.*\".*\s\\n/) {
+                       if (WARN("QUOTED_WHITESPACE_BEFORE_NEWLINE",
+                                "unnecessary whitespace before a quoted newline\n" . $herecurr) &&
+                           $fix) {
+                               $fixed[$fixlinenr] =~ s/^(\+.*\".*)\s+\\n/$1\\n/;
+                       }
+
+               }
+
+# concatenated string without spaces between elements
+               if ($line =~ /$String[A-Z_]/ || $line =~ /[A-Za-z0-9_]$String/) {
+                       CHK("CONCATENATED_STRING",
+                           "Concatenated strings should use spaces between elements\n" . $herecurr);
+               }
+
+# uncoalesced string fragments
+               if ($line =~ /$String\s*"/) {
+                       WARN("STRING_FRAGMENTS",
+                            "Consecutive strings are generally better as a single string\n" . $herecurr);
+               }
+
+# check for %L{u,d,i} and 0x%[udi] in strings
+               my $string;
+               while ($line =~ /(?:^|")([X\t]*)(?:"|$)/g) {
+                       $string = substr($rawline, $-[1], $+[1] - $-[1]);
+                       $string =~ s/%%/__/g;
+                       if ($string =~ /(?<!%)%[\*\d\.\$]*L[udi]/) {
+                               WARN("PRINTF_L",
+                                    "\%Ld/%Lu are not-standard C, use %lld/%llu\n" . $herecurr);
+                               last;
+                       }
+                       if ($string =~ /0x%[\*\d\.\$\Llzth]*[udi]/) {
+                               ERROR("PRINTF_0xDECIMAL",
+                                     "Prefixing 0x with decimal output is defective\n" . $herecurr);
+                       }
+               }
+
+# check for line continuations in quoted strings with odd counts of "
+               if ($rawline =~ /\\$/ && $rawline =~ tr/"/"/ % 2) {
+                       WARN("LINE_CONTINUATIONS",
+                            "Avoid line continuations in quoted strings\n" . $herecurr);
+               }
+
 # warn about #if 0
                if ($line =~ /^.\s*\#\s*if\s+0\b/) {
                        CHK("REDUNDANT_CODE",
@@ -4347,10 +5051,34 @@ sub process {
 
 # check for needless "if (<foo>) fn(<foo>)" uses
                if ($prevline =~ /\bif\s*\(\s*($Lval)\s*\)/) {
-                       my $expr = '\s*\(\s*' . quotemeta($1) . '\s*\)\s*;';
-                       if ($line =~ /\b(kfree|usb_free_urb|debugfs_remove(?:_recursive)?)$expr/) {
-                               WARN('NEEDLESS_IF',
-                                    "$1(NULL) is safe this check is probably not required\n" . $hereprev);
+                       my $tested = quotemeta($1);
+                       my $expr = '\s*\(\s*' . $tested . '\s*\)\s*;';
+                       if ($line =~ /\b(kfree|usb_free_urb|debugfs_remove(?:_recursive)?|(?:kmem_cache|mempool|dma_pool)_destroy)$expr/) {
+                               my $func = $1;
+                               if (WARN('NEEDLESS_IF',
+                                        "$func(NULL) is safe and this check is probably not required\n" . $hereprev) &&
+                                   $fix) {
+                                       my $do_fix = 1;
+                                       my $leading_tabs = "";
+                                       my $new_leading_tabs = "";
+                                       if ($lines[$linenr - 2] =~ /^\+(\t*)if\s*\(\s*$tested\s*\)\s*$/) {
+                                               $leading_tabs = $1;
+                                       } else {
+                                               $do_fix = 0;
+                                       }
+                                       if ($lines[$linenr - 1] =~ /^\+(\t+)$func\s*\(\s*$tested\s*\)\s*;\s*$/) {
+                                               $new_leading_tabs = $1;
+                                               if (length($leading_tabs) + 1 ne length($new_leading_tabs)) {
+                                                       $do_fix = 0;
+                                               }
+                                       } else {
+                                               $do_fix = 0;
+                                       }
+                                       if ($do_fix) {
+                                               fix_delete_line($fixlinenr - 1, $prevrawline);
+                                               $fixed[$fixlinenr] =~ s/^\+$new_leading_tabs/\+$leading_tabs/;
+                                       }
+                               }
                        }
                }
 
@@ -4371,6 +5099,39 @@ sub process {
                        }
                }
 
+# check for logging functions with KERN_<LEVEL>
+               if ($line !~ /printk(?:_ratelimited|_once)?\s*\(/ &&
+                   $line =~ /\b$logFunctions\s*\(.*\b(KERN_[A-Z]+)\b/) {
+                       my $level = $1;
+                       if (WARN("UNNECESSARY_KERN_LEVEL",
+                                "Possible unnecessary $level\n" . $herecurr) &&
+                           $fix) {
+                               $fixed[$fixlinenr] =~ s/\s*$level\s*//;
+                       }
+               }
+
+# check for mask then right shift without a parentheses
+               if ($^V && $^V ge 5.10.0 &&
+                   $line =~ /$LvalOrFunc\s*\&\s*($LvalOrFunc)\s*>>/ &&
+                   $4 !~ /^\&/) { # $LvalOrFunc may be &foo, ignore if so
+                       WARN("MASK_THEN_SHIFT",
+                            "Possible precedence defect with mask then right shift - may need parentheses\n" . $herecurr);
+               }
+
+# check for pointer comparisons to NULL
+               if ($^V && $^V ge 5.10.0) {
+                       while ($line =~ /\b$LvalOrFunc\s*(==|\!=)\s*NULL\b/g) {
+                               my $val = $1;
+                               my $equal = "!";
+                               $equal = "" if ($4 eq "!=");
+                               if (CHK("COMPARISON_TO_NULL",
+                                       "Comparison to NULL could be written \"${equal}${val}\"\n" . $herecurr) &&
+                                           $fix) {
+                                       $fixed[$fixlinenr] =~ s/\b\Q$val\E\s*(?:==|\!=)\s*NULL\b/$equal$val/;
+                               }
+                       }
+               }
+
 # check for bad placement of section $InitAttribute (e.g.: __initdata)
                if ($line =~ /(\b$InitAttribute\b)/) {
                        my $attr = $1;
@@ -4418,6 +5179,16 @@ sub process {
                        }
                }
 
+# check for __read_mostly with const non-pointer (should just be const)
+               if ($line =~ /\b__read_mostly\b/ &&
+                   $line =~ /($Type)\s*$Ident/ && $1 !~ /\*\s*$/ && $1 =~ /\bconst\b/) {
+                       if (ERROR("CONST_READ_MOSTLY",
+                                 "Invalid use of __read_mostly with const type\n" . $herecurr) &&
+                           $fix) {
+                               $fixed[$fixlinenr] =~ s/\s+__read_mostly\b//;
+                       }
+               }
+
 # don't use __constant_<foo> functions outside of include/uapi/
                if ($realfile !~ m@^include/uapi/@ &&
                    $line =~ /(__constant_(?:htons|ntohs|[bl]e(?:16|32|64)_to_cpu|cpu_to_[bl]e(?:16|32|64)))\s*\(/) {
@@ -4493,12 +5264,69 @@ sub process {
                        }
                }
 # check for memory barriers without a comment.
-               if ($line =~ /\b(mb|rmb|wmb|read_barrier_depends|smp_mb|smp_rmb|smp_wmb|smp_read_barrier_depends)\(/) {
+
+               my $barriers = qr{
+                       mb|
+                       rmb|
+                       wmb|
+                       read_barrier_depends
+               }x;
+               my $barrier_stems = qr{
+                       mb__before_atomic|
+                       mb__after_atomic|
+                       store_release|
+                       load_acquire|
+                       store_mb|
+                       (?:$barriers)
+               }x;
+               my $all_barriers = qr{
+                       (?:$barriers)|
+                       smp_(?:$barrier_stems)|
+                       virt_(?:$barrier_stems)
+               }x;
+
+               if ($line =~ /\b(?:$all_barriers)\s*\(/) {
                        if (!ctx_has_comment($first_line, $linenr)) {
                                WARN("MEMORY_BARRIER",
                                     "memory barrier without comment\n" . $herecurr);
                        }
                }
+
+               my $underscore_smp_barriers = qr{__smp_(?:$barrier_stems)}x;
+
+               if ($realfile !~ m@^include/asm-generic/@ &&
+                   $realfile !~ m@/barrier\.h$@ &&
+                   $line =~ m/\b(?:$underscore_smp_barriers)\s*\(/ &&
+                   $line !~ m/^.\s*\#\s*define\s+(?:$underscore_smp_barriers)\s*\(/) {
+                       WARN("MEMORY_BARRIER",
+                            "__smp memory barriers shouldn't be used outside barrier.h and asm-generic\n" . $herecurr);
+               }
+
+# check for waitqueue_active without a comment.
+               if ($line =~ /\bwaitqueue_active\s*\(/) {
+                       if (!ctx_has_comment($first_line, $linenr)) {
+                               WARN("WAITQUEUE_ACTIVE",
+                                    "waitqueue_active without comment\n" . $herecurr);
+                       }
+               }
+
+# Check for expedited grace periods that interrupt non-idle non-nohz
+# online CPUs.  These expedited can therefore degrade real-time response
+# if used carelessly, and should be avoided where not absolutely
+# needed.  It is always OK to use synchronize_rcu_expedited() and
+# synchronize_sched_expedited() at boot time (before real-time applications
+# start) and in error situations where real-time response is compromised in
+# any case.  Note that synchronize_srcu_expedited() does -not- interrupt
+# other CPUs, so don't warn on uses of synchronize_srcu_expedited().
+# Of course, nothing comes for free, and srcu_read_lock() and
+# srcu_read_unlock() do contain full memory barriers in payment for
+# synchronize_srcu_expedited() non-interruption properties.
+               if ($line =~ /\b(synchronize_rcu_expedited|synchronize_sched_expedited)\(/) {
+                       WARN("EXPEDITED_RCU_GRACE_PERIOD",
+                            "expedited RCU grace periods should be avoided where they can degrade real-time response\n" . $herecurr);
+
+               }
+
 # check of hardware specific defines
                if ($line =~ m@^.\s*\#\s*if.*\b(__i386__|__powerpc64__|__sun__|__s390x__)\b@ && $realfile !~ m@include/asm-@) {
                        CHK("ARCH_DEFINES",
@@ -4565,6 +5393,53 @@ sub process {
                        }
                }
 
+# Check for __attribute__ weak, or __weak declarations (may have link issues)
+               if ($^V && $^V ge 5.10.0 &&
+                   $line =~ /(?:$Declare|$DeclareMisordered)\s*$Ident\s*$balanced_parens\s*(?:$Attribute)?\s*;/ &&
+                   ($line =~ /\b__attribute__\s*\(\s*\(.*\bweak\b/ ||
+                    $line =~ /\b__weak\b/)) {
+                       ERROR("WEAK_DECLARATION",
+                             "Using weak declarations can have unintended link defects\n" . $herecurr);
+               }
+
+# check for c99 types like uint8_t used outside of uapi/
+               if ($realfile !~ m@\binclude/uapi/@ &&
+                   $line =~ /\b($Declare)\s*$Ident\s*[=;,\[]/) {
+                       my $type = $1;
+                       if ($type =~ /\b($typeC99Typedefs)\b/) {
+                               $type = $1;
+                               my $kernel_type = 'u';
+                               $kernel_type = 's' if ($type =~ /^_*[si]/);
+                               $type =~ /(\d+)/;
+                               $kernel_type .= $1;
+                               if (CHK("PREFER_KERNEL_TYPES",
+                                       "Prefer kernel type '$kernel_type' over '$type'\n" . $herecurr) &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s/\b$type\b/$kernel_type/;
+                               }
+                       }
+               }
+
+# check for cast of C90 native int or longer types constants
+               if ($line =~ /(\(\s*$C90_int_types\s*\)\s*)($Constant)\b/) {
+                       my $cast = $1;
+                       my $const = $2;
+                       if (WARN("TYPECAST_INT_CONSTANT",
+                                "Unnecessary typecast of c90 int constant\n" . $herecurr) &&
+                           $fix) {
+                               my $suffix = "";
+                               my $newconst = $const;
+                               $newconst =~ s/${Int_type}$//;
+                               $suffix .= 'U' if ($cast =~ /\bunsigned\b/);
+                               if ($cast =~ /\blong\s+long\b/) {
+                                       $suffix .= 'LL';
+                               } elsif ($cast =~ /\blong\b/) {
+                                       $suffix .= 'L';
+                               }
+                               $fixed[$fixlinenr] =~ s/\Q$cast\E$const\b/$newconst$suffix/;
+                       }
+               }
+
 # check for sizeof(&)
                if ($line =~ /\bsizeof\s*\(\s*\&/) {
                        WARN("SIZEOF_ADDRESS",
@@ -4580,12 +5455,6 @@ sub process {
                        }
                }
 
-# check for line continuations in quoted strings with odd counts of "
-               if ($rawline =~ /\\$/ && $rawline =~ tr/"/"/ % 2) {
-                       WARN("LINE_CONTINUATIONS",
-                            "Avoid line continuations in quoted strings\n" . $herecurr);
-               }
-
 # check for struct spinlock declarations
                if ($line =~ /^.\s*\bstruct\s+spinlock\s+\w+\s*;/) {
                        WARN("USE_SPINLOCK_T",
@@ -4595,7 +5464,8 @@ sub process {
 # check for seq_printf uses that could be seq_puts
                if ($sline =~ /\bseq_printf\s*\(.*"\s*\)\s*;\s*$/) {
                        my $fmt = get_quoted_string($line, $rawline);
-                       if ($fmt ne "" && $fmt !~ /[^\\]\%/) {
+                       $fmt =~ s/%%//g;
+                       if ($fmt !~ /%/) {
                                if (WARN("PREFER_SEQ_PUTS",
                                         "Prefer seq_puts to seq_printf\n" . $herecurr) &&
                                    $fix) {
@@ -4607,7 +5477,7 @@ sub process {
 # Check for misused memsets
                if ($^V && $^V ge 5.10.0 &&
                    defined $stat &&
-                   $stat =~ /^\+(?:.*?)\bmemset\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*\,\s*$FuncArg\s*\)/s) {
+                   $stat =~ /^\+(?:.*?)\bmemset\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*\,\s*$FuncArg\s*\)/) {
 
                        my $ms_addr = $2;
                        my $ms_val = $7;
@@ -4624,14 +5494,46 @@ sub process {
 
 # Check for memcpy(foo, bar, ETH_ALEN) that could be ether_addr_copy(foo, bar)
                if ($^V && $^V ge 5.10.0 &&
-                   $line =~ /^\+(?:.*?)\bmemcpy\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*\,\s*ETH_ALEN\s*\)/s) {
+                   defined $stat &&
+                   $stat =~ /^\+(?:.*?)\bmemcpy\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*\,\s*ETH_ALEN\s*\)/) {
                        if (WARN("PREFER_ETHER_ADDR_COPY",
-                                "Prefer ether_addr_copy() over memcpy() if the Ethernet addresses are __aligned(2)\n" . $herecurr) &&
+                                "Prefer ether_addr_copy() over memcpy() if the Ethernet addresses are __aligned(2)\n" . "$here\n$stat\n") &&
                            $fix) {
                                $fixed[$fixlinenr] =~ s/\bmemcpy\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*\,\s*ETH_ALEN\s*\)/ether_addr_copy($2, $7)/;
                        }
                }
 
+# Check for memcmp(foo, bar, ETH_ALEN) that could be ether_addr_equal*(foo, bar)
+               if ($^V && $^V ge 5.10.0 &&
+                   defined $stat &&
+                   $stat =~ /^\+(?:.*?)\bmemcmp\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*\,\s*ETH_ALEN\s*\)/) {
+                       WARN("PREFER_ETHER_ADDR_EQUAL",
+                            "Prefer ether_addr_equal() or ether_addr_equal_unaligned() over memcmp()\n" . "$here\n$stat\n")
+               }
+
+# check for memset(foo, 0x0, ETH_ALEN) that could be eth_zero_addr
+# check for memset(foo, 0xFF, ETH_ALEN) that could be eth_broadcast_addr
+               if ($^V && $^V ge 5.10.0 &&
+                   defined $stat &&
+                   $stat =~ /^\+(?:.*?)\bmemset\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*\,\s*ETH_ALEN\s*\)/) {
+
+                       my $ms_val = $7;
+
+                       if ($ms_val =~ /^(?:0x|)0+$/i) {
+                               if (WARN("PREFER_ETH_ZERO_ADDR",
+                                        "Prefer eth_zero_addr over memset()\n" . "$here\n$stat\n") &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s/\bmemset\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*,\s*ETH_ALEN\s*\)/eth_zero_addr($2)/;
+                               }
+                       } elsif ($ms_val =~ /^(?:0xff|255)$/i) {
+                               if (WARN("PREFER_ETH_BROADCAST_ADDR",
+                                        "Prefer eth_broadcast_addr() over memset()\n" . "$here\n$stat\n") &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s/\bmemset\s*\(\s*$FuncArg\s*,\s*$FuncArg\s*,\s*ETH_ALEN\s*\)/eth_broadcast_addr($2)/;
+                               }
+                       }
+               }
+
 # typecasts on min/max could be min_t/max_t
                if ($^V && $^V ge 5.10.0 &&
                    defined $stat &&
@@ -4821,6 +5723,27 @@ sub process {
                        }
                }
 
+# check for #defines like: 1 << <digit> that could be BIT(digit)
+               if ($line =~ /#\s*define\s+\w+\s+\(?\s*1\s*([ulUL]*)\s*\<\<\s*(?:\d+|$Ident)\s*\)?/) {
+                       my $ull = "";
+                       $ull = "_ULL" if (defined($1) && $1 =~ /ll/i);
+                       if (CHK("BIT_MACRO",
+                               "Prefer using the BIT$ull macro\n" . $herecurr) &&
+                           $fix) {
+                               $fixed[$fixlinenr] =~ s/\(?\s*1\s*[ulUL]*\s*<<\s*(\d+|$Ident)\s*\)?/BIT${ull}($1)/;
+                       }
+               }
+
+# check for #if defined CONFIG_<FOO> || defined CONFIG_<FOO>_MODULE
+               if ($line =~ /^\+\s*#\s*if\s+defined(?:\s*\(?\s*|\s+)(CONFIG_[A-Z_]+)\s*\)?\s*\|\|\s*defined(?:\s*\(?\s*|\s+)\1_MODULE\s*\)?\s*$/) {
+                       my $config = $1;
+                       if (WARN("PREFER_IS_ENABLED",
+                                "Prefer IS_ENABLED(<FOO>) to CONFIG_<FOO> || CONFIG_<FOO>_MODULE\n" . $herecurr) &&
+                           $fix) {
+                               $fixed[$fixlinenr] = "\+#if IS_ENABLED($config)";
+                       }
+               }
+
 # check for case / default statements not preceded by break/fallthrough/switch
                if ($line =~ /^.\s*(?:case\s+(?:$Ident|$Constant)\s*|default):/) {
                        my $has_break = 0;
@@ -4869,6 +5792,12 @@ sub process {
                        }
                }
 
+# check for uses of __DATE__, __TIME__, __TIMESTAMP__
+               while ($line =~ /\b(__(?:DATE|TIME|TIMESTAMP)__)\b/g) {
+                       ERROR("DATE_TIME",
+                             "Use of the '$1' macro makes the build non-deterministic\n" . $herecurr);
+               }
+
 # check for use of yield()
                if ($line =~ /\byield\s*\(\s*\)/) {
                        WARN("YIELD",
@@ -4920,8 +5849,9 @@ sub process {
                             "please use device_initcall() or more appropriate function instead of __initcall() (see include/linux/init.h)\n" . $herecurr);
                }
 
-# check for various ops structs, ensure they are const.
-               my $struct_ops = qr{acpi_dock_ops|
+# check for various structs that are normally const (ops, kgdb, device_tree)
+               my $const_structs = qr{
+                               acpi_dock_ops|
                                address_space_operations|
                                backlight_ops|
                                block_device_operations|
@@ -4944,6 +5874,7 @@ sub process {
                                mtrr_ops|
                                neigh_ops|
                                nlmsvc_binding|
+                               of_device_id|
                                pci_raw_ops|
                                pipe_buf_operations|
                                platform_hibernation_ops|
@@ -4956,10 +5887,11 @@ sub process {
                                stacktrace_ops|
                                sysfs_ops|
                                tty_operations|
+                               uart_ops|
                                usb_mon_operations|
                                wd_ops}x;
                if ($line !~ /\bconst\b/ &&
-                   $line =~ /\bstruct\s+($struct_ops)\b/) {
+                   $line =~ /\bstruct\s+($const_structs)\b/) {
                        WARN("CONST_STRUCT",
                             "struct $1 should normally be const\n" .
                                $herecurr);
@@ -4984,16 +5916,11 @@ sub process {
                              "#define of '$1' is wrong - use Kconfig variables or standard guards instead\n" . $herecurr);
                }
 
-# check for %L{u,d,i} in strings
-               my $string;
-               while ($line =~ /(?:^|")([X\t]*)(?:"|$)/g) {
-                       $string = substr($rawline, $-[1], $+[1] - $-[1]);
-                       $string =~ s/%%/__/g;
-                       if ($string =~ /(?<!%)%L[udi]/) {
-                               WARN("PRINTF_L",
-                                    "\%Ld/%Lu are not-standard C, use %lld/%llu\n" . $herecurr);
-                               last;
-                       }
+# likely/unlikely comparisons similar to "(likely(foo) > 0)"
+               if ($^V && $^V ge 5.10.0 &&
+                   $line =~ /\b((?:un)?likely)\s*\(\s*$FuncArg\s*\)\s*$Compare/) {
+                       WARN("LIKELY_MISUSE",
+                            "Using $1 should generally have parentheses around the comparison\n" . $herecurr);
                }
 
 # whine mightly about in_atomic
@@ -5007,6 +5934,28 @@ sub process {
                        }
                }
 
+# whine about ACCESS_ONCE
+               if ($^V && $^V ge 5.10.0 &&
+                   $line =~ /\bACCESS_ONCE\s*$balanced_parens\s*(=(?!=))?\s*($FuncArg)?/) {
+                       my $par = $1;
+                       my $eq = $2;
+                       my $fun = $3;
+                       $par =~ s/^\(\s*(.*)\s*\)$/$1/;
+                       if (defined($eq)) {
+                               if (WARN("PREFER_WRITE_ONCE",
+                                        "Prefer WRITE_ONCE(<FOO>, <BAR>) over ACCESS_ONCE(<FOO>) = <BAR>\n" . $herecurr) &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s/\bACCESS_ONCE\s*\(\s*\Q$par\E\s*\)\s*$eq\s*\Q$fun\E/WRITE_ONCE($par, $fun)/;
+                               }
+                       } else {
+                               if (WARN("PREFER_READ_ONCE",
+                                        "Prefer READ_ONCE(<FOO>) over ACCESS_ONCE(<FOO>)\n" . $herecurr) &&
+                                   $fix) {
+                                       $fixed[$fixlinenr] =~ s/\bACCESS_ONCE\s*\(\s*\Q$par\E\s*\)/READ_ONCE($par)/;
+                               }
+                       }
+               }
+
 # check for lockdep_set_novalidate_class
                if ($line =~ /^.\s*lockdep_set_novalidate_class\s*\(/ ||
                    $line =~ /__lockdep_no_validate__\s*\)/ ) {
@@ -5018,8 +5967,8 @@ sub process {
                        }
                }
 
-               if ($line =~ /debugfs_create_file.*S_IWUGO/ ||
-                   $line =~ /DEVICE_ATTR.*S_IWUGO/ ) {
+               if ($line =~ /debugfs_create_\w+.*\b$mode_perms_world_writable\b/ ||
+                   $line =~ /DEVICE_ATTR.*\b$mode_perms_world_writable\b/) {
                        WARN("EXPORTED_WORLD_WRITABLE",
                             "Exporting world writable files is usually an error. Consider more restrictive permissions.\n" . $herecurr);
                }
@@ -5047,10 +5996,31 @@ sub process {
                                             length($val) ne 4)) {
                                                ERROR("NON_OCTAL_PERMISSIONS",
                                                      "Use 4 digit octal (0777) not decimal permissions\n" . $herecurr);
+                                       } elsif ($val =~ /^$Octal$/ && (oct($val) & 02)) {
+                                               ERROR("EXPORTED_WORLD_WRITABLE",
+                                                     "Exporting writable files is usually an error. Consider more restrictive permissions.\n" . $herecurr);
                                        }
                                }
                        }
                }
+
+# validate content of MODULE_LICENSE against list from include/linux/module.h
+               if ($line =~ /\bMODULE_LICENSE\s*\(\s*($String)\s*\)/) {
+                       my $extracted_string = get_quoted_string($line, $rawline);
+                       my $valid_licenses = qr{
+                                               GPL|
+                                               GPL\ v2|
+                                               GPL\ and\ additional\ rights|
+                                               Dual\ BSD/GPL|
+                                               Dual\ MIT/GPL|
+                                               Dual\ MPL/GPL|
+                                               Proprietary
+                                       }x;
+                       if ($extracted_string !~ /^"(?:$valid_licenses)"$/x) {
+                               WARN("MODULE_LICENSE",
+                                    "unknown module license " . $extracted_string . "\n" . $herecurr);
+                       }
+               }
        }
 
        # If we have no input at all, then there is nothing to report on
@@ -5071,11 +6041,11 @@ sub process {
                exit(0);
        }
 
-       if (!$is_patch) {
+       if (!$is_patch && $file !~ /cover-letter\.patch$/) {
                ERROR("NOT_UNIFIED_DIFF",
                      "Does not appear to be a unified-diff format patch\n");
        }
-       if ($is_patch && $chk_signoff && $signoff == 0) {
+       if ($is_patch && $filename ne '-' && $chk_signoff && $signoff == 0) {
                ERROR("MISSING_SIGN_OFF",
                      "Missing Signed-off-by: line(s)\n");
        }
@@ -5086,28 +6056,29 @@ sub process {
                print "total: $cnt_error errors, $cnt_warn warnings, " .
                        (($check)? "$cnt_chk checks, " : "") .
                        "$cnt_lines lines checked\n";
-               print "\n" if ($quiet == 0);
        }
 
        if ($quiet == 0) {
+               # If there were any defects found and not already fixing them
+               if (!$clean and !$fix) {
+                       print << "EOM"
 
-               if ($^V lt 5.10.0) {
-                       print("NOTE: perl $^V is not modern enough to detect all possible issues.\n");
-                       print("An upgrade to at least perl v5.10.0 is suggested.\n\n");
+NOTE: For some of the reported defects, checkpatch may be able to
+      mechanically convert to the typical style using --fix or --fix-inplace.
+EOM
                }
-
                # If there were whitespace errors which cleanpatch can fix
                # then suggest that.
                if ($rpt_cleaners) {
-                       print "NOTE: whitespace errors detected, you may wish to use scripts/cleanpatch or\n";
-                       print "      scripts/cleanfile\n\n";
                        $rpt_cleaners = 0;
+                       print << "EOM"
+
+NOTE: Whitespace errors detected.
+      You may wish to use scripts/cleanpatch or scripts/cleanfile
+EOM
                }
        }
 
-       hash_show_words(\%use_type, "Used");
-       hash_show_words(\%ignore_type, "Ignored");
-
        if ($clean == 0 && $fix &&
            ("@rawlines" ne "@fixed" ||
             $#fixed_inserted >= 0 || $#fixed_deleted >= 0)) {
@@ -5135,6 +6106,7 @@ sub process {
 
                if (!$quiet) {
                        print << "EOM";
+
 Wrote EXPERIMENTAL --fix correction(s) to '$newfile'
 
 Do _NOT_ trust the results written to this file.
@@ -5142,22 +6114,17 @@ Do _NOT_ submit these changes without inspecting them for correctness.
 
 This EXPERIMENTAL file is simply a convenience to help rewrite patches.
 No warranties, expressed or implied...
-
 EOM
                }
        }
 
-       if ($clean == 1 && $quiet == 0) {
-               print "$vname has no obvious style problems and is ready for submission.\n"
-       }
-       if ($clean == 0 && $quiet == 0) {
-               print << "EOM";
-$vname has style problems, please review.
-
-If any of these errors are false positives, please report
-them to the maintainer, see CHECKPATCH in MAINTAINERS.
-EOM
+       if ($quiet == 0) {
+               print "\n";
+               if ($clean == 1) {
+                       print "$vname has no obvious style problems and is ready for submission.\n";
+               } else {
+                       print "$vname has style problems, please review.\n";
+               }
        }
-
        return $clean;
 }
diff --git a/tests/spelling.txt b/tests/spelling.txt
new file mode 100644 (file)
index 0000000..e52a21e
--- /dev/null
@@ -0,0 +1,1076 @@
+# Downloaded from Linux kernel sources
+# https://github.com/torvalds/linux/blob/master/scripts/spelling.txt
+#
+# Originally from Debian's Lintian tool. Various false positives have been
+# removed, and various additions have been made as they've been discovered
+# in the kernel source.
+#
+# License: GPLv2
+#
+# The format of each line is:
+# mistake||correction
+#
+abandonning||abandoning
+abigious||ambiguous
+abitrate||arbitrate
+abov||above
+abreviated||abbreviated
+absense||absence
+absolut||absolute
+absoulte||absolute
+acccess||access
+acceleratoin||acceleration
+accelleration||acceleration
+accesing||accessing
+accesnt||accent
+accessable||accessible
+accesss||access
+accidentaly||accidentally
+accidentually||accidentally
+accoding||according
+accomodate||accommodate
+accomodates||accommodates
+accordign||according
+accoring||according
+accout||account
+accquire||acquire
+accquired||acquired
+accross||across
+acessable||accessible
+acess||access
+achitecture||architecture
+acient||ancient
+acitions||actions
+acitve||active
+acknowldegement||acknowldegement
+acknowledgement||acknowledgment
+ackowledge||acknowledge
+ackowledged||acknowledged
+acording||according
+activete||activate
+acumulating||accumulating
+adapater||adapter
+addional||additional
+additionaly||additionally
+addres||address
+addreses||addresses
+addresss||address
+aditional||additional
+aditionally||additionally
+aditionaly||additionally
+adminstrative||administrative
+adress||address
+adresses||addresses
+adviced||advised
+afecting||affecting
+agaist||against
+albumns||albums
+alegorical||allegorical
+algorith||algorithm
+algorithmical||algorithmically
+algoritm||algorithm
+algoritms||algorithms
+algorrithm||algorithm
+algorritm||algorithm
+allign||align
+allocatrd||allocated
+allocte||allocate
+allpication||application
+alocate||allocate
+alogirhtms||algorithms
+alogrithm||algorithm
+alot||a lot
+alow||allow
+alows||allows
+altough||although
+alue||value
+ambigious||ambiguous
+amoung||among
+amout||amount
+analysator||analyzer
+ang||and
+anniversery||anniversary
+annoucement||announcement
+anomolies||anomalies
+anomoly||anomaly
+anway||anyway
+aplication||application
+appearence||appearance
+applicaion||application
+appliction||application
+applictions||applications
+appplications||applications
+appropiate||appropriate
+appropriatly||appropriately
+approriate||appropriate
+approriately||appropriately
+apropriate||appropriate
+aquainted||acquainted
+aquired||acquired
+aquisition||acquisition
+arbitary||arbitrary
+architechture||architecture
+arguement||argument
+arguements||arguments
+aritmetic||arithmetic
+arne't||aren't
+arraival||arrival
+artifical||artificial
+artillary||artillery
+asign||assign
+assertation||assertion
+assiged||assigned
+assigment||assignment
+assigments||assignments
+assistent||assistant
+assocation||association
+associcated||associated
+assotiated||associated
+assum||assume
+assumtpion||assumption
+asuming||assuming
+asycronous||asynchronous
+asynchnous||asynchronous
+atomatically||automatically
+atomicly||atomically
+attachement||attachment
+attched||attached
+attemps||attempts
+attruibutes||attributes
+authentification||authentication
+automaticaly||automatically
+automaticly||automatically
+automatize||automate
+automatized||automated
+automatizes||automates
+autonymous||autonomous
+auxillary||auxiliary
+auxilliary||auxiliary
+avaiable||available
+avaible||available
+availabe||available
+availabled||available
+availablity||availability
+availale||available
+availavility||availability
+availble||available
+availiable||available
+avalable||available
+avaliable||available
+aysnc||async
+backgroud||background
+backword||backward
+backwords||backwards
+bahavior||behavior
+bakup||backup
+baloon||balloon
+baloons||balloons
+bandwith||bandwidth
+batery||battery
+beacuse||because
+becasue||because
+becomming||becoming
+becuase||because
+beeing||being
+befor||before
+begining||beginning
+beter||better
+betweeen||between
+bianries||binaries
+bitmast||bitmask
+boardcast||broadcast
+borad||board
+boundry||boundary
+brievely||briefly
+broadcat||broadcast
+cacluated||calculated
+caculation||calculation
+calender||calendar
+calle||called
+calucate||calculate
+calulate||calculate
+cancelation||cancellation
+capabilites||capabilities
+capabitilies||capabilities
+capatibilities||capabilities
+carefuly||carefully
+cariage||carriage
+catagory||category
+cehck||check
+challange||challenge
+challanges||challenges
+chanell||channel
+changable||changeable
+channle||channel
+channnel||channel
+charachter||character
+charachters||characters
+charactor||character
+charater||character
+charaters||characters
+charcter||character
+chcek||check
+chck||check
+checksuming||checksumming
+childern||children
+childs||children
+chiled||child
+chked||checked
+chnage||change
+chnages||changes
+chnnel||channel
+choosen||chosen
+chouse||chose
+circumvernt||circumvent
+claread||cleared
+clared||cleared
+closeing||closing
+clustred||clustered
+collapsable||collapsible
+colorfull||colorful
+comand||command
+comit||commit
+commerical||commercial
+comming||coming
+comminucation||communication
+commited||committed
+commiting||committing
+committ||commit
+commoditiy||commodity
+compability||compatibility
+compaibility||compatibility
+compatability||compatibility
+compatable||compatible
+compatibiliy||compatibility
+compatibilty||compatibility
+compatiblity||compatibility
+competion||completion
+compilant||compliant
+compleatly||completely
+completly||completely
+complient||compliant
+componnents||components
+compres||compress
+compresion||compression
+comression||compression
+comunication||communication
+conbination||combination
+conditionaly||conditionally
+conected||connected
+configuratoin||configuration
+configuraton||configuration
+configuretion||configuration
+conider||consider
+conjuction||conjunction
+connectinos||connections
+connnection||connection
+connnections||connections
+consistancy||consistency
+consistant||consistent
+containes||contains
+containts||contains
+contaisn||contains
+contant||contact
+contence||contents
+continous||continuous
+continously||continuously
+continueing||continuing
+contraints||constraints
+controled||controlled
+controler||controller
+controll||control
+contruction||construction
+contry||country
+convertion||conversion
+convertor||converter
+convienient||convenient
+convinient||convenient
+corected||corrected
+correponding||corresponding
+correponds||corresponds
+correspoding||corresponding
+cotrol||control
+couter||counter
+coutner||counter
+cryptocraphic||cryptographic
+cunter||counter
+curently||currently
+dafault||default
+deafult||default
+deamon||daemon
+decompres||decompress
+decription||description
+defailt||default
+defferred||deferred
+definate||definite
+definately||definitely
+defintion||definition
+defintions||definitions
+defualt||default
+defult||default
+deivce||device
+delared||declared
+delare||declare
+delares||declares
+delaring||declaring
+delemiter||delimiter
+dependancies||dependencies
+dependancy||dependency
+dependant||dependent
+depreacted||deprecated
+depreacte||deprecate
+desactivate||deactivate
+desciptors||descriptors
+descripton||description
+descrition||description
+descritptor||descriptor
+desctiptor||descriptor
+desriptor||descriptor
+desriptors||descriptors
+destory||destroy
+destoryed||destroyed
+destorys||destroys
+destroied||destroyed
+detabase||database
+develope||develop
+developement||development
+developped||developed
+developpement||development
+developper||developer
+developpment||development
+deveolpment||development
+devided||divided
+deviece||device
+diable||disable
+dictionnary||dictionary
+didnt||didn't
+diferent||different
+differrence||difference
+difinition||definition
+diplay||display
+direectly||directly
+disapear||disappear
+disapeared||disappeared
+disappared||disappeared
+disconnet||disconnect
+discontinous||discontinuous
+dispertion||dispersion
+dissapears||disappears
+distiction||distinction
+docuentation||documentation
+documantation||documentation
+documentaion||documentation
+documment||document
+doesnt||doesn't
+dorp||drop
+dosen||doesn
+downlad||download
+downlads||downloads
+druing||during
+dynmaic||dynamic
+easilly||easily
+ecspecially||especially
+edditable||editable
+editting||editing
+efficently||efficiently
+ehther||ether
+eigth||eight
+eletronic||electronic
+enabledi||enabled
+enchanced||enhanced
+encorporating||incorporating
+encrupted||encrypted
+encrypiton||encryption
+endianess||endianness
+enhaced||enhanced
+enlightnment||enlightenment
+enocded||encoded
+enterily||entirely
+enviroiment||environment
+enviroment||environment
+environement||environment
+environent||environment
+eqivalent||equivalent
+equiped||equipped
+equivelant||equivalent
+equivilant||equivalent
+eror||error
+estbalishment||establishment
+etsablishment||establishment
+etsbalishment||establishment
+excecutable||executable
+exceded||exceeded
+excellant||excellent
+existance||existence
+existant||existent
+exixt||exist
+exlcude||exclude
+exlcusive||exclusive
+exmaple||example
+expecially||especially
+explicite||explicit
+explicitely||explicitly
+explict||explicit
+explictly||explicitly
+expresion||expression
+exprimental||experimental
+extened||extended
+extensability||extensibility
+extention||extension
+extracter||extractor
+faild||failed
+faill||fail
+failue||failure
+failuer||failure
+faireness||fairness
+faliure||failure
+familar||familiar
+fatser||faster
+feauture||feature
+feautures||features
+fetaure||feature
+fetaures||features
+fileystem||filesystem
+fimware||firmware
+finanize||finalize
+findn||find
+finilizes||finalizes
+finsih||finish
+flusing||flushing
+folloing||following
+followign||following
+follwing||following
+forseeable||foreseeable
+forse||force
+fortan||fortran
+forwardig||forwarding
+framwork||framework
+frequncy||frequency
+frome||from
+fucntion||function
+fuction||function
+fuctions||functions
+funcion||function
+functionallity||functionality
+functionaly||functionally
+functionnality||functionality
+functonality||functionality
+funtion||function
+funtions||functions
+furthur||further
+futhermore||furthermore
+futrue||future
+gaurenteed||guaranteed
+generiously||generously
+genric||generic
+globel||global
+grabing||grabbing
+grahical||graphical
+grahpical||graphical
+grapic||graphic
+guage||gauge
+guarenteed||guaranteed
+guarentee||guarantee
+halfs||halves
+hander||handler
+handfull||handful
+hanled||handled
+happend||happened
+harware||hardware
+heirarchically||hierarchically
+helpfull||helpful
+hierachy||hierarchy
+hierarchie||hierarchy
+howver||however
+hsould||should
+hypter||hyper
+identidier||identifier
+imblance||imbalance
+immeadiately||immediately
+immedaite||immediate
+immediatelly||immediately
+immediatly||immediately
+immidiate||immediate
+impelentation||implementation
+impementated||implemented
+implemantation||implementation
+implemenation||implementation
+implementaiton||implementation
+implementated||implemented
+implemention||implementation
+implemetation||implementation
+implemntation||implementation
+implentation||implementation
+implmentation||implementation
+implmenting||implementing
+incomming||incoming
+incompatabilities||incompatibilities
+incompatable||incompatible
+inconsistant||inconsistent
+increas||increase
+incrment||increment
+indendation||indentation
+indended||intended
+independant||independent
+independantly||independently
+independed||independent
+indiate||indicate
+inexpect||inexpected
+infomation||information
+informatiom||information
+informations||information
+informtion||information
+infromation||information
+ingore||ignore
+inital||initial
+initalised||initialized
+initalise||initialize
+initalize||initialize
+initation||initiation
+initators||initiators
+initializiation||initialization
+initialzed||initialized
+initilization||initialization
+initilize||initialize
+inofficial||unofficial
+insititute||institute
+instal||install
+inteface||interface
+integreated||integrated
+integrety||integrity
+integrey||integrity
+intendet||intended
+intented||intended
+interanl||internal
+interchangable||interchangeable
+interferring||interfering
+interger||integer
+intermittant||intermittent
+internel||internal
+interoprability||interoperability
+interrface||interface
+interrrupt||interrupt
+interrup||interrupt
+interrups||interrupts
+interruptted||interrupted
+interupted||interrupted
+interupt||interrupt
+intial||initial
+intialized||initialized
+intialize||initialize
+intregral||integral
+intrrupt||interrupt
+intuative||intuitive
+invaid||invalid
+invalde||invald
+invalide||invalid
+invididual||individual
+invokation||invocation
+invokations||invocations
+irrelevent||irrelevant
+isnt||isn't
+isssue||issue
+itslef||itself
+jave||java
+jeffies||jiffies
+juse||just
+jus||just
+kown||known
+langage||language
+langauage||language
+langauge||language
+langugage||language
+lauch||launch
+layed||laid
+leightweight||lightweight
+lengh||length
+lenght||length
+lenth||length
+lesstiff||lesstif
+libaries||libraries
+libary||library
+librairies||libraries
+libraris||libraries
+licenceing||licencing
+loggging||logging
+loggin||login
+logile||logfile
+loosing||losing
+losted||lost
+machinary||machinery
+maintainance||maintenance
+maintainence||maintenance
+maintan||maintain
+makeing||making
+malplaced||misplaced
+malplace||misplace
+managable||manageable
+managment||management
+mangement||management
+manoeuvering||maneuvering
+mappping||mapping
+mathimatical||mathematical
+mathimatic||mathematic
+mathimatics||mathematics
+maxium||maximum
+mechamism||mechanism
+meetign||meeting
+ment||meant
+mergable||mergeable
+mesage||message
+messags||messages
+messgaes||messages
+messsage||message
+messsages||messages
+microprocesspr||microprocessor
+milliseonds||milliseconds
+minumum||minimum
+miscelleneous||miscellaneous
+misformed||malformed
+mispelled||misspelled
+mispelt||misspelt
+miximum||maximum
+mmnemonic||mnemonic
+mnay||many
+modeled||modelled
+modulues||modules
+monochorome||monochrome
+monochromo||monochrome
+monocrome||monochrome
+mopdule||module
+mroe||more
+mulitplied||multiplied
+multidimensionnal||multidimensional
+multple||multiple
+mumber||number
+muticast||multicast
+mutiple||multiple
+mutli||multi
+nams||names
+navagating||navigating
+nead||need
+neccecary||necessary
+neccesary||necessary
+neccessary||necessary
+necesary||necessary
+negaive||negative
+negoitation||negotiation
+negotation||negotiation
+nerver||never
+nescessary||necessary
+nessessary||necessary
+noticable||noticeable
+notications||notifications
+notifed||notified
+numebr||number
+numner||number
+obtaion||obtain
+occassionally||occasionally
+occationally||occasionally
+occurance||occurrence
+occurances||occurrences
+occured||occurred
+occurence||occurrence
+occure||occurred
+occuring||occurring
+offet||offset
+omitt||omit
+ommiting||omitting
+ommitted||omitted
+onself||oneself
+ony||only
+operatione||operation
+opertaions||operations
+optionnal||optional
+optmizations||optimizations
+orientatied||orientated
+orientied||oriented
+otherise||otherwise
+ouput||output
+overaall||overall
+overhread||overhead
+overlaping||overlapping
+overriden||overridden
+overun||overrun
+pacakge||package
+pachage||package
+packacge||package
+packege||package
+packge||package
+packtes||packets
+pakage||package
+pallette||palette
+paln||plan
+paramameters||parameters
+paramater||parameter
+parametes||parameters
+parametised||parametrised
+paramter||parameter
+paramters||parameters
+particuarly||particularly
+particularily||particularly
+pased||passed
+passin||passing
+pathes||paths
+pecularities||peculiarities
+peformance||performance
+peice||piece
+pendantic||pedantic
+peprocessor||preprocessor
+perfoming||performing
+permissons||permissions
+peroid||period
+persistance||persistence
+persistant||persistent
+platfrom||platform
+plattform||platform
+pleaes||please
+ploting||plotting
+plugable||pluggable
+poinnter||pointer
+poiter||pointer
+posible||possible
+positon||position
+possibilites||possibilities
+powerfull||powerful
+preceeded||preceded
+preceeding||preceding
+preceed||precede
+precendence||precedence
+precission||precision
+preemptable||preemptible
+prefered||preferred
+prefferably||preferably
+premption||preemption
+prepaired||prepared
+pressre||pressure
+primative||primitive
+princliple||principle
+priorty||priority
+privilaged||privileged
+privilage||privilege
+priviledge||privilege
+priviledges||privileges
+probaly||probably
+procceed||proceed
+proccesors||processors
+procesed||processed
+proces||process
+processessing||processing
+processess||processes
+processpr||processor
+processsed||processed
+processsing||processing
+procteted||protected
+prodecure||procedure
+progams||programs
+progess||progress
+programers||programmers
+programm||program
+programms||programs
+progresss||progress
+promiscous||promiscuous
+promps||prompts
+pronnounced||pronounced
+prononciation||pronunciation
+pronouce||pronounce
+pronunce||pronounce
+propery||property
+propigate||propagate
+propigation||propagation
+propogate||propagate
+prosess||process
+protable||portable
+protcol||protocol
+protecion||protection
+protocoll||protocol
+psudo||pseudo
+psuedo||pseudo
+psychadelic||psychedelic
+pwoer||power
+quering||querying
+raoming||roaming
+reasearcher||researcher
+reasearchers||researchers
+reasearch||research
+recepient||recipient
+receving||receiving
+recieved||received
+recieve||receive
+reciever||receiver
+recieves||receives
+recogniced||recognised
+recognizeable||recognizable
+recommanded||recommended
+recyle||recycle
+redircet||redirect
+redirectrion||redirection
+refcounf||refcount
+refence||reference
+refered||referred
+referenace||reference
+refering||referring
+refernces||references
+refernnce||reference
+refrence||reference
+registerd||registered
+registeresd||registered
+registes||registers
+registraration||registration
+regster||register
+regualar||regular
+reguator||regulator
+regulamentations||regulations
+reigstration||registration
+releated||related
+relevent||relevant
+remoote||remote
+remore||remote
+removeable||removable
+repectively||respectively
+replacable||replaceable
+replacments||replacements
+replys||replies
+reponse||response
+representaion||representation
+reqeust||request
+requiere||require
+requirment||requirement
+requred||required
+requried||required
+requst||request
+reseting||resetting
+resizeable||resizable
+resouces||resources
+resoures||resources
+responce||response
+ressizes||resizes
+ressource||resource
+ressources||resources
+retransmited||retransmitted
+retreived||retrieved
+retreive||retrieve
+retrive||retrieve
+retuned||returned
+reudce||reduce
+reuest||request
+reuqest||request
+reutnred||returned
+rmeoved||removed
+rmeove||remove
+rmeoves||removes
+rountine||routine
+routins||routines
+rquest||request
+runing||running
+runned||ran
+runnning||running
+runtine||runtime
+sacrifying||sacrificing
+safly||safely
+safty||safety
+savable||saveable
+scaned||scanned
+scaning||scanning
+scarch||search
+seach||search
+searchs||searches
+secquence||sequence
+secund||second
+segement||segment
+senarios||scenarios
+sentivite||sensitive
+separatly||separately
+sepcify||specify
+sepc||spec
+seperated||separated
+seperately||separately
+seperate||separate
+seperatly||separately
+seperator||separator
+sepperate||separate
+sequece||sequence
+sequencial||sequential
+serveral||several
+setts||sets
+settting||setting
+shotdown||shutdown
+shoud||should
+shouldnt||shouldn't
+shoule||should
+shrinked||shrunk
+siginificantly||significantly
+signabl||signal
+similary||similarly
+similiar||similar
+simlar||similar
+simliar||similar
+simpified||simplified
+singaled||signaled
+singal||signal
+singed||signed
+sleeped||slept
+softwares||software
+speach||speech
+specfic||specific
+speciefied||specified
+specifc||specific
+specifed||specified
+specificatin||specification
+specificaton||specification
+specifing||specifying
+specifiying||specifying
+speficied||specified
+speicify||specify
+speling||spelling
+spinlcok||spinlock
+spinock||spinlock
+splitted||split
+spreaded||spread
+sructure||structure
+stablilization||stabilization
+staically||statically
+staion||station
+standardss||standards
+standartization||standardization
+standart||standard
+staticly||statically
+stoped||stopped
+stoppped||stopped
+straming||streaming
+struc||struct
+structres||structures
+stuct||struct
+stucture||structure
+sturcture||structure
+subdirectoires||subdirectories
+suble||subtle
+substract||subtract
+succesfully||successfully
+succesful||successful
+successfull||successful
+sucessfully||successfully
+sucess||success
+superflous||superfluous
+superseeded||superseded
+suplied||supplied
+suported||supported
+suport||support
+suppored||supported
+supportin||supporting
+suppoted||supported
+suppported||supported
+suppport||support
+supress||suppress
+surpresses||suppresses
+susbsystem||subsystem
+suspicously||suspiciously
+swaping||swapping
+switchs||switches
+symetric||symmetric
+synax||syntax
+synchonized||synchronized
+syncronize||synchronize
+syncronizing||synchronizing
+syncronus||synchronous
+syste||system
+sytem||system
+sythesis||synthesis
+taht||that
+targetted||targeted
+targetting||targeting
+teh||the
+temorary||temporary
+temproarily||temporarily
+thier||their
+threds||threads
+threshhold||threshold
+throught||through
+thses||these
+tiggered||triggered
+tipically||typically
+tmis||this
+torerable||tolerable
+tramsmitted||transmitted
+tramsmit||transmit
+tranfer||transfer
+transciever||transceiver
+transferd||transferrd
+transfered||transferred
+transfering||transferring
+transision||transition
+transmittd||transmitted
+transormed||transformed
+trasmission||transmission
+treshold||threshold
+trigerring||triggering
+trun||turn
+ture||true
+tyep||type
+udpate||update
+uesd||used
+unconditionaly||unconditionally
+underun||underrun
+unecessary||unnecessary
+unexecpted||unexpected
+unexpectd||unexpected
+unexpeted||unexpected
+unfortunatelly||unfortunately
+unifiy||unify
+unintialized||uninitialized
+unknonw||unknown
+unknow||unknown
+unkown||unknown
+unneedingly||unnecessarily
+unresgister||unregister
+unsinged||unsigned
+unstabel||unstable
+unsuccessfull||unsuccessful
+unsuported||unsupported
+untill||until
+unuseful||useless
+upate||update
+usefule||useful
+usefull||useful
+usege||usage
+usera||users
+usualy||usually
+utilites||utilities
+utillities||utilities
+utilties||utilities
+utiltity||utility
+utitity||utility
+utitlty||utility
+vaid||valid
+vaild||valid
+valide||valid
+variantions||variations
+varient||variant
+vaule||value
+verbse||verbose
+verisons||versions
+verison||version
+verson||version
+vicefersa||vice-versa
+virtal||virtual
+virtaul||virtual
+virtiual||virtual
+visiters||visitors
+vitual||virtual
+wating||waiting
+wether||whether
+whataver||whatever
+whcih||which
+whenver||whenever
+wheter||whether
+whe||when
+wierd||weird
+wiil||will
+wirte||write
+withing||within
+wnat||want
+workarould||workaround
+writeing||writing
+writting||writing
+zombe||zombie
+zomebie||zombie
index 29a9c31..1d3ec17 100644 (file)
@@ -23,7 +23,7 @@
 
 #include "../src/lib/pio.h"
 
-static int test_empty_dir()
+static int test_empty_dir(void)
 {
        int ret;
        char **paths;
@@ -38,12 +38,12 @@ static int test_empty_dir()
                }
 
                paths_free(paths);
-       } 
+       }
 
        return ret;
 }
 
-static int test_2files_dir()
+static int test_2files_dir(void)
 {
        int ret, one, two;
        char **paths, **cur;
@@ -68,21 +68,21 @@ static int test_2files_dir()
 
                        ret = 1;
                }
-               
+
                cur++;
        }
-       
+
        if (!ret && one == 1 && two == 1)
                ret = 0;
        else
                ret = 1;
-       
+
        paths_free(paths);
 
        return ret;
 }
 
-static int tests_dir_list() {
+static int tests_dir_list(void) {
        int failures;
 
        failures = test_empty_dir();
@@ -98,7 +98,7 @@ int main(int argc, char **argv)
 
        failures = tests_dir_list();
 
-       if (failures) 
+       if (failures)
                exit(EXIT_FAILURE);
        else
                exit(EXIT_SUCCESS);
index 3ce27f8..6be91d5 100644 (file)
@@ -42,7 +42,7 @@ test_fct(unsigned int type, int use_celsius, const char *ref)
        return 1;
 }
 
-static int test() {
+static int test(void) {
        int failures;
 
        failures = 0;
@@ -75,7 +75,7 @@ int main(int argc, char **argv)
 
        failures = test();
 
-       if (failures) 
+       if (failures)
                exit(EXIT_FAILURE);
        else
                exit(EXIT_SUCCESS);
index 0b64aef..1ffe0ca 100644 (file)
@@ -24,7 +24,7 @@
 
 #include "../src/lib/url.h"
 
-int test_url_encode(char *url, char *ref_url)
+static int test_url_encode(char *url, char *ref_url)
 {
        char *res_url;
        int ret;
@@ -45,7 +45,7 @@ int test_url_encode(char *url, char *ref_url)
        return ret;
 }
 
-int tests_url_encode()
+static int tests_url_encode(void)
 {
        int failures;
 
index ef48203..9736c66 100644 (file)
@@ -24,7 +24,7 @@
 
 #include "../src/lib/url.h"
 
-int test_url_normalize(const char *url, const char *ref_url)
+static int test_url_normalize(const char *url, const char *ref_url)
 {
        int ret;
        char *tmp = url_normalize(url);
@@ -46,7 +46,7 @@ int test_url_normalize(const char *url, const char *ref_url)
        return ret;
 }
 
-int tests_url_normalize()
+static int tests_url_normalize(void)
 {
        int failures;
 
@@ -69,7 +69,7 @@ int main(int argc, char **argv)
 
        failures += tests_url_normalize();
 
-       if (failures) 
+       if (failures)
                exit(EXIT_FAILURE);
        else
                exit(EXIT_SUCCESS);
index 3b9d8c1..5d9a836 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @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__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -89,11 +79,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = www
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.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 =
@@ -147,7 +141,6 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(defaultwwwdir)"
 DATA = $(defaultwww_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,7 +170,6 @@ ECHO_N = @ECHO_N@
 ECHO_T = @ECHO_T@
 EGREP = @EGREP@
 EXEEXT = @EXEEXT@
-GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
@@ -236,7 +228,6 @@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 POSUB = @POSUB@
 PTHREAD_LIBS = @PTHREAD_LIBS@
 RANLIB = @RANLIB@
-SED = @SED@
 SENSORS_LIBS = @SENSORS_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
@@ -251,7 +242,6 @@ XEXT_CFLAGS = @XEXT_CFLAGS@
 XEXT_LIBS = @XEXT_LIBS@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
-XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
 XMKMF = @XMKMF@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
@@ -297,7 +287,6 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -334,6 +323,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu www/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu www/Makefile
+.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -526,8 +516,6 @@ uninstall-am: uninstall-defaultwwwDATA
        mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \
        uninstall-am uninstall-defaultwwwDATA
 
-.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.