Hi all, since some days i try to "make buildworld", but have some errors in sendmail. The make conf is not changed since years (in this case) . Adding NO_WERROR= in src.conf helps, but i think it is not the optimal solution? # SASL (cyrus-sasl v2) sendmail build flags... SENDMAIL_CFLAGS+=-I/usr/local/include -DSASL=2 SENDMAIL_LDFLAGS+=-L/usr/local/lib SENDMAIL_LDADD+=-lsasl2 SENDMAIL_CFLAGS+= -D_FFR_SMTP_SSL SENDMAIL_MC = /etc/mail/xyz.mc WITH_SSL_AND_PLAINTEXT=yes # for imaps and cclient ==============src.conf================== CC=clang CXX=clang++ CPP=clang-cpp # This setting to build world without -Werror: # NO_WERROR# This setting to build kernel without -Werror: # WERROR =================buildworld============== /usr/src/usr.sbin/sendmail/../../contrib/sendmail/src/usersmtp.c:1864:8: error: incompatible pointer types passing 'void ()' to parameter of type 'void (*)(char *, bool, MAILER *, struct mailer_con_info *, ENVELOPE *)' [-Werror,-Wincompatible-pointer-types] getsasldata, NULL, XS_AUTH); ^~~~~~~~~~~ /usr/src/usr.sbin/sendmail/../../contrib/sendmail/src/sendmail.h:2519:67: note: passing argument to parameter here extern int reply __P((MAILER *, MCI *, ENVELOPE *, time_t, void (*)__P((char *, bool, MAILER *, MCI *, ENVELOPE *)), char **, int)); ^ /usr/obj/usr/src/tmp/usr/include/sys/cdefs.h:129:21: note: expanded from macro '__P' #define __P(protos) protos /* full-blown ANSI C */ ^ 3 errors generated. *** [usersmtp.o] Error code 1 1 error *** [all] Error code 2 1 error *** [usr.sbin.all__D] Error code 2 1 error *** [everything] Error code 2 1 error *** [buildworld] Error code 2 1 error regards beat
On Mon, Mar 18, 2013 at 1:03 PM, Beat Siegenthaler <beat.siegenthaler at beatsnet.com> wrote:> Hi all, > > since some days i try to "make buildworld", but have some errors in > sendmail. > The make conf is not changed since years (in this case) . Adding > NO_WERROR= in src.conf helps, but i think it is not the optimal solution? > > # SASL (cyrus-sasl v2) sendmail build flags... > SENDMAIL_CFLAGS+=-I/usr/local/include -DSASL=2 > SENDMAIL_LDFLAGS+=-L/usr/local/lib > SENDMAIL_LDADD+=-lsasl2 > SENDMAIL_CFLAGS+= -D_FFR_SMTP_SSL > > SENDMAIL_MC = /etc/mail/xyz.mc > WITH_SSL_AND_PLAINTEXT=yes # for imaps and cclient > > ==============src.conf==================> > CC=clang > CXX=clang++ > CPP=clang-cpp > # This setting to build world without -Werror: > # NO_WERROR> # This setting to build kernel without -Werror: > # WERROR> > =================buildworld==============> > /usr/src/usr.sbin/sendmail/../../contrib/sendmail/src/usersmtp.c:1864:8: > error: incompatible pointer types passing 'void ()' to parameter of type > 'void (*)(char *, bool, MAILER *, struct mailer_con_info *, ENVELOPE *)' > [-Werror,-Wincompatible-pointer-types] > getsasldata, NULL, XS_AUTH); > ^~~~~~~~~~~ > /usr/src/usr.sbin/sendmail/../../contrib/sendmail/src/sendmail.h:2519:67: note: > passing argument to parameter here > extern int reply __P((MAILER *, MCI *, ENVELOPE *, time_t, void > (*)__P((char *, bool, MAILER *, MCI *, ENVELOPE *)), char **, int)); > ^ > /usr/obj/usr/src/tmp/usr/include/sys/cdefs.h:129:21: note: expanded from > macro '__P' > #define __P(protos) protos /* full-blown ANSI C */ > ^ > 3 errors generated. > *** [usersmtp.o] Error code 1 > 1 error > *** [all] Error code 2 > 1 error > *** [usr.sbin.all__D] Error code 2 > 1 error > *** [everything] Error code 2 > 1 error > *** [buildworld] Error code 2 > 1 error > > regards > beatI can not help with the error but I really have to make this question: Does FreeBSD really have to support pre-ANSI C compilers in 2013? -Kimmo
On Mar 18, 2013, at 12:03, Beat Siegenthaler <beat.siegenthaler at beatsnet.com> wrote:> since some days i try to "make buildworld", but have some errors in > sendmail. > The make conf is not changed since years (in this case) . Adding > NO_WERROR= in src.conf helps, but i think it is not the optimal solution? > > # SASL (cyrus-sasl v2) sendmail build flags... > SENDMAIL_CFLAGS+=-I/usr/local/include -DSASL=2 > SENDMAIL_LDFLAGS+=-L/usr/local/lib > SENDMAIL_LDADD+=-lsasl2 > SENDMAIL_CFLAGS+= -D_FFR_SMTP_SSL...> /usr/src/usr.sbin/sendmail/../../contrib/sendmail/src/usersmtp.c:1864:8: > error: incompatible pointer types passing 'void ()' to parameter of type > 'void (*)(char *, bool, MAILER *, struct mailer_con_info *, ENVELOPE *)' > [-Werror,-Wincompatible-pointer-types] > getsasldata, NULL, XS_AUTH); > ^~~~~~~~~~~We used to build sendmail with NO_WERROR.clang= to disable -Werror specifically for clang, because there were some warnings that could not be suppressed otherwise. But since r246880 we reverted that workaround, so this may be why you are now seeing these -Werror messages. In any case, if you are pulling port headers into your buildworld, the effect is not always predictable, as ports are largely independent from base. So if you need a customized build of sendmail, would it not be better to use the mail/sendmail port instead? There you can easily enable all bells and whistles that are not enabled by default in base.
On 18.03.13 18:19, Dimitry Andric wrote:> We used to build sendmail with NO_WERROR.clang= to disable -Werror > specifically for clang, because there were some warnings that could > not be suppressed otherwise. So if you need a customized build of > sendmail, would it not be better to use the mail/sendmail port > instead? There you can easily enable all bells and whistles that are > not enabled by default in base.Ok, good point... force of habit. Since years. Will use Port... regards, Beat