i did a litte code grepping...seems there is a "workaround" for this, hidden in the source tree...
util/profile/prof_parse.c.Workaround-scandir-dirent-pointer:static int valid_name_scandir(const struct dirent *d)
util/profile/prof_parse.c.Workaround-scandir-dirent-pointer: num_ents = scandir(dirname, &namelist, &valid_name_scandir, &alphasort);
are you aware of this, and if yes, why is this not used?
------------------------------
I regret starting this entire conversation
------------------------------
Original Message:
Sent: Mon March 08, 2021 03:33 AM
From: C- -T
Subject: krb5-1.16.1: rebuild on AIX 7.1 fails
i need to rebuild this package on aix71 but it fails with the following error. no changes were made to the spec file or sources.
gmake[2]: Entering directory '/home/packagebuilder/rpmbuild/BUILD/krb5-1.16.1/src-64/util/profile'making all in util/profile/testmod...gmake[3]: Entering directory '/home/packagebuilder/rpmbuild/BUILD/krb5-1.16.1/src-64/util/profile/testmod'gmake[3]: Leaving directory '/home/packagebuilder/rpmbuild/BUILD/krb5-1.16.1/src-64/util/profile/testmod'gcc -maix64 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES -DHAVE_CONFIG_H -DHAS_STDARG -DLIBDIR=\"/opt/freeware/lib64\" -I../../include -I../../include -I. -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE -Wno-error=incompatible-pointer-types -O2 -g -fPIC -fno-strict-aliasing -DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_AIX53 -D_AIX61 -D_AIX71 -D_AIX72 -D_ALL_SOURCE -DFUNCPROTO=15 -O -I/opt/freeware/include -pthread -Wall -Wcast-align -Wshadow -Wmissing-prototypes -pedantic -Wno-format-zero-length -Woverflow -Wstrict-overflow -Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wunknown-pragmas -Wsign-compare -Werror=uninitialized -Wno-maybe-uninitialized -Werror=pointer-arith -Werror=int-conversion -Werror=incompatible-pointer-types -Werror=discarded-qualifiers -Werror=implicit-int -Werror=declaration-after-statement -Werror-implicit-function-declaration -c prof_parse.cprof_parse.c: In function 'parse_include_dir':prof_parse.c:309:44: error: passing argument 3 of 'scandir' from incompatible pointer type [-Werror=incompatible-pointer-types] num_ents = scandir(dirname, &namelist, &valid_name_scandir, &alphasort); ^~~~~~~~~~~~~~~~~~~In file included from /usr/include/dirent.h:35, from prof_parse.c:13:/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8/include-fixed/sys/dir.h:238:6: note: expected 'int (*)(const struct dirent *)' but argument is of type 'int (*)(struct dirent *)' int (*)(const struct dirent *), ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~cc1: some warnings being treated as errorsgmake[2]: *** [Makefile:493: prof_parse.o] Error 1gmake[2]: Leaving directory '/home/packagebuilder/rpmbuild/BUILD/krb5-1.16.1/src-64/util/profile'gmake[1]: *** [Makefile:869: all-recurse] Error 1gmake[1]: Leaving directory '/home/packagebuilder/rpmbuild/BUILD/krb5-1.16.1/src-64/util'gmake: *** [Makefile:1532: all-recurse] Error 1packagebuilder@aixbuildhostng: /home/packagebuilder/rpmbuild/BUILD/krb5-1.16.1/src-64 #
------------------------------
I regret starting this entire conversation
------------------------------
#AIXOpenSource