Port-playstation2 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Building progress.



Hi all,

NetBSD newbie here, I'm trying to resurrect the Playstation 2 port on my
side (How hard can resurrecting NetBSD ports be, anyway? :-) ).

So far, after coercing GCC and the build system into cooperation (gory
details omitted), I've managed to reliably build a 4.9.0 crosscompiler and
tools (by importing GCC 4.9.0 + binutils 2.24 into the NetBSD source tree),
and enough bits from the distribution target to have a stab at the kernel.

I managed to get far enough to hit bitrotted PlayStation 2-specific code (or
at least further than previous attempts on the mailing list). However, I
won't be able to pass this without getting some experience on NetBSD kernel
programming first.

Anyone interested in helping me out, or in the procedure that I followed to
get to that point? (Warning : latter part not for the faint of heart. Really.)

./build.sh tools output :

===> Tools built to /usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64
===> build.sh ended:      Wed Dec  3 08:19:40 UTC 2014
===> Summary of results:
         build.sh command:    ./build.sh -m playstation2 -u -U -O
../obj.playstation2 tools
         build.sh started:    Wed Dec  3 08:03:19 UTC 2014
         NetBSD version:      7.99.2
         MACHINE:             playstation2
         MACHINE_ARCH:        mipsel
         Build platform:      NetBSD 6.1.5 amd64
         HOST_SH:             /bin/sh
         No $TOOLDIR/bin/nbmake, needs building.
         Bootstrapping nbmake
         MAKECONF file:       /etc/mk.conf (File not found)
         TOOLDIR path:       
/usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64
         DESTDIR path:        /usr/src/../obj.playstation2/destdir.playstation2
         RELEASEDIR path:     /usr/src/../obj.playstation2/releasedir
         Created
/usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64/bin/nbmake
         Updated makewrapper:
/usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64/bin/nbmake-playstation2
         Tools built to /usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64
         build.sh ended:      Wed Dec  3 08:19:40 UTC 2014
===> .

./build.sh kernel=GENERIC output :

[...]
#   compile  GENERIC/if_smap.o
/usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64/bin/mipsel--netbsd-gcc
-mabi=n32 -march=r5900 -fno-pic -msoft-float -G 0 -mno-abicalls -msoft-float
-ffixed-24 -ffreestanding -fno-zero-initialized-in-bss -Os -mmemcpy
-fno-strict-aliasing -fno-common -std=gnu99 -Wall -Wno-main
-Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes
-Wstrict-prototypes -Wold-style-definition -Wswitch -Wshadow -Wcast-qual
-Wwrite-strings -Wno-unreachable-code -Wno-pointer-sign -Wno-attributes
-Wno-sign-compare
--sysroot=/usr/src/../obj.playstation2/destdir.playstation2 -Dplaystation2
-I. -I/usr/src/sys/../common/include -I/usr/src/sys/arch -I/usr/src/sys
-nostdinc -DMIPS3 -DMIPS3_5900 -DIPL_ICU_MASK -DSOFTFLOAT
-D__NO_LEADING_UNDERSCORES__ -D__GP_SUPPORT__ -DMAXUSERS=16 -D_KERNEL
-D_KERNEL_OPT -std=gnu99
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/quad
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/string
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/arch/mips/string
-I/usr/src/sys/external/bsd/ipf -c /usr/src/sys/arch/playstation2/dev/if_smap.c
In file included from /usr/src/sys/arch/playstation2/dev/if_smap.c:63:0:
/usr/src/sys/dev/mii/miivar.h:242:37: warning: 'enum devact' declared inside
parameter list
 int mii_phy_activate(device_t, enum devact);
                                     ^
/usr/src/sys/dev/mii/miivar.h:242:37: warning: its scope is only this
definition or declaration, which is probably not what you want
In file included from /usr/src/sys/arch/playstation2/dev/if_smap.c:76:0:
/usr/src/sys/arch/playstation2/dev/emac3var.h:33:16: error: field 'dev' has
incomplete type
  struct device dev;
                ^
/usr/src/sys/arch/playstation2/dev/if_smap.c:119:2: error: unknown type name
'rndsource_element_t'
  rndsource_element_t rnd_source;
  ^
/usr/src/sys/arch/playstation2/dev/if_smap.c:127:47: warning: 'struct
cfdata' declared inside parameter list
 STATIC int smap_match(struct device *, struct cfdata *, void *);
                                               ^
/usr/src/sys/arch/playstation2/dev/if_smap.c:130:21: error: expected ')'
before 'sizeof'
 CFATTACH_DECL(smap, sizeof (struct smap_softc),
                     ^
/usr/src/sys/arch/playstation2/dev/if_smap.c:148:42: warning: 'struct
cfdata' declared inside parameter list
 smap_match(struct device *parent, struct cfdata *cf, void *aux)
                                          ^
/usr/src/sys/arch/playstation2/dev/if_smap.c:148:1: error: conflicting types
for 'smap_match'
 smap_match(struct device *parent, struct cfdata *cf, void *aux)
 ^
/usr/src/sys/arch/playstation2/dev/if_smap.c:127:12: note: previous
declaration of 'smap_match' was here
 STATIC int smap_match(struct device *, struct cfdata *, void *);
            ^
/usr/src/sys/arch/playstation2/dev/if_smap.c: In function 'smap_attach':
/usr/src/sys/arch/playstation2/dev/if_smap.c:244:19: warning: assignment
from incompatible pointer type
  mii->mii_statchg = emac3_phy_statchg;
                   ^
/usr/src/sys/arch/playstation2/dev/if_smap.c:264:2: warning: passing
argument 1 of 'rnd_attach_source' from incompatible pointer type
  rnd_attach_source(&sc->rnd_source, DEVNAME,
  ^
In file included from /usr/src/sys/arch/playstation2/dev/if_smap.c:50:0:
/usr/src/sys/sys/rnd.h:199:7: note: expected 'struct krndsource_t *' but
argument is of type 'int *'
 void  rnd_attach_source(krndsource_t *, const char *,
       ^
/usr/src/sys/arch/playstation2/dev/if_smap.c: In function 'smap_ioctl':
/usr/src/sys/arch/playstation2/dev/if_smap.c:273:16: warning: unused
variable 'ifr' [-Wunused-variable]
  struct ifreq *ifr = (struct ifreq *) data;
                ^
/usr/src/sys/arch/playstation2/dev/if_smap.c: In function 'smap_intr':
/usr/src/sys/arch/playstation2/dev/if_smap.c:340:2: warning: passing
argument 1 of 'rnd_add_uint32' from incompatible pointer type
  rnd_add_uint32(&sc->rnd_source, cause | sc->tx_fifo_ptr << 16);
  ^
In file included from /usr/src/sys/arch/playstation2/dev/if_smap.c:50:0:
/usr/src/sys/sys/rnd.h:208:1: note: expected 'struct krndsource_t *' but
argument is of type 'int *'
 rnd_add_uint32(krndsource_t *kr, uint32_t val)
 ^
/usr/src/sys/arch/playstation2/dev/if_smap.c: In function 'smap_rxeof':
/usr/src/sys/arch/playstation2/dev/if_smap.c:424:5: warning: passing
argument 1 of 'bpf_mtap' from incompatible pointer type
     bpf_mtap(ifp->if_bpf, m);
     ^
In file included from /usr/src/sys/arch/playstation2/dev/if_smap.c:71:0:
/usr/src/sys/net/bpf.h:449:1: note: expected 'struct ifnet *' but argument
is of type 'struct bpf_if *'
 bpf_mtap(struct ifnet *_ifp, struct mbuf *_m)
 ^
/usr/src/sys/arch/playstation2/dev/if_smap.c: In function 'smap_start':
/usr/src/sys/arch/playstation2/dev/if_smap.c:524:4: warning: passing
argument 1 of 'bpf_mtap' from incompatible pointer type
    bpf_mtap(ifp->if_bpf, m0);
    ^
In file included from /usr/src/sys/arch/playstation2/dev/if_smap.c:71:0:
/usr/src/sys/net/bpf.h:449:1: note: expected 'struct ifnet *' but argument
is of type 'struct bpf_if *'
 bpf_mtap(struct ifnet *_ifp, struct mbuf *_m)
 ^
/usr/src/sys/arch/playstation2/dev/if_smap.c: At top level:
/usr/src/sys/arch/playstation2/dev/if_smap.c:159:1: warning: 'smap_attach'
defined but not used [-Wunused-function]
 smap_attach(struct device *parent, struct device *self, void *aux)
 ^

*** Failed target:  if_smap.o
*** Failed command: echo '# ' "compile GENERIC/if_smap.o" && echo
/usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64/bin/mipsel--netbsd-gcc
-mabi=n32 -march=r5900 -fno-pic -msoft-float -G 0 -mno-abicalls -msoft-float
-ffixed-24 -ffreestanding -fno-zero-initialized-in-bss -Os -mmemcpy
-fno-strict-aliasing -fno-common -std=gnu99 -Wall -Wno-main
-Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes
-Wstrict-prototypes -Wold-style-definition -Wswitch -Wshadow -Wcast-qual
-Wwrite-strings -Wno-unreachable-code -Wno-pointer-sign -Wno-attributes
-Wno-sign-compare
--sysroot=/usr/src/../obj.playstation2/destdir.playstation2 -Dplaystation2
-I. -I/usr/src/sys/../common/include -I/usr/src/sys/arch -I/usr/src/sys
-nostdinc -DMIPS3 -DMIPS3_5900 -DIPL_ICU_MASK -DSOFTFLOAT
-D__NO_LEADING_UNDERSCORES__ -D__GP_SUPPORT__ -DMAXUSERS=16 -D_KERNEL
-D_KERNEL_OPT -std=gnu99
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/quad
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/string
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/arch/mips/string
-I/usr/src/sys/external/bsd/ipf -c
/usr/src/sys/arch/playstation2/dev/if_smap.c &&
/usr/src/../obj.playstation2/tooldir.NetBSD-6.1.5-amd64/bin/mipsel--netbsd-gcc
-mabi=n32 -march=r5900 -fno-pic -msoft-float -G 0 -mno-abicalls -msoft-float
-ffixed-24 -ffreestanding -fno-zero-initialized-in-bss -Os -mmemcpy
-fno-strict-aliasing -fno-common -std=gnu99 -Wall -Wno-main
-Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes
-Wstrict-prototypes -Wold-style-definition -Wswitch -Wshadow -Wcast-qual
-Wwrite-strings -Wno-unreachable-code -Wno-pointer-sign -Wno-attributes
-Wno-sign-compare
--sysroot=/usr/src/../obj.playstation2/destdir.playstation2 -Dplaystation2
-I. -I/usr/src/sys/../common/include -I/usr/src/sys/arch -I/usr/src/sys
-nostdinc -DMIPS3 -DMIPS3_5900 -DIPL_ICU_MASK -DSOFTFLOAT
-D__NO_LEADING_UNDERSCORES__ -D__GP_SUPPORT__ -DMAXUSERS=16 -D_KERNEL
-D_KERNEL_OPT -std=gnu99
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/quad
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/string
-I/usr/src/sys/lib/libkern/../../../common/lib/libc/arch/mips/string
-I/usr/src/sys/external/bsd/ipf -c
/usr/src/sys/arch/playstation2/dev/if_smap.c && :
*** Error code 1

Stop.
nbmake: stopped in /usr/obj.playstation2/sys/arch/playstation2/compile/GENERIC

ERROR: Failed to make all in
"/usr/src/../obj.playstation2/sys/arch/playstation2/compile/GENERIC"
*** BUILD ABORTED ***



Home | Main Index | Thread Index | Old Index