[Quick top post I'm afraid.] I think that I figured out why there is a problem even earlier --that just did not stop the compiles. lib/libutil/kinfo_getallproc.c is built here as part of buildworld (stage 4.2 "building libraries" instead of buildkernel. It does not have the KERNCONF's AIM vs. BOOKE vs. . . . definitions vs. lack of them). So if it includes machine/pmap.h that binds to sys/powerpc/include/pmap.h which has the structure. . . . . . #if defined(AIM) . . . (definitions here) #elif defined(BOOKE) . . . (definitions here) #endif . . . it gets no definition now. With the older: . . . #if defined(AIM) . . . (definitions here) #else . . . (definitions here) #endif . . . It got a definition, just not necessarily the right one. === Mark Millard markmi at dsl-only.net On 2016-Nov-19, at 6:19 PM, Mark Millard <markmi at dsl-only.net> wrote: > Author: jhibbits > Date: Fri Nov 18 22:59:33 2016 > New Revision: 308817 > URL: https://svnweb.freebsd.org/changeset/base/308817 > > Log: > Fix buildworld > > Change the pv_tracked flag to an int, just in case userspace decides to include > this file and defines BOOKE. > > Guard this block from unintentional inclusion with ifdef BOOKE. > > Reported by: emaste . . . (Later quotes are not from the list or from E-mail but from files.) I'm not targeting BOOKE but GENERIC64 (via include, with AIM but not ps3). I'm at head -r308860 yet for TARGET_ARCH=powerpc64 I get the following that did not happen with my older -r308247 builds: > --- kinfo_getallproc.o --- . . . > In file included from /usr/src/sys/sys/user.h:53:0, > from q:34: > /usr/src/sys/vm/vm_map.h:190:2: error: unknown type name 'pmap_t' > pmap_t pmap; /* (c) Physical map */ > ^ > /usr/src/sys/vm/vm_map.h:250:14: error: field 'vm_pmap' has incomplete type > struct pmap vm_pmap; /* private physical map */ > ^ > --- kinfo_getfile.o --- > In file included from /usr/src/sys/sys/user.h:53:0, > from /usr/src/lib/libutil/kinfo_getfile.c:5: > /usr/src/sys/vm/vm_map.h:190:2: error: unknown type name 'pmap_t' > pmap_t pmap; /* (c) Physical map */ > ^ > /usr/src/sys/vm/vm_map.h:250:14: error: field 'vm_pmap' has incomplete type > struct pmap vm_pmap; /* private physical map */ It is almost like a machine/pmap.h include is missing now so that the types are not defined. But I've not yet found where the relevant difference(s) are from -r308247. Showing a compile command (with -v) with its failure. . . > --- kinfo_getallproc.o --- > Using built-in specs. > COLLECT_GCC=/usr/local/bin/powerpc64-portbld-freebsd12.0-gcc > Target: powerpc64-portbld-freebsd12.0 > Configured with: /usr/obj/portswork/usr/ports/devel/powerpc64-gcc/work/gcc-5.3.0/configure --target=powerpc64-portbld-freebsd12.0 --disable-nls --enable-languages=c,c++ --without-headers --with-gmp=/usr/local --with-pkgversion='FreeBSD Ports Collection for powerpc64' --with-system-zlib --with-as=/usr/local/bin/powerpc64-freebsd-as --with-ld=/usr/local/bin/powerpc64-freebsd-ld --prefix=/usr/local --localstatedir=/var --mandir=/usr/local/man --infodir=/usr/local/info/ --build=x86_64-portbld-freebsd12.0 > Thread model: posix > gcc version 5.3.0 (FreeBSD Ports Collection for powerpc64) > COLLECT_GCC_OPTIONS='-isystem' '/usr/obj/powerpc64vtsc_xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include' '-L/usr/obj/powerpc64vtsc_xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/lib' '-B' '/usr/obj/powerpc64vtsc_xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/lib' '-B' '/usr/local/powerpc64-freebsd/bin/' '-O2' '-pipe' '-D' 'LIBC_SCCS' '-D' 'INET6' '-I' '/usr/src/lib/libutil' '-I' '/usr/src/lib/libutil/../libc/gen/' '-std=gnu99' '-fstack-protector-strong' '-Wsystem-headers' '-Wall' '-Wno-format-y2k' '-Wextra' '-Wstrict-prototypes' '-Wmissing-prototypes' '-Wpointer-arith' '-Wreturn-type' '-Wcast-qual' '-Wwrite-strings' '-Wswitch' '-Wshadow' '-Wunused-parameter' '-Wcast-align' '-Wchar-subscripts' '-Winline' '-Wnested-externs' '-Wredundant-decls' '-Wold-style-definition' '-Wno-pointer-sign' '-Wno-error=address' '-Wno-error=array-bounds' '-Wno-error=attributes' '-Wno-error=bool-compare' '-Wno-error=cast-align' '-Wno-error=clobbered' '-Wno-error=enum-compare' '-Wno-error=extra' '-Wno-error=inline' '-Wno-error=logical-not-parentheses' '-Wno-error=strict-aliasing' '-Wno-error=uninitialized' '-Wno-error=unused-but-set-variable' '-Wno-error=unused-function' '-Wno-error=unused-value' '-Wno-error=strict-overflow' '-v' '-c' '-o' 'kinfo_getallproc.o' > /usr/local/libexec/gcc/powerpc64-portbld-freebsd12.0/5.3.0/cc1 -quiet -v -I /usr/src/lib/libutil -I /usr/src/lib/libutil/../libc/gen/ -isysroot /usr/obj/powerpc64vtsc_xtoolchain/powerpc.powerpc64/usr/src/tmp -D LIBC_SCCS -D INET6 -isystem /usr/obj/powerpc64vtsc_xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include /usr/src/lib/libutil/kinfo_getallproc.c -quiet -dumpbase kinfo_getallproc.c -auxbase-strip kinfo_getallproc.o -O2 -Wsystem-headers -Wall -Wno-format-y2k -Wextra -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wno-error=address -Wno-error=array-bounds -Wno-error=attributes -Wno-error=bool-compare -Wno-error=cast-align -Wno-error=clobbered -Wno-error=enum-compare -Wno-error=extra -Wno-error=inline -Wno-error=logical-not-parentheses -Wno-error=strict-aliasing -Wno-error=uninitialized -Wno-error=unused-but-set-variable -Wno-error=unused-function -Wno-error=unused-value -Wno-error=strict-overflow -std=gnu99 -version -fstack-protector-strong -o - | > /usr/local/bin/powerpc64-freebsd-as -v -I /usr/src/lib/libutil -I /usr/src/lib/libutil/../libc/gen/ --traditional-format -a64 -mppc64 -many -o kinfo_getallproc.o > GNU C99 (FreeBSD Ports Collection for powerpc64) version 5.3.0 (powerpc64-portbld-freebsd12.0) > compiled by GNU C version 4.2.1 Compatible FreeBSD Clang 3.8.0 (tags/RELEASE_380/final 262564), GMP version 5.1.3, MPFR version 3.1.5, MPC version 1.0.3 > GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 > ignoring nonexistent directory "/usr/local/lib/gcc/powerpc64-portbld-freebsd12.0/5.3.0/../../../../powerpc64-portbld-freebsd12.0/sys-include" > ignoring nonexistent directory "/usr/local/lib/gcc/powerpc64-portbld-freebsd12.0/5.3.0/../../../../powerpc64-portbld-freebsd12.0/include" > #include "..." search starts here: > #include <...> search starts here: > /usr/src/lib/libutil > /usr/src/lib/libutil/../libc/gen/ > /usr/obj/powerpc64vtsc_xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include > /usr/local/lib/gcc/powerpc64-portbld-freebsd12.0/5.3.0/include > /usr/local/lib/gcc/powerpc64-portbld-freebsd12.0/5.3.0/include-fixed > End of search list. > GNU C99 (FreeBSD Ports Collection for powerpc64) version 5.3.0 (powerpc64-portbld-freebsd12.0) > compiled by GNU C version 4.2.1 Compatible FreeBSD Clang 3.8.0 (tags/RELEASE_380/final 262564), GMP version 5.1.3, MPFR version 3.1.5, MPC version 1.0.3 > GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 > GNU assembler version 2.25.1 (powerpc64-freebsd) using BFD version (GNU Binutils) 2.25.1 > Compiler executable checksum: f075193fe6b42ec6fb8ba336147ebe8e > In file included from /usr/src/sys/sys/user.h:53:0, > from /usr/src/lib/libutil/kinfo_getallproc.c:34: > /usr/src/sys/vm/vm_map.h:190:2: error: unknown type name 'pmap_t' > pmap_t pmap; /* (c) Physical map */ > ^ > /usr/src/sys/vm/vm_map.h:250:14: error: field 'vm_pmap' has incomplete type > struct pmap vm_pmap; /* private physical map */ > ^ This is a powerpc64-xtoolchain-gcc based cross build: (I build with libc++ capable materials, not with gcc 4.2.1 .) > # uname -apKU > FreeBSD FreeBSDx64 12.0-CURRENT FreeBSD 12.0-CURRENT #0 r308860M: Sat Nov 19 14:00:24 PST 2016 markmi_at_FreeBSDx64:/usr/obj/amd64_clang/amd64_amd64/usr/src/sys/GENERIC-NODBG amd64 amd64 1200014 1200014 > # svnlite info /usr/src/ | grep "Re[lpv]" > Relative URL: ^/head > Repository Root: svn://svn.freebsd.org/base > Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f > Revision: 308860 > Last Changed Rev: 308860 > # more /usr/src/sys/powerpc/conf/GENERIC64vtsc-NODBG > # > # GENERIC -- Custom configuration for the powerpc/powerpc64 > # > > include "GENERIC64" > > ident GENERIC64vtsc-NODGB > > makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols > > nooptions PS3 # Sony Playstation 3 HACK!!! to allow sc > > options KDB # Enable kernel debugger support > > # For minimum debugger support (stable branch) use: > options KDB_TRACE # Print a stack trace for a panic > options DDB # Enable the kernel debugger > options GDB # HACK!!! ... > > # Extra stuff: > #options VERBOSE_SYSINIT # Enable verbose sysinit messages > #options BOOTVERBOSE=1 > #options BOOTHOWTO=RB_VERBOSE > #options KTR > #options KTR_MASK=KTR_TRAP > ##options KTR_CPUMASK=0xF > #options KTR_VERBOSE > > # HACK!!! to allow sc for 2560x1440 display on Radeon X1950 that vt historically mishandled during booting > device sc > #device kbdmux # HACK: already listed by vt > options SC_OFWFB # OFW frame buffer > options SC_DFLT_FONT # compile font in > makeoptions SC_DFLT_FONT=cp437 > > > # Disable any extra checking for. . . > nooptions DEADLKRES # Enable the deadlock resolver > nooptions INVARIANTS # Enable calls of extra sanity checking > nooptions INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS > nooptions WITNESS # Enable checks to detect deadlocks and cycles > nooptions WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed > nooptions DIAGNOSTIC > nooptions MALLOC_DEBUG_MAXZONES # Separate malloc(9) zones Its SRC_ENV_CONF binding is to. . . > # more ~/src.configs/src.conf.powerpc64-xtoolchain.amd64-host > TO_TYPE=powerpc64 > TOOLS_TO_TYPE=${TO_TYPE} > VERSION_CONTEXT=12.0 > # > KERNCONF=GENERIC64vtsc-NODBG > TARGET=powerpc > .if ${.MAKE.LEVEL} == 0 > TARGET_ARCH=${TO_TYPE} > .export TARGET_ARCH > .endif > # > WITHOUT_CROSS_COMPILER= > WITHOUT_SYSTEM_COMPILER= > # > WITH_LIBCPLUSPLUS= > WITHOUT_BINUTILS_BOOTSTRAP= > WITHOUT_CLANG_BOOTSTRAP= > WITH_CLANG= > WITH_CLANG_IS_CC= > WITH_CLANG_FULL= > WITH_CLANG_EXTRAS= > WITH_LLDB= > # > WITH_BOOT= > # powerpc64 LIB32 builds via gcc 4.9 or later variants that I've tried > # but the LIB32 does not work [crtbeginS code problem(s)] > WITHOUT_LIB32= > # > WITHOUT_ELFTOOLCHAIN_BOOTSTRAP= > WITHOUT_GCC_BOOTSTRAP= > WITHOUT_GCC= > WITHOUT_GCC_IS_CC= > WITHOUT_GNUCXX= > # > NO_WERROR= > #WERROR= > MALLOC_PRODUCTION= > # > WITH_DEBUG_FILES= > # > # > # For TO (so-called "cross") stages . . . > # So-called-cross via ${TO_TYPE}-xtoolchain-gcc/${TO_TYPE}-gcc. . . > # TOOLS_TO_TYPE based on ${TO_TYPE}-xtoolchain-gcc related binutils. . . > # > 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 based on clang (via system). . . > # > .if ${.MAKE.LEVEL} == 0 > CC=/usr/bin/clang > CXX=/usr/bin/clang++ > CPP=/usr/bin/clang-cpp > .export CC > .export CXX > .export CPP > .endif > # svnlite status /usr/src/ > M /usr/src/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp > M /usr/src/lib/csu/powerpc64/Makefile > ? /usr/src/sys/amd64/conf/GENERIC-DBG > ? /usr/src/sys/amd64/conf/GENERIC-NODBG > ? /usr/src/sys/arm/conf/BPIM3-DBG > ? /usr/src/sys/arm/conf/BPIM3-NODBG > ? /usr/src/sys/arm/conf/RPI2-DBG > ? /usr/src/sys/arm/conf/RPI2-NODBG > ? /usr/src/sys/arm64/conf/GENERIC-DBG > ? /usr/src/sys/arm64/conf/GENERIC-NODBG > M /usr/src/sys/boot/ofw/Makefile.inc > M /usr/src/sys/boot/powerpc/Makefile.inc > M /usr/src/sys/boot/powerpc/kboot/Makefile > M /usr/src/sys/boot/uboot/Makefile.inc > M /usr/src/sys/conf/Makefile.powerpc > M /usr/src/sys/conf/kern.mk > M /usr/src/sys/conf/kmod.mk > M /usr/src/sys/ddb/db_main.c > M /usr/src/sys/ddb/db_script.c > ? /usr/src/sys/powerpc/conf/GENERIC64vtsc-DBG > ? /usr/src/sys/powerpc/conf/GENERIC64vtsc-NODBG > ? /usr/src/sys/powerpc/conf/GENERICvtsc-DBG > ? /usr/src/sys/powerpc/conf/GENERICvtsc-NODBG > M /usr/src/sys/powerpc/ofw/ofw_machdep.c > M /usr/src/sys/powerpc/powerpc/exec_machdep.c === Mark Millard markmi at dsl-only.netReceived on Sun Nov 20 2016 - 01:36:43 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:08 UTC