Re: head -r357401 broke my powerpc/powerpc64 builds: I build with sc present [the added "static" caused the failures]

Warner Losh <[email protected]>
Newsgroups gmane.os.freebsd.devel.ppc,gmane.os.freebsd.devel.toolchain
Message-ID <CANCZdfq4WHMin-4zLyioMd8iAm9HN4TKUuHQz_B46UU_6mzXAQ@mail.gmail.com>
On Mon, Feb 3, 2020 at 3:33 AM Mark Millard <[email protected]> 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)
>
>
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ppc
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.