On Sat, Oct 15, 2016 at 01:40:43PM -0400, James McCoy wrote: > On Sat, Oct 15, 2016 at 03:41:07PM +0100, Steven Chamberlain wrote: > > Steven Chamberlain wrote: > > > If I override that flag with -fno-wrapv: > > > > > > + $(CCC) $(LUA_CFLAGS) $(PERL_CFLAGS) -fno-wrapv $(PYTHON_CFLAGS) > > > $(PYTHON3_CFLAGS) $(RUBY_CFLAGS) $(TCL_CFLAGS) -o $@ option.c > > > > > > then it no longer segfaults, and all vim-gtk tests pass :) > > > > Or, I possibly mis-compiled it without Perl bindings. I'd better > > double-check this first. > > -fno-wrapv doesn't seem to have an effect for me. > > Playing around with the other flags, it actually seems to be the > large file support flags. configure determines that they aren't > generally needed, so they aren't part of CFLAGS for most of the source > files. However, PERL_CFLAGS does contain them. > > Lo and behold, configuring without --enable-perlinterp but adding > "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" to PERL_CFLAGS in > src/auto/config.mk reproduces the issue. > > Which begs the question, why does configure think the defines aren't > necessary?
And why does Perl's build think they are necessary, advertising them as required to build against Perl? Removing all those $(<lang>_CFLAGS) from the compile command for option.c fixes (or at least papers over the actual problem) on kfreebsd-amd64. It slightly helps on kfreebsd-i386, in that everything other than the Perl language bindings work. However, the language bindings themselves (which are tested during the build) crash with the useless backtraces seen before. Cheers, -- James GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7 2D23 DFE6 91AE 331B A3DB