Project

General

Profile

Bug #12200

deprecated lensfun functions

Added by Heiko Bauke 3 months ago. Updated 3 months ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
Darkroom
Target version:
Start date:
05/16/2018
Due date:
% Done:

0%

Affected Version:
git master branch
System:
all
bitness:
64-bit
hardware architecture:
amd64/x86

Description

Darktable cannot be compiled when the current development version of liblensfun is installed. Several lensfun functions (which are utilized in darktable) have been marked as deprecated. The compiler option -Werror turns the resulting warnings into errors and therefore the compilation fails.

In file included from /darktable/build/src/iop/introspection_lens.c:54:0:
/darktable/src/iop/lens.c: In function ‘init_global’:
/darktable/src/iop/lens.c:1091:5: error: ‘HomeDataDir’ is deprecated [-Werror=deprecated-declarations]
     g_free(dt_iop_lensfun_db->HomeDataDir);
     ^~~~~~
In file included from /darktable/src/iop/lens.c:39:0,
                 from /darktable/build/src/iop/introspection_lens.c:54:
/usr/include/lensfun/lensfun.h:1370:22: note: declared here
     DEPRECATED char *HomeDataDir;
                      ^~~~~~~~~~~
In file included from /darktable/build/src/iop/introspection_lens.c:54:0:
/darktable/src/iop/lens.c:1092:5: error: ‘HomeDataDir’ is deprecated [-Werror=deprecated-declarations]
     dt_iop_lensfun_db->HomeDataDir = g_build_filename(path, "lensfun", "version_" STR(LF_MAX_DATABASE_VERSION), NULL);
     ^~~~~~~~~~~~~~~~~
In file included from /darktable/src/iop/lens.c:39:0,
                 from /darktable/build/src/iop/introspection_lens.c:54:
/usr/include/lensfun/lensfun.h:1370:22: note: declared here
     DEPRECATED char *HomeDataDir;
                      ^~~~~~~~~~~
In file included from /darktable/build/src/iop/introspection_lens.c:54:0:
/darktable/src/iop/lens.c:1097:7: error: ‘HomeDataDir’ is deprecated [-Werror=deprecated-declarations]
       g_free(dt_iop_lensfun_db->HomeDataDir);
       ^~~~~~
In file included from /darktable/src/iop/lens.c:39:0,
                 from /darktable/build/src/iop/introspection_lens.c:54:
/usr/include/lensfun/lensfun.h:1370:22: note: declared here
     DEPRECATED char *HomeDataDir;
                      ^~~~~~~~~~~
In file included from /darktable/build/src/iop/introspection_lens.c:54:0:
/darktable/src/iop/lens.c:1098:7: error: ‘HomeDataDir’ is deprecated [-Werror=deprecated-declarations]
       dt_iop_lensfun_db->HomeDataDir = g_build_filename(path, "lensfun", NULL);
       ^~~~~~~~~~~~~~~~~
In file included from /darktable/src/iop/lens.c:39:0,
                 from /darktable/build/src/iop/introspection_lens.c:54:
/usr/include/lensfun/lensfun.h:1370:22: note: declared here
     DEPRECATED char *HomeDataDir;
                      ^~~~~~~~~~~

History

#1 Updated by Heiko Bauke 3 months ago

Addendum: the deprecated struct element HomeDataDir has been replaced by the C++ class member UserLocation. This means the replacement for the deprecated element can not be used by darktable, which is written in C.

Also available in: Atom PDF