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

[pbsd-mg2] crunchgen



鈴木です。

crunchgen の cross 版の動作を確認しましたので、例によって手順書です。


環境は、src NetBSD-1.3.3 host FreeBSD-2.2.7

-----
前準備

setenv CRS /usr/local/mipsel-netbsd
setenv MACHINE hpcmips
setenv MACHINE_ARCH mips

---------
crunchgen

cd usr.bin
cp -r crunch crunch.cross
cd crunch

crunchgen 自体は、makefile を作ったりするだけなので、
ELF とかの対応は関係ない。$CRS の コマンド,lib を使うように
修正する。


crunchide は、object file を見るが、exec_elf32.c がちゃんとコンパイル
できるように設定してやるだけで良い。

1.3.3 では、

mkdir crunchide/machine crunchide/mips crunchide/sys
cp $CRS/include/machine/elf_machdep.h crunchide/machine
cp $CRS/include/mips/elf_machdep.h crunchide/mips
cp $CRS/include/sys/exec_elf.h crunchide/sys

とした上で、
crunchide/Makefile に

CFLAGS+= -D__mips__ -I.

を追加すれば OK。

以上変更点を
########## crunchgen.cross.patch

で添付 。


最後に、

mv crunchgen/crunchgen $CRS/bin
mv crunchide/crunchide $CRS/bin

として、インストール


P.S.

ちなみに
mdsetimage も crunch/crunchide とほぼ同じようにして make できました。
1.3.3 は、-D__mips__ ではなく、extern.h を直接編集するようになっていました。

current は、-D__mips__ で指定するようですが、FreeBSD だと AOUT が面倒
だし必要ないので、NLIST_ELF32 だけ 設定すると良いと思います。

---------------------------------
begin 664 crunchgen.cross.patch.gz
M'XL("(8>1#<``V-R=6YC:&=E;BYC<F]S<RYP871C:`#=5GMOHD`0_]M^BJEG
MD]:R\M#2:N,E5OOP8A^17G+)]4(0%B4BD`4N;9I^]YL%H5J17'.7YG)$P^R\
M]S?L[%B.;0-A)I@L]LR9F+ZFU'NE&IFP83(_#(M5=NKU>JF/BA9[T(NG`$V0
MU$Y3ZL@*R.WV\0XAY#<"5.YG,5P;3Z!(H"B=5JN#!-JW>>35)\GDY$AHRY`L
M`<R9P<"/H\7<,Q;T^W7OVUWO_FIT?O-#X&S3WF331[K)/LU\1701%!B9ACFC
M!>R8V8Z[(7CUY@>6P]9%NZG(=29O1-"%JAB'3$11E;MPO`C5/.K%"Y01.>--
M_8@RYC-D2IR7P)S"@A3Y;V'Q3<,5%TX04I=X-)J$UONA*OJBCE5).%;5[)MZ
MQC]_`N9/]0CJ06*XF_#L@*%;>S_!5H"J=C\>WG7#B#G!@U<].%V:OE4;#<^T
M[G8Q&>V%4!66F\_54!S$D8[>W3#*E%$G1`U>\C3O=E;T]^3=[W>W8CIQ/'%J
MFNE^BLU'@W)SURJS3D$K=;""Z)8-C+_>]*^&@_-R/VF7<2SZL=4I[%MR4SA1
M\LY524I%/F-N7B1PBA^7K4GLA0W7[\!>B`'C2<.'VC[2MV=?^#'1#G![PHI3
M[DI8(Y(P6]%\B%P+B&7B=0'$AR18:2SXHV!Y58#,04]7U-*7`=/P;Z,4X/22
M]SY916A;V4'XQZ"M/8\&+Q^(;NTY/QPO?P%@JW",0&WQVIA3WN>+KOA5^>8`
ML2HMF!Y:I=/#FO'ZZ-!LXV_[Z"`+1^GQXYYE0<T^F$^5V@V-SK1!!S+'PD^0
M&VD>HG0B2@HH\C*W`&^4)SA_#*#&\3F$_L6H=ZD=XKTST'7>@W0=R+"!PKOQ
M[647X<T31YXV[FO=2L[!$8Q?O;J!!<QH:OJVG2]<NZFL+-06CF08]Q?HI7<"
$WPD``,T3
`
end