The plugin ipa-extdom-extop fails to build when using 389-ds pacakges from the copr repo @389ds/389-ds-base-nightly. See PR #1323 with the following build.log:
make[4]: Entering directory '/builddir/build/BUILD/freeipa-4.10.0.dev/daemons/ipa-slapi-plugins/ipa-extdom-extop' gcc -DHAVE_CONFIG_H -I. -I../../.. -I. -I./../common -DPREFIX=\""/usr"\" -DBINDIR=\""/usr/bin"\" -DLIBDIR=\""/usr/lib64"\" -DLIBEXECDIR=\""/usr/libexec"\" -DDATADIR=\""/usr/share"\" -DUSE_OPENLDAP -I/usr/include/dirsrv -I/usr/include/nspr4 -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -Wshadow -Wstrict-prototypes -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D__STDC_WANT_LIB_EXT1__=1 -D_DEFAULT_SOURCE=1 -D_POSIX_C_SOURCE=200809L -Werror=implicit-function-declaration -c -o extdom_cmocka_tests-ipa_extdom_cmocka_tests.o `test -f 'ipa_extdom_cmocka_tests.c' || echo './'`ipa_extdom_cmocka_tests.c gcc -DHAVE_CONFIG_H -I. -I../../.. -I. -I./../common -DPREFIX=\""/usr"\" -DBINDIR=\""/usr/bin"\" -DLIBDIR=\""/usr/lib64"\" -DLIBEXECDIR=\""/usr/libexec"\" -DDATADIR=\""/usr/share"\" -DUSE_OPENLDAP -I/usr/include/dirsrv -I/usr/include/nspr4 -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -Wshadow -Wstrict-prototypes -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D__STDC_WANT_LIB_EXT1__=1 -D_DEFAULT_SOURCE=1 -D_POSIX_C_SOURCE=200809L -Werror=implicit-function-declaration -c -o extdom_cmocka_tests-ipa_extdom_common.o `test -f 'ipa_extdom_common.c' || echo './'`ipa_extdom_common.c ipa_extdom_common.c:101:5: warning: no previous prototype for '__nss_to_err' [-Wmissing-prototypes] 101 | int __nss_to_err(enum nss_status errcode) | ^~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:55:5: error: conflicting types for 'slapi_log_error'; have 'int(int, char *, char *, ...)' 55 | int slapi_log_error(int loglevel, char *subsystem, char *fmt, ...) | ^~~~~~~~~~~~~~~ ipa_extdom_common.c:730:5: warning: no previous prototype for 'pack_ber_name_list' [-Wmissing-prototypes] 730 | int pack_ber_name_list(struct extdom_req *req, char **fq_name_list, | ^~~~~~~~~~~~~~~~~~ In file included from ipa_extdom.h:58, from ipa_extdom_cmocka_tests.c:35: /usr/include/dirsrv/slapi-plugin.h:6033:5: note: previous declaration of 'slapi_log_error' with type 'int(int, const char *, const char *, ...)' 6033 | int slapi_log_error(int loglevel, const char *subsystem, const char *fmt, ...) | ^~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:92:5: warning: no previous prototype for 'cmocka_extdom_init_context' [-Wmissing-prototypes] 92 | int cmocka_extdom_init_context(struct nss_ops_ctx **nss_context) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:145:6: warning: no previous prototype for 'test_getpwnam_r_wrapper' [-Wmissing-prototypes] 145 | void test_getpwnam_r_wrapper(void **state) | ^~~~~~~~~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:205:6: warning: no previous prototype for 'test_getpwuid_r_wrapper' [-Wmissing-prototypes] 205 | void test_getpwuid_r_wrapper(void **state) | ^~~~~~~~~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:260:6: warning: no previous prototype for 'test_getgrnam_r_wrapper' [-Wmissing-prototypes] 260 | void test_getgrnam_r_wrapper(void **state) | ^~~~~~~~~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:313:6: warning: no previous prototype for 'test_getgrgid_r_wrapper' [-Wmissing-prototypes] 313 | void test_getgrgid_r_wrapper(void **state) | ^~~~~~~~~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:365:6: warning: no previous prototype for 'test_get_user_grouplist' [-Wmissing-prototypes] 365 | void test_get_user_grouplist(void **state) | ^~~~~~~~~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:458:6: warning: no previous prototype for 'test_set_err_msg' [-Wmissing-prototypes] 458 | void test_set_err_msg(void **state) | ^~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:493:6: warning: no previous prototype for 'test_pack_ber_user_timeout' [-Wmissing-prototypes] 493 | void test_pack_ber_user_timeout(void **state) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ ipa_extdom_cmocka_tests.c:527:6: warning: no previous prototype for 'test_encode' [-Wmissing-prototypes] 527 | void test_encode(void **state) | ^~~~~~~~~~~ ipa_extdom_cmocka_tests.c:578:6: warning: no previous prototype for 'test_decode' [-Wmissing-prototypes] 578 | void test_decode(void **state) | ^~~~~~~~~~~ make[4]: *** [Makefile:859: extdom_cmocka_tests-ipa_extdom_cmocka_tests.o] Error 1
On 389-ds-base master branch, commit 53f8d1b changed the definition of slapi_log_error:
-int slapi_log_error(int loglevel, char *subsystem, char *fmt, ...) +int slapi_log_error(int loglevel, const char *subsystem, const char *fmt, ...) ... -int slapi_log_error_ext(int loglevel, char *subsystem, char *fmt, va_list varg1, va_list varg2); +int slapi_log_error_ext(int loglevel, const char *subsystem, const char *fmt, va_list varg1, va_list varg2);
Fixed with commit 6100985 on 389-ds-base master branch.
The build succeeded in the nightly tests, see PR #1338, the issue can be closed.
Metadata Update from @frenaud: - Issue close_status updated to: fixed - Issue status updated to: Closed (was: Open)