want_qrencode = get_option('qrencode')
if want_qrencode != 'false' and not skip_deps
libqrencode = dependency('libqrencode',
- version : '>= 4',
+ version : '>= 3',
required : want_qrencode == 'true')
have = libqrencode.found()
else
#include "dlfcn-util.h"
#include "locale-util.h"
#include "log.h"
+#include "strv.h"
#include "terminal-util.h"
#define ANSI_WHITE_ON_BLACK "\033[40;37;1m"
static void (*sym_QRcode_free)(QRcode *qrcode) = NULL;
int dlopen_qrencode(void) {
- return dlopen_many_sym_or_warn(
- &qrcode_dl, "libqrencode.so.4", LOG_DEBUG,
+ int r;
+
+ FOREACH_STRING(s, "libqrencode.so.4", "libqrencode.so.3") {
+ r = dlopen_many_sym_or_warn(
+ &qrcode_dl, s, LOG_DEBUG,
DLSYM_ARG(QRcode_encodeString),
DLSYM_ARG(QRcode_free));
+ if (r >= 0)
+ break;
+ }
+
+ return r;
}
static void print_border(FILE *output, unsigned width) {