sys-auth/pam_usb-0.4.2 build fails with this log: gcc -c -O2 -fomit-frame-pointer -pipe -mfpmath=sse -march=core2 -Wall -fPIC `pkg-config --cflags libxml-2.0` `pkg-config --cflags hal-storage` src/pam.c -o src/pam.o src/pam.c: In function ‘pam_sm_authenticate’: src/pam.c:48: error: ‘NULL’ undeclared (first use in this function) src/pam.c:48: error: (Each undeclared identifier is reported only once src/pam.c:48: error: for each function it appears in.) src/pam.c:55: warning: implicit declaration of function ‘strcmp’ For reference, 0.4.1 builds just fine.
The 0.4.2 version pam.c file includes following headers: #include <security/pam_modules.h> #include <security/pam_appl.h> (and few local files) In any of them there is no declaration of NULL or including of any glibc headers. Whereas in 0.4.1 pam.c we have: #include <security/pam_modules.h> #include <security/_pam_macros.h> The <security/_pam_macros.h> header makes the difference. I don't know the pam_usb source and I think that including the header may be not a good soulution, but we always patch the pam.c source file with e.g. #include <stdio.h> or suchlike.
This is my fault. But funnily enough here it builds, probably something creeps in here. Will fix in a second.
Okay should be fine now, sorry for the mess.