Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 3 Feb 2020 06:41:25 +0100
From:      Warner Losh <imp@bsdimp.com>
To:        Mark Millard <marklmi@yahoo.com>
Cc:        FreeBSD Toolchain <freebsd-toolchain@freebsd.org>,  FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Subject:   Re: head -r357401 broke my powerpc/powerpc64 builds: I build with sc present [the added "static" caused the failures]
Message-ID:  <CANCZdfq4WHMin-4zLyioMd8iAm9HN4TKUuHQz_B46UU_6mzXAQ@mail.gmail.com>
In-Reply-To: <F25C3F9C-C6D3-4628-9163-B53FB28208FA@yahoo.com>
References:  <1EDB31B4-7372-4D8C-AF81-685E53BE4810@yahoo.com> <13FEBAFC-8D69-4BE4-9558-97617639A0B4@yahoo.com> <F25C3F9C-C6D3-4628-9163-B53FB28208FA@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Feb 3, 2020 at 3:33 AM Mark Millard <marklmi@yahoo.com> wrote:

> [Turns out to be the added "static".]
>
> On 2020-Feb-2, at 15:10, Mark Millard <marklmi at yahoo.com> wrote:
>
> > [I forgot to send some context.]
> >
> > On 2020-Feb-2, at 14:51, Mark Millard <marklmi at yahoo.com> wrote:
> >
> >> --- kernel.full ---
> >> ld: error: undefined symbol: dflt_font_8
> >>>>> referenced by ofw_syscons.c
> >>>>>             ofw_syscons.o:(.toc+0x10)
> >> ld: error: undefined symbol: dflt_font_14
> >>>>> referenced by ofw_syscons.c
> >>>>>             ofw_syscons.o:(.toc+0x18)
> >> ld: error: undefined symbol: dflt_font_16
> >>>>> referenced by ofw_syscons.c
> >>>>>             ofw_syscons.o:(.toc+0x20)
> >>
> >> This is from loss of:
> >>
> >>
> >>
> >> font.h                          optional        sc
> \
> >>        compile-with    "uudecode <
> /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'u_char
> dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode
> < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'u_char
> dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode
> < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'u_char
> dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h" \
> >>        no-obj no-implicit-rule before-depend
>  \
> >>        clean   "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16
> ${SC_DFLT_FONT}-8x8"
> >>
> >>
> >> in /head/sys/conf/files.powerpc .
> >>
> >>
> >> FYI for why I have sc present:
> >>
> >> Historically, I've had two PowerMac contexts, one of which
> >> worked with sc but not vt and another of which worked with
> >> vt but not sc.
> >>
> >> I build with both sc and vt present and change which is
> >> used as I move the media between machines.
> >
> > FYI: my powerpc* kernel config files have (using a powerpc64
> > example):
> >
> > include "GENERIC64"
> >
> > . . .
> >
> > nooptions       PS3                     # Sony Playstation 3
>    HACK!!! to allow sc
> >
> > . . .
> >
> > # 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
> >
> >
> > I'm exploring rebuilding from scratch, but it
> > may be that this change could use some form
> > of UPDATING note about how to deal with the
> > changes.
>
> The following enabled my powerpc* builds: I dropped
> "static " from each declaration that is generated.
>
> (In this form some whitespace might not be
> preserved below.)
>
> # svnlite diff /usr/src/sys/conf/files
> Index: /usr/src/sys/conf/files
> ===================================================================
> --- /usr/src/sys/conf/files     (revision 357419)
> +++ /usr/src/sys/conf/files     (working copy)
> @@ -35,7 +35,7 @@
>         no-obj no-implicit-rule before-depend
> \
>         clean           "feeder_rate_gen.h"
>  font.h                         optional        sc_dflt_font            \
> -       compile-with    "uudecode <
> ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'static
> u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h &&
> uudecode < ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c
> 'static u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >>
> font.h && uudecode < ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt
> && file2c 'static u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8
> >> font.h"
>    \
> +       compile-with    "uudecode <
> ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'u_char
> dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode
> < ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'u_char
> dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode
> < ${SRCTOP}/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'u_char
> dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h"
>                                                     \
>         no-obj no-implicit-rule before-depend                           \
>         clean           "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16
> ${SC_DFLT_FONT}-8x8"
>  snd_fxdiv_gen.h                        optional sound
>          \
>
>
> If the "static"s are strongly wanted, then the powerpc*
> families need to be reworked to allow for such.
>

Yea, ofw_syscons.c reaches over into these arrays. I've removed the static
for now. syscons is on the way out, so I don't want to waste too much time
on it.

warner


>
> ===
> Mark Millard
> marklmi at yahoo.com
> ( dsl-only.net went
> away in early 2018-Mar)
>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfq4WHMin-4zLyioMd8iAm9HN4TKUuHQz_B46UU_6mzXAQ>