The cairo/imlib2/rsvg bindings require tolua++ [1], which is currently only
compatible with Lua 5.1 or earlier. We need to force Conky to compile against
Lua 5.1 if the user chooses to build the bindings.
This commit adds a separate pkg_search_module command specifically for Lua 5.1,
along with a note in the documentation. The original pkg_search_module command
was updated to include (and prefer) Lua 5.3+. Also, I threw in two other minor
random fixes to the docs while I was at it.
[1] https://github.com/LuaDist/toluapp
Per disucssion with arclance in #166, the call to check_include_file has
been migrated back to check_include_files and the required define set in
CMAKE_REQUIRED_DEFINITIONS. This properly removes the dependancy on
the check_include_file module. Third time is a charm!
One of the check_include_file checks in ConkyPlatformChecks should
not have been changed to check_include_files because the latter
takes 2 arguments and this call gives 3 (and doens't work right
without the third).
Fixes #162 by changing CheckInlcudeFile to
CheckIncludeFiles so that CMake can correctly include
the module. Change calls to check_include_file to
check_include_files.
x11 shape extension (version >= 1.1) provide ability to set up input region
set up empty input region for undecorated window to create transparent window for mouse events
luamm is now able to be compiled with both lua 5.1 and 5.2 (assuming 5.2 has backward
compatibility features compiled in). It is my intention to always support at least two versions
of lua.
statfs64 ist atm linux specific; wrap statfs around it.
Also cleanup param.h and mount.h including: the assumption in fs.cc
that their presence is a sign of *BSDs is wrong, as they exist in
linux too with different meaning.
Besides presence of mount.h isn't detected in Conky.cmake, so
conditional including mount.h in fs.cc is useless. Is just works
because mount.h and param.h are included in freebsd.h and dragonfly.h
later on. They are unneded in linux.
Just remove conditional including of mount.h and param.h in fs.cc,
conditional wrap statfs64 in proper *BSD header files.
DragonFlyBSD uses pkgsrc package infrastructure, hence the the need
for extra flags.
Cmake pkg_search_module macro sets according <XPREFIX>_LDFLAGS var,
thus the correct way should be to append it to conky_includes and
conky_libs for each extra package needed.
As all pkgsrc packages always install in /usr/pkg, the simplest thing
is to set specific cflags and ldflags at the very beginning.
Conky is btw wip (work in progress) in pkgsrc system, mostly with
NetBSD patches. This is intended as radical workaround (DragonFlyBSD
specific for now) instead of submitting specific patches to pksrc
maintainers.
* don't use kvm_* calls, just sysctl (so no suid perm necessary)
* sysctls calls in general aren't thread safe, collapse callbacks
using same sysctls (specifically total/running procs and proc list
ones).
Some sysctls need two calls (first to get size of obj returned,
second to get object self); if different threads use this schema
on same sysctl, weird values are returned (first/second calls
sequence should be serialized).
In general it makes not much sense too having more threads that use
the same sysctl; just get info once and populate all data.
* add DragonFly specific extended uname string ($version in conky.conf)
with git version and signature
Todo:
- top process list logic is old style, use top.cc funcs.
- find a solution for cpu freq
Signed-off-by: Pavel Labath <pavelo@centrum.sk>
also change a magic constant in net_stat.h to reflect the fact that it depends on
MAX_NET_INTERFACES. For more info, see sf.net #2872682 and gentoo bug #384505
ps: this should really be solved in a more need way, without the need for static arrays
This is only the beginning of the ipv6 support,
This var isn't documented and only works on Linux.
It should also be patched to show the addresses in compressed format
Some other vars should also be added to see things like netmask, scope, routes, ...