Re: Can't build FreeBSD-head with CLANG
On 08/30/2012 09:16, Dimitry Andric wrote: > [Note that linking GPL-contaminated code into your > kernel proper is, shall we say, "ideologically impure" ;-) But that is > not the issue here.] Can you keep this kind of stuff to -chat please? The more we deal with the technical aspects the better off we will all be. I for one put ext2fs in my kernel config because I have critical stuff on those file systems and I both do want the speed boost and don't want to worry about what's going to happen when I boot a new kernel. Tools, not policy. Doug -- I am only one, but I am one. I cannot do everything, but I can do something. And I will not let what I cannot do interfere with what I can do. -- Edward Everett Hale, (1822 - 1909) ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
-- Eir Nym On 1 September 2012 03:12, Dimitry Andric wrote: > On 2012-08-30 18:43, Eir Nym wrote: >> >> On 30 August 2012 20:16, Dimitry Andric wrote: > > ... > >>> It seems the WERROR= in the xfs module Makefile was right there from the >>> start, but it was never removed. I have compiled it using gcc, and >>> there are actually no warnings from gcc at all. With clang, there are >>> several warnings, so I have added a few workaround -Wno-xxx flags for >>> them. > > > I committed the fixes in r239959. I tried building your GENERIC_PF > kernel configuration, and it worked just fine now. Thank you! I'll review my configurations and rebuild my box. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
On 2012-08-30 18:43, Eir Nym wrote: On 30 August 2012 20:16, Dimitry Andric wrote: ... It seems the WERROR= in the xfs module Makefile was right there from the start, but it was never removed. I have compiled it using gcc, and there are actually no warnings from gcc at all. With clang, there are several warnings, so I have added a few workaround -Wno-xxx flags for them. I committed the fixes in r239959. I tried building your GENERIC_PF kernel configuration, and it worked just fine now. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
-- Eir Nym On 30 August 2012 20:16, Dimitry Andric wrote: > On 2012-08-29 10:41, Eir Nym wrote: > ... > /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable 'fbno' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~ >>> >>> >>> >>> Weird, how are you building the xfs module? It has WERROR= in its >>> Makefile, so the '-Werror' option above should not be there. This is >>> because the XFS code was imported more than 6 years ago, and is very >>> unlikely to ever be fixed. :) >> >> >> head SVN revision 239793, >> http://eroese.org/_/_/pub/bsd/GENERIC_PF.amd64 — kernel config > > > Aha, I finally had some time to look at this again, and it seems that > when xfs is statically linked into your kernel, the disabling of -Werror > does not take place. [Note that linking GPL-contaminated code into your > kernel proper is, shall we say, "ideologically impure" ;-) But that is > not the issue here.] > I don't like ideological contradictions in any way, but I should review real using modules in the kernel. > It seems the WERROR= in the xfs module Makefile was right there from the > start, but it was never removed. I have compiled it using gcc, and > there are actually no warnings from gcc at all. With clang, there are > several warnings, so I have added a few workaround -Wno-xxx flags for > them. > My kernel & world builds correctly with gcc too, but I want to almost stop using it. > Currently I'm running a make universe to see if this doesn't cause any > trouble, and if it completes successfully, I will commit the changes. > > Then I'll mail a note here so you can update your tree and try it out. > Oh! Thank you for your efforts! ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
On 2012-08-29 10:41, Eir Nym wrote: ... /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable 'fbno' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~ Weird, how are you building the xfs module? It has WERROR= in its Makefile, so the '-Werror' option above should not be there. This is because the XFS code was imported more than 6 years ago, and is very unlikely to ever be fixed. :) head SVN revision 239793, http://eroese.org/_/_/pub/bsd/GENERIC_PF.amd64 — kernel config Aha, I finally had some time to look at this again, and it seems that when xfs is statically linked into your kernel, the disabling of -Werror does not take place. [Note that linking GPL-contaminated code into your kernel proper is, shall we say, "ideologically impure" ;-) But that is not the issue here.] It seems the WERROR= in the xfs module Makefile was right there from the start, but it was never removed. I have compiled it using gcc, and there are actually no warnings from gcc at all. With clang, there are several warnings, so I have added a few workaround -Wno-xxx flags for them. Currently I'm running a make universe to see if this doesn't cause any trouble, and if it completes successfully, I will commit the changes. Then I'll mail a note here so you can update your tree and try it out. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
-- Eir Nym On 29 August 2012 12:41, Eir Nym wrote: > -- Eir Nym > > > On 29 August 2012 01:19, Dimitry Andric wrote: >> On 2012-08-28 23:05, Eir Nym wrote: >> ... >> >>> This one for example: >>> cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall >>> -Wredundant-decls -Wnested-externs -Wstrict-prototypes >>> -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef >>> -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs >>> -fdiagnostics-show-option -Wno-error-tautological-compare >>> -Wno-error-empty-body -Wno-error-parentheses-equality -nostdinc -I. >>> -I/usr/head/src/sys -I/usr/head/src/sys/contrib/altq -D_KERNEL >>> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h >>> -fno-omit-frame-pointer -mno-aes -mno-avx -mcmodel=kernel >>> -mno-red-zone -mno-mmx -mno-sse -msoft-float >>> -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector >>> -Werror /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c >>> -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD >>> -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD/support >>> -I/usr/head/src/sys/gnu/fs/xfs >>> /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable >>> 'fbno' is used uninitialized whenever 'if' condition is false >>> [-Werror,-Wsometimes-uninitialized] >>> else if (args->minlen == 1 && args->alignment == 1 && !args->isfl >>> && >>> >>> ^~~ >> >> >> Weird, how are you building the xfs module? It has WERROR= in its >> Makefile, so the '-Werror' option above should not be there. This is >> because the XFS code was imported more than 6 years ago, and is very >> unlikely to ever be fixed. :) > > head SVN revision 239793, > http://eroese.org/_/_/pub/bsd/GENERIC_PF.amd64 — kernel config http://eroese.org/_/_/pub/bsd/kernel.amd64.GENERIC_PF — full logs for it. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
-- Eir Nym On 29 August 2012 01:19, Dimitry Andric wrote: > On 2012-08-28 23:05, Eir Nym wrote: > ... > >> This one for example: >> cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall >> -Wredundant-decls -Wnested-externs -Wstrict-prototypes >> -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef >> -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs >> -fdiagnostics-show-option -Wno-error-tautological-compare >> -Wno-error-empty-body -Wno-error-parentheses-equality -nostdinc -I. >> -I/usr/head/src/sys -I/usr/head/src/sys/contrib/altq -D_KERNEL >> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h >> -fno-omit-frame-pointer -mno-aes -mno-avx -mcmodel=kernel >> -mno-red-zone -mno-mmx -mno-sse -msoft-float >> -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector >> -Werror /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c >> -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD >> -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD/support >> -I/usr/head/src/sys/gnu/fs/xfs >> /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable >> 'fbno' is used uninitialized whenever 'if' condition is false >> [-Werror,-Wsometimes-uninitialized] >> else if (args->minlen == 1 && args->alignment == 1 && !args->isfl >> && >> >> ^~~ > > > Weird, how are you building the xfs module? It has WERROR= in its > Makefile, so the '-Werror' option above should not be there. This is > because the XFS code was imported more than 6 years ago, and is very > unlikely to ever be fixed. :) head SVN revision 239793, http://eroese.org/_/_/pub/bsd/GENERIC_PF.amd64 — kernel config ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
On 2012-08-28 23:05, Eir Nym wrote: ... This one for example: cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -nostdinc -I. -I/usr/head/src/sys -I/usr/head/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-omit-frame-pointer -mno-aes -mno-avx -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD/support -I/usr/head/src/sys/gnu/fs/xfs /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable 'fbno' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~ Weird, how are you building the xfs module? It has WERROR= in its Makefile, so the '-Werror' option above should not be there. This is because the XFS code was imported more than 6 years ago, and is very unlikely to ever be fixed. :) ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
-- Eir Nym On 29 August 2012 00:28, Dimitry Andric wrote: > On 2012-08-28 21:51, Eir Nym wrote: >> >> On 28 August 2012 22:49, Dimitry Andric wrote: >>> >>> On 2012-08-28 18:31, Eir Nym wrote: >>> What is the error you were getting on amd64? >> >> i386 never failed, amd64 — always > > > Please post the *exact* error message, otherwise I will not be able to > help you. > This one for example: cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -nostdinc -I. -I/usr/head/src/sys -I/usr/head/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-omit-frame-pointer -mno-aes -mno-avx -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD -I/usr/head/src/sys/gnu/fs/xfs/FreeBSD/support -I/usr/head/src/sys/gnu/fs/xfs /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable 'fbno' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1492:11: note: uninitialized use occurs here *fbnop = fbno; ^~~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:7: note: remove the 'if' if its condition is always true else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable 'fbno' is used uninitialized whenever '&&' condition is false [-Werror,-Wsometimes-uninitialized] else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1492:11: note: uninitialized use occurs here *fbnop = fbno; ^~~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: note: remove the '&&' if its condition is always true else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable 'fbno' is used uninitialized whenever '&&' condition is false [-Werror,-Wsometimes-uninitialized] else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1492:11: note: uninitialized use occurs here *fbnop = fbno; ^~~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: note: remove the '&&' if its condition is always true else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable 'fbno' is used uninitialized whenever '&&' condition is false [-Werror,-Wsometimes-uninitialized] else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1492:11: note: uninitialized use occurs here *fbnop = fbno; ^~~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: note: remove the '&&' if its condition is always true else if (args->minlen == 1 && args->alignment == 1 && !args->isfl && ^~~~ /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1430:20: note: initialize the variable 'fbno' to silence this warning xfs_agblock_t fbno; ^ = 0 4 errors generated. *** [xfs_alloc.o] Error code 1 ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
On 2012-08-28 21:51, Eir Nym wrote: On 28 August 2012 22:49, Dimitry Andric wrote: On 2012-08-28 18:31, Eir Nym wrote: What is the error you were getting on amd64? i386 never failed, amd64 — always Please post the *exact* error message, otherwise I will not be able to help you. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
-- Eir Nym On 28 August 2012 23:51, Eir Nym wrote: > -- Eir Nym > > > On 28 August 2012 22:49, Dimitry Andric wrote: >> On 2012-08-28 18:31, Eir Nym wrote: >>> >>> I can't build FreeBSD (GENERIC & custom kernel) with clang. Build >>> finishes for i386 and fails for amd64 for same kernels >> >> >> What is the error you were getting on amd64? >> >> > i386 never failed, amd64 — always >> >>> I have bsd box with following clang version: FreeBSD clang version 3.0 (branches/release_30 142614) 20111021 Target: x86_64-unknown-freebsd10.0 Thread model: posix >> >> >> This is rather old, we went through clang 3.1 some time ago, and >> recently updated it to 3.2. >> >> > > I use to be sure I use latest clang > make kernel-toolchain buildkernel ${other_args} > >> >>> I try to compile it with /dev/null as make.conf and following src.conf: >> >> ... >> >>> but I constantly get warnings (not long ago they was errors) in kernel >>> like this: >>> /usr/head/src/sys/netgraph/ng_parse.c:1263:14: warning: comparison of >>> unsigned expression < 0 is always false [-Wtautological-compare] >>> if (index < 0 || eptr - (s + *off) != len) { >>> ~ ^ ~ >>> 1 warning generated. >>> >>> Also I get not initialized warnings and so on. >> >> >> You can safely ignore those. They are just an incentive for the >> maintainers to fix them eventually. Those tautological comparison >> warnings specifically are quite harmless: the compiler will optimize the >> unused code away anyhow. > > I know about ignorance, but compiler fails at them. my simple make world script is in attachment ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
-- Eir Nym On 28 August 2012 22:49, Dimitry Andric wrote: > On 2012-08-28 18:31, Eir Nym wrote: >> >> I can't build FreeBSD (GENERIC & custom kernel) with clang. Build >> finishes for i386 and fails for amd64 for same kernels > > > What is the error you were getting on amd64? > > i386 never failed, amd64 — always > >> I have bsd box with following clang version: >>> >>> FreeBSD clang version 3.0 (branches/release_30 142614) 20111021 >>> Target: x86_64-unknown-freebsd10.0 >>> Thread model: posix > > > This is rather old, we went through clang 3.1 some time ago, and > recently updated it to 3.2. > > I use to be sure I use latest clang make kernel-toolchain buildkernel ${other_args} > >> I try to compile it with /dev/null as make.conf and following src.conf: > > ... > >> but I constantly get warnings (not long ago they was errors) in kernel >> like this: >> /usr/head/src/sys/netgraph/ng_parse.c:1263:14: warning: comparison of >> unsigned expression < 0 is always false [-Wtautological-compare] >> if (index < 0 || eptr - (s + *off) != len) { >> ~ ^ ~ >> 1 warning generated. >> >> Also I get not initialized warnings and so on. > > > You can safely ignore those. They are just an incentive for the > maintainers to fix them eventually. Those tautological comparison > warnings specifically are quite harmless: the compiler will optimize the > unused code away anyhow. I know about ignorance, but compiler fails at them. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: Can't build FreeBSD-head with CLANG
On 2012-08-28 18:31, Eir Nym wrote: I can't build FreeBSD (GENERIC & custom kernel) with clang. Build finishes for i386 and fails for amd64 for same kernels What is the error you were getting on amd64? I have bsd box with following clang version: FreeBSD clang version 3.0 (branches/release_30 142614) 20111021 Target: x86_64-unknown-freebsd10.0 Thread model: posix This is rather old, we went through clang 3.1 some time ago, and recently updated it to 3.2. I try to compile it with /dev/null as make.conf and following src.conf: ... but I constantly get warnings (not long ago they was errors) in kernel like this: /usr/head/src/sys/netgraph/ng_parse.c:1263:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare] if (index < 0 || eptr - (s + *off) != len) { ~ ^ ~ 1 warning generated. Also I get not initialized warnings and so on. You can safely ignore those. They are just an incentive for the maintainers to fix them eventually. Those tautological comparison warnings specifically are quite harmless: the compiler will optimize the unused code away anyhow. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Can't build FreeBSD-head with CLANG
I can't build FreeBSD (GENERIC & custom kernel) with clang. Build finishes for i386 and fails for amd64 for same kernels I have bsd box with following clang version: > FreeBSD clang version 3.0 (branches/release_30 142614) 20111021 > Target: x86_64-unknown-freebsd10.0 > Thread model: posix I try to compile it with /dev/null as make.conf and following src.conf: > WITHOUT_AMD="YES" > WITHOUT_ASSERT_DEBUG="YES" > WITHOUT_ATM="YES" > WITH_BIND_LARGE_FILE="YES" > WITH_BIND_SIGCHASE="YES" > WITH_BSD_GREP="YES" > WITHOUT_CTM="YES" > WITH_CLANG="YES" > WITH_CLANG_EXTRAS="YES" > WITH_CLANG_IS_CC="YES" > WITH_CTF="YES" > WITHOUT_DYNAMICROOT="YES" > WITHOUT_FLOPPY="YES" > WITH_ICONV="YES" > WITHOUT_IPFILTER="YES" > WITHOUT_IPFW="YES" > WITHOUT_IPX="YES" > WITHOUT_IPX_SUPPORT="YES" > WITHOUT_NCP="YES" > WITHOUT_NIS="YES" > WITHOUT_NLS_CATALOGS="YES" > WITHOUT_TCSH="YES" > WITHOUT_RCMDS="YES" but I constantly get warnings (not long ago they was errors) in kernel like this: /usr/head/src/sys/netgraph/ng_parse.c:1263:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare] if (index < 0 || eptr - (s + *off) != len) { ~ ^ ~ 1 warning generated. Also I get not initialized warnings and so on. I don't want build it with gcc. -- Eir Nym ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"