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

Re: shared libraries for NetBSD/powerpc



> というわけでいつものところにパッチを置きました。

ということですので早速テストしてみました。
じっくり眺めてる時間がなかったので
勘だけに頼って次のようにしました。

0. cd /usr/src して patch -p < shlib.diff
   こちらのは 10/17 あたりに sup したソースでしたが
   パッチは問題なくあたりました。

1. (いきなり) /usr/share/mk/bsd.own.mk を修正

--- bsd.own.mk.orig     Mon Oct  5 20:10:11 1998
+++ bsd.own.mk  Mon Nov 16 22:35:23 1998
@@ -102,7 +102,7 @@
 # which don't support PIC.
 .if  (${MACHINE_ARCH} == "vax") || \
     ((${MACHINE_ARCH} == "mips") && defined(STATIC_TOOLCHAIN)) || \
-    (${MACHINE_ARCH} == "powerpc")
+    ((${MACHINE_ARCH} == "powerpc") && defined(STATIC_TOOLCHAIN))
 NOPIC=
 .endif

2. cd /usr/src/lib/csu して make && make install

3. cd /usr/src/lib/libc して make && make install

4. cd /usr/src/libexec/ld.elf_so して Makefile を修正して make

--- libexec/ld.elf_so/Makefile.orig	Sun Sep 13 20:08:47 1998
+++ libexec/ld.elf_so/Makefile	Mon Nov 16 22:57:14 1998
@@ -7,7 +7,7 @@
 .endif
 
 .if (${MACHINE} == "alpha") || (${MACHINE_ARCH} == "mips") || \
-    (${MACHINE} == "sparc64")
+    (${MACHINE} == "sparc64") || (${MACHINE_ARCH} == "powerpc")
 # Adds SRCS, CPPFLAGS, LDFLAGS, etc.  Must go first so MD startup source
 # is first.
 .if exists(${.CURDIR}/${MACHINE_ARCH}/Makefile.inc)

   make obj してるせいで link 時に Error に
   なったので修正して再度 make && make install

--- libexec/ld.elf_so/powerpc/Makefile.inc.orig	Mon Nov 16 23:28:40 1998
+++ libexec/ld.elf_so/powerpc/Makefile.inc	Mon Nov 16 23:28:44 1998
@@ -4,4 +4,4 @@
 
 CPPFLAGS+= -fpic -msoft-float -DELFSIZE=32 -I${.CURDIR}
 LDFLAGS+= -Bshareable -Bsymbolic -e .rtld_start
-LDFLAGS+= --script powerpc/ld.so.script
+LDFLAGS+= --script ${.CURDIR}/powerpc/ld.so.script

5. cd /usr/src/lib して改めて make && make install

ここまでやって make や tcsh や perl 等を作ってみましたが
ちゃんと dynamic link でそれなりに動いてるようです。

いきなり make build とかする勇気はちょっと出なかった ;-) ので
バックアップとってからまた挑戦してみます。
---
tsutsui@ceres.dti.ne.jp