11.0 -r297369: _el_fn_sh_complete missing in buildworld; /usr/obj/. . ./lib/libedit/ has no filecomplete.*
Mark Millard
markmi at dsl-only.net
Wed Mar 30 01:35:36 UTC 2016
Going from 11.0-CURRENT -r297048 to -r297369: buildworld after svnlite update:
/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/. . . ends up with no filecomplete.*
but the build tries to use what would be some of its contents (_el_fn_sh_complete)
The details. . .
> --- all_subdir_bin ---
> --- sh.full ---
> /usr/local/bin/powerpc64-portbld-freebsd11.0-gcc -isystem /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include --sysroot=/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp -B/usr/local/powerpc
> 64-freebsd/bin/ -O2 -pipe -DSHELL -I. -I/usr/src/bin/sh -g -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-error=unused-function -W
> no-error=enum-compare -Wno-error=logical-not-parentheses -Wno-error=bool-compare -Wno-error=uninitialized -Wno-error=array-bounds -Wno-error=clobbered -Wno-error=cast-align -Wno-error=extra -Wno-error
> =attributes -Wno-error=inline -Wno-error=unused-but-set-variable -Wno-error=unused-value -Wno-error=strict-aliasing -Wno-error=address -o sh.full alias.o arith_yacc.o arith_yylex.o cd.o echo.o error.
> o eval.o exec.o expand.o histedit.o input.o jobs.o kill.o mail.o main.o memalloc.o miscbltin.o mystring.o options.o output.o parser.o printf.o redir.o show.o test.o trap.o var.o builtins.o nodes.o syn
> tax.o -ledit
> . . .
> --- all_subdir_bin ---
> histedit.o:(.toc+0x10): undefined reference to `_el_fn_sh_complete'
> collect2: error: ld returned 1 exit status
> *** [sh.full] Error code 1
>
> bmake[4]: stopped in /usr/src/bin/sh
> 1 error
>
> bmake[4]: stopped in /usr/src/bin/sh
> # find /usr/src -name .svn -prune -o -exec grep el_fn_sh_complete {} ; -print | more
> unsigned char _el_fn_sh_complete(EditLine *, int);
> /usr/src/lib/libedit/histedit.h
> _el_fn_sh_complete(EditLine *el, int ch __attribute__((__unused__)))
> /usr/src/lib/libedit/filecomplete.c
> _el_fn_sh_complete);
> /usr/src/bin/sh/histedit.c
> # find /usr/src -name .svn -prune -o -exec grep filecomplete {} \; -print | more
> Binary file /usr/src/lib/libedit matches
> /usr/src/lib/libedit
> #include "filecomplete.h"
> /usr/src/lib/libedit/readline.c
> /* $NetBSD: filecomplete.h,v 1.9 2009/12/30 22:37:40 christos Exp $ */
> * $FreeBSD: head/lib/libedit/filecomplete.h 276881 2015-01-09 07:40:56Z bapt $
> /usr/src/lib/libedit/filecomplete.h
> OSRCS= chared.c common.c el.c emacs.c fcns.c filecomplete.c help.c \
> /usr/src/lib/libedit/Makefile
> /* $NetBSD: filecomplete.c,v 1.34 2014/10/18 15:07:02 riz Exp $ */
> __RCSID("$NetBSD: filecomplete.c,v 1.34 2014/10/18 15:07:02 riz Exp $");
> __FBSDID("$FreeBSD: head/lib/libedit/filecomplete.c 296435 2016-03-06 21:32:54Z pfg $");
> #include "filecomplete.h"
> /usr/src/lib/libedit/filecomplete.c
> # find /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/ -name .svn -prune -o -name "filecomplete*" -print | more
> #
Supporting details. . .
build command (self hosted on a powerpc64 PowerMac):
> env __MAKE_CONF=/root/src.configs/make.conf SRC_ENV_CONF=/root/src.configs/src.conf.powerpc64-xtoolchain.powerpc64-host MAKEOBJDIRPREFIX=/usr/obj/xtoolchain/powerpc.powerpc64 make -j 5 buildworld buildkernel
make.conf is empty.
src.conf:
> TO_TYPE=powerpc64
> TOOLS_TO_TYPE=${TO_TYPE}
> FROM_TYPE=powerpc64
> TOOLS_FROM_TYPE=${FROM_TYPE}
> VERSION_CONTEXT=11.0
> #
> KERNCONF=GENERIC64vtsc-NODEBUG
> TARGET=powerpc
> .if ${.MAKE.LEVEL} == 0
> TARGET_ARCH=${TO_TYPE}
> .export TARGET_ARCH
> .endif
> #
> WITHOUT_CROSS_COMPILER=
> #
> WITH_FAST_DEPEND=
> WITH_LIBCPLUSPLUS=
> WITH_BOOT=
> WITH_CLANG=
> WITH_CLANG_IS_CC=
> WITH_CLANG_FULL=
> WITH_LLDB=
> #
> # LIB32 builds but does not work via gcc variants
> WITHOUT_LIB32=
> WITHOUT_GCC=
> WITHOUT_GNUCXX=
> #
> NO_WERROR=
> MALLOC_PRODUCTION=
> WITH_DEBUG_FILES=
> #
> #
> # TOOLS_TO_TYPE based on ${TO_TYPE}-xtoolchain-gcc related bintutils...
> #
> CROSS_TOOLCHAIN=${TO_TYPE}-gcc
> X_COMPILER_TYPE=gcc
> CROSS_BINUTILS_PREFIX=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/
> .if ${.MAKE.LEVEL} == 0
> XCC=/usr/local/bin/${TOOLS_TO_TYPE}-portbld-freebsd${VERSION_CONTEXT}-gcc
> XCXX=/usr/local/bin/${TOOLS_TO_TYPE}-portbld-freebsd${VERSION_CONTEXT}-g++
> XCPP=/usr/local/bin/${TOOLS_TO_TYPE}-portbld-freebsd${VERSION_CONTEXT}-cpp
> .export XCC
> .export XCXX
> .export XCPP
> XAS=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/as
> XAR=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/ar
> XLD=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/ld
> XNM=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/nm
> XOBJCOPY=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/objcopy
> XOBJDUMP=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/objdump
> XRANLIB=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/ranlib
> XSIZE=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/size
> #NO-SUCH: XSTRINGS=/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/strings
> XSTRINGS=/usr/local/bin/${TOOLS_TO_TYPE}-freebsd-strings
> .export XAS
> .export XAR
> .export XLD
> .export XNM
> .export XOBJCOPY
> .export XOBJDUMP
> .export XRANLIB
> .export XSIZE
> .export XSTRINGS
> .endif
> #
> #
> # From gcc49
> #
> .if ${.MAKE.LEVEL} == 0
> CC=/usr/local/bin/gcc49
> CXX=/usr/local/bin/g++49
> CPP=/usr/local/bin/cpp49
> .export CC
> .export CXX
> .export CPP
> .endif
> #
> #
> # TOOLS_FROM_TYPE's appropriate binutils...
> #
> .if ${.MAKE.LEVEL} == 0
> AS=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/as
> AR=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/ar
> LD=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/ld
> NM=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/nm
> OBJCOPY=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/objcopy
> OBJDUMP=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/objdump
> RANLIB=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/ranlib
> SIZE=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/size
> #NO-SUCH: STRINGS=/usr/local/${TOOLS_FROM_TYPE}-portbld-freebsd${VERSION_CONTEXT}/bin/strings
> STRINGS=/usr/local/bin/strings
> .export AS
> .export AR
> .export LD
> .export NM
> .export OBJCOPY
> .export OBJDUMP
> .export RANLIB
> .export SIZE
> .export STRINGS
> .endif
===
Mark Millard
markmi at dsl-only.net
More information about the freebsd-toolchain
mailing list