Doesn't compile with libgit2 and curl feature disabled
Siril version: 1.4.0
Operating System: Linux (Gentoo)
Package: Compiled from source to package for Gentoo
Description of the bug
The source code doesn't compile with libgit2 and curl feature both disabled.
Reproduction
Reproduction steps:
meson setup ... -Dlibgit2=false -Dlibcurl=false ...- Compile
Expected result:
Source compiles sucessfully
Actual result:
FAILED: [code=1] src/libsiril.a.p/core_command.c.o
x86_64-pc-linux-gnu-gcc -Isrc/libsiril.a.p -Isrc -I../siril-1.4.0/src -Isubprojects/htmesh -I../siril-1.4.0/subprojects/htmesh -Isubprojects/healpix_cxx -I../siril-1.4.0/subprojects/healpix_cxx -Isubprojects/kplot -I../siril-1.4.0/subprojects/kplot -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/libmount -I/usr/include/uuid -I/usr/include/json-c -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/webp -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/atk-1.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/elogind -I/usr/include/fribidi -I/usr/include/libpng16 -I/usr/include/pixman-1 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/opencv4 -I/usr/include/wcslib -I/usr/include/gtksourceview-4 -I/usr/include/libxml2 -fdiagnostics-color=always -Wall -Winvalid-pch -std=gnu11 -march=native -O2 -pipe -fPIC -pthread -DHAVE_CONFIG_H -fcommon -fno-math-errno -D_FILE_OFFSET_BITS=64 -MD -MQ src/libsiril.a.p/core_command.c.o -MF src/libsiril.a.p/core_command.c.o.d -o src/libsiril.a.p/core_command.c.o -c ../siril-1.4.0/src/core/command.c
../siril-1.4.0/src/core/command.c: In function ‘process_requires’:
../siril-1.4.0/src/core/command.c:9707:42: error: implicit declaration of function ‘get_current_version_number’ [-Wimplicit-function-declaration]
9707 | version_number current_version = get_current_version_number();
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../siril-1.4.0/src/core/command.c:9707:42: error: invalid initializer
../siril-1.4.0/src/core/command.c:9708:43: error: implicit declaration of function ‘get_version_number_from_string’ [-Wimplicit-function-declaration]
9708 | version_number required_version = get_version_number_from_string(word[1]);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../siril-1.4.0/src/core/command.c:9708:43: error: invalid initializer
../siril-1.4.0/src/core/command.c:9710:26: error: implicit declaration of function ‘compare_version’; did you mean ‘cairo_version’? [-Wimplicit-function-declaration]
9710 | int new_enough = compare_version(current_version, required_version);
| ^~~~~~~~~~~~~~~
| cairo_version
../siril-1.4.0/src/core/command.c:9713:35: error: incompatible types when assigning to type ‘version_number’ from type ‘int’
9713 | expired_version = get_version_number_from_string(word[2]);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Additional information
In src/core/siril_update.h the declarations of get_version_number_from_string() and compare_version() are conditional on HAVE_LIBGIT2 || HAVE_LIBCURL, but the functions are called unconditionally in src/core/command.c.
Edited by Mario Haustein