mirror of
https://github.com/Llewellynvdm/conky.git
synced 2024-09-27 12:49:01 +00:00
Compare commits
4 Commits
6008bd7923
...
28a63989ab
Author | SHA1 | Date | |
---|---|---|---|
|
28a63989ab | ||
|
71ff774a44 | ||
|
1352c28d1b | ||
|
d6a6aadc5c |
@ -153,12 +153,6 @@ if(NOT APP_UNAME)
|
||||
message(FATAL_ERROR "Unable to find program 'uname'")
|
||||
endif(NOT APP_UNAME)
|
||||
|
||||
find_program(APP_GPERF gperf)
|
||||
|
||||
if(NOT APP_GPERF)
|
||||
message(FATAL_ERROR "Unable to find program 'gperf' (required at build-time as of Conky v1.20.2)")
|
||||
endif(NOT APP_GPERF)
|
||||
|
||||
if(NOT RELEASE)
|
||||
find_program(APP_GIT git)
|
||||
|
||||
@ -169,7 +163,7 @@ if(NOT RELEASE)
|
||||
mark_as_advanced(APP_GIT)
|
||||
endif(NOT RELEASE)
|
||||
|
||||
mark_as_advanced(APP_AWK APP_WC APP_UNAME APP_GPERF)
|
||||
mark_as_advanced(APP_AWK APP_WC APP_UNAME)
|
||||
|
||||
execute_process(COMMAND ${APP_UNAME} -sm
|
||||
RESULT_VARIABLE RETVAL
|
||||
|
@ -67,6 +67,8 @@ option(BUILD_EXTRAS "Build extras (includes syntax files for editors)" false)
|
||||
|
||||
option(BUILD_I18N "Enable if you want internationalization support" true)
|
||||
|
||||
option(BUILD_COLOUR_NAME_MAP "Include mappings of colour name -> RGB (i.e., red -> ff0000)" true)
|
||||
|
||||
if(BUILD_I18N)
|
||||
set(LOCALE_DIR "${CMAKE_INSTALL_PREFIX}/share/locale"
|
||||
CACHE STRING "Directory containing the locales")
|
||||
|
@ -669,6 +669,16 @@ if(BUILD_DOCS OR BUILD_EXTRAS)
|
||||
endif()
|
||||
endif(BUILD_DOCS OR BUILD_EXTRAS)
|
||||
|
||||
if(BUILD_COLOUR_NAME_MAP)
|
||||
find_program(APP_GPERF gperf)
|
||||
|
||||
if(NOT APP_GPERF)
|
||||
message(FATAL_ERROR "Unable to find program 'gperf' (required at build-time as of Conky v1.20.2)")
|
||||
endif(NOT APP_GPERF)
|
||||
|
||||
mark_as_advanced(APP_GPERF)
|
||||
endif(BUILD_COLOUR_NAME_MAP)
|
||||
|
||||
if(CMAKE_BUILD_TYPE MATCHES "Debug")
|
||||
set(DEBUG true)
|
||||
endif(CMAKE_BUILD_TYPE MATCHES "Debug")
|
||||
|
@ -142,6 +142,8 @@
|
||||
|
||||
#cmakedefine BUILD_HSV_GRADIENT 1
|
||||
|
||||
#cmakedefine BUILD_COLOUR_NAME_MAP 1
|
||||
|
||||
#cmakedefine HAVE_STATFS64 1
|
||||
#ifndef HAVE_STATFS64
|
||||
#define statfs64 statfs
|
||||
|
@ -30,9 +30,14 @@
|
||||
default = conky;
|
||||
};
|
||||
|
||||
apps.conky = flake-utils.lib.mkApp {drv = packages.conky;};
|
||||
apps.conky = flake-utils.lib.mkApp {
|
||||
drv = packages.conky;
|
||||
};
|
||||
apps.default = apps.conky;
|
||||
devShells.default = mkShell {
|
||||
devShells.default =
|
||||
mkShell.override {
|
||||
stdenv = llvmPackages_18.libcxxStdenv;
|
||||
} rec {
|
||||
buildInputs =
|
||||
packages.conky.buildInputs
|
||||
++ packages.conky.nativeBuildInputs
|
||||
|
28
src/colour-names-stub.hh
Normal file
28
src/colour-names-stub.hh
Normal file
@ -0,0 +1,28 @@
|
||||
/*
|
||||
* To generate colour-names.hh, you must have gperf installed during build.
|
||||
* This is a dummy implementation for builds without gperf.
|
||||
* Color name matching will always return null (i.e. no match).
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
#include "logging.h"
|
||||
|
||||
struct rgb {
|
||||
const char *name;
|
||||
uint8_t red;
|
||||
uint8_t green;
|
||||
uint8_t blue;
|
||||
};
|
||||
|
||||
class color_name_hash {
|
||||
public:
|
||||
static const struct rgb *in_word_set(const char *str, size_t len);
|
||||
};
|
||||
|
||||
const struct rgb *color_name_hash::in_word_set(const char *str, size_t len) {
|
||||
DBGP2("color parsing not supported");
|
||||
return nullptr;
|
||||
}
|
@ -42,6 +42,7 @@ Colour Colour::from_argb32(uint32_t argb) {
|
||||
return out;
|
||||
}
|
||||
|
||||
#ifdef BUILD_COLOUR_NAME_MAP
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wregister"
|
||||
#pragma GCC diagnostic push
|
||||
@ -49,6 +50,9 @@ Colour Colour::from_argb32(uint32_t argb) {
|
||||
#include <colour-names.hh>
|
||||
#pragma clang diagnostic pop
|
||||
#pragma GCC diagnostic pop
|
||||
#else /* BUILD_COLOUR_NAME_MAP */
|
||||
#include "colour-names-stub.hh"
|
||||
#endif /* BUILD_COLOUR_NAME_MAP */
|
||||
|
||||
std::optional<Colour> parse_color_name(const std::string &name) {
|
||||
const rgb *value = color_name_hash::in_word_set(name.c_str(), name.length());
|
||||
|
@ -140,7 +140,7 @@ void run_all_callbacks() {
|
||||
if (cb.remaining-- == 0) {
|
||||
/* run the callback as long as someone holds a pointer to it;
|
||||
* if no one owns the callback, run it at most UNUSED_MAX times */
|
||||
if (!i->unique() || ++cb.unused < UNUSED_MAX) {
|
||||
if (i->use_count() > 1 || ++cb.unused < UNUSED_MAX) {
|
||||
cb.remaining = cb.period - 1;
|
||||
cb.run();
|
||||
if (cb.wait) { ++wait; }
|
||||
|
Loading…
Reference in New Issue
Block a user