From owner-ports-jp@jp.freebsd.org  Thu Sep 17 15:41:26 1998
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.1+3.0W/8.7.3) id PAA26304;
	Thu, 17 Sep 1998 15:41:26 +0900 (JST)
	(envelope-from owner-ports-jp@jp.FreeBSD.org)
Received: from tohokugw.tohoku.iij.ad.jp (firewall-user@[202.232.14.98])
	by jaz.jp.freebsd.org (8.9.1+3.0W/8.7.3) with ESMTP id PAA26299
	for <ports-jp@jp.freebsd.org>; Thu, 17 Sep 1998 15:41:24 +0900 (JST)
	(envelope-from taguchi@tohoku.iij.ad.jp)
Received: by tohokugw.tohoku.iij.ad.jp; id PAA01506; Thu, 17 Sep 1998 15:41:22 +0900 (JST)
Received: from unknown(192.168.144.10) by tohokugw.tohoku.iij.ad.jp via smap (4.1)
	id xma001499; Thu, 17 Sep 98 15:41:15 +0900
Received: from localhost (hirose.tohoku.iij.ad.jp [192.168.144.2])
	by ayashi.tohoku.iij.ad.jp (8.8.8/3.6W98060211) with ESMTP id PAA06128
	for <ports-jp@jp.freebsd.org>; Thu, 17 Sep 1998 15:40:23 +0900 (JST)
To: ports-jp@jp.freebsd.org
From: Taguchi Takeshi <taguchi@tohoku.iij.ad.jp>
In-Reply-To: Your message of "Tue, 15 Sep 1998 21:55:32 +0900"
	<19980915215532W.taguchi@tohoku.iij.ad.jp>
References: <19980915215532W.taguchi@tohoku.iij.ad.jp>
X-Mailer: Mew version 1.93b38 on XEmacs 20.4 (Emerald)
X-Prom-Mew: Prom-Mew 1.92.9 (procmail reader for Mew)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <19980917153911P.taguchi@tohoku.iij.ad.jp>
Date: Thu, 17 Sep 1998 15:39:11 +0900
X-Dispatcher: imput version 980522
Lines: 116
Reply-To: ports-jp@jp.freebsd.org
Precedence: bulk
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+980914
X-Sequence: ports-jp 4373
Subject: [ports-jp 4373] ELF transition for ports (revised) (in Japanese)
Errors-To: owner-ports-jp@jp.freebsd.org
Sender: owner-ports-jp@jp.freebsd.org

$BED8}$G$9!%(B

$B$"$5$_$5$s%,%$%I%i%$%s$,99?7$5$l$F$^$7$?$N$G!$DI=>$7$^$9!%(B
$BJQ99E@$O!$$4$C$D$$$G$9!%(B

$B!t(B $B$3$l!$(Bwww.jp.freebsd.org $B$N2?=h$+$KCV$$$F$/$@$5$k$H4r$7$$$+$b!%(B

$B!t!t(B $B<+J,$N(B ports $B$N(B ELFization (E8n ^^;) $B$O!$$A$^$A$^$d$C$F$^$9!%(B
$B!t!t(B $BM>M5$,$"$l$P!$(Blang/ $B2<$N4XO"(Bports$B$^$GJRIU$1$A$c$&$+$b$7$l$^(B
$B!t!t(B $B$;$s(B(patch$B$NK\<AItJ,$OF1$8$J$N$G(B)$B!%(B2$BBf$"$k(B -current $B%^%7%s$N(B
$B!t!t(B 1$BBf$,:#D+$*K4$/$J$j$K$J$C$F$7$^$C$?$N$G!$(Bmonster $B;H$o$;$FD:(B
$B!t!t(B $B$/$+$b!%(B

---
Subject: ELF transition for ports (revised)
From: asami@cs.berkeley.edu (Satoshi Asami)
To: current@FreeBSD.ORG, ports@FreeBSD.ORG
Date: Wed, 16 Sep 1998 18:14:55 -0700 (PDT)
Reply-to: ports@FreeBSD.ORG

($BK\%U%!%$%k$O0J2<$+$i$b;2>H$G$-$^$9(B:
 http://www.freebsd.org/~asami/elf-guidelines.txt
)

$B$3$l$O!$(Bports $B$r(B ELF $B$K$9$k$?$a$N!$$=$7$FMh$k$Y$-(BELF$B3&$G(B ports$B$rMQ$$$k(B
$B$?$a$N%,%$%I%i%$%s$G$9!%(BELF$B2=$5$l$?(B ports $B$rMQ$$$k$K$O!$:G?7$N(B 
bsd.ports.mk(1.289 $B$d(B 1.227.2.53) $B$,I,MW$K$J$j$^$9!%(B($B:G?7$N(B ports $B$r;H(B
$B$$$?$$$N$G$"$k$J$i$P!$(B-stable $B%f!<%6$G$"$C$F$b:G?7$N(B bsd.ports.mk $B$,I,(B
$BMW$G$"$k$3$H$KCm0U$7$F$/$@$5$$!%(B)

aout$B6&M-%i%$%V%i%j$N%P!<%8%g%sHV9f$K4X$9$k%]%j%7!<$,!$$$$/$V$sJQ99$5$l(B
$B$F$$$k$3$H$KCm0U$7$F$/$@$5$$!%(BELF$BJQ49$N$?$a$K%P!<%8%g%sHV9f$rA}2C$5$;(B
$B$k$3$H$OI,?\$G$O$J$/$J$j$^$7$?!%(B

aout $B$H(B ELF $BAPJ}$G(B ports $BLZ$,F0$/$h$&2f!9$,=$@5$r40N;$9$k$^$G$O!$?IJz(B
$B$7$F$/$@$5$$!%(Bports $B$N$$$+$J$kGKB;$bJs9p4j$$$^$9!%(B

$B0J>e!%(B

$B$"$5$_(B ($B$H!$0NBg$J$k(BELF$B%A!<%`(B)
-------
(1) aout $B$J%i%$%V%i%j$O(B /usr/local/lib $BD>2<$K$OCV$+$J$$$h$&$K$7!$(B
    "aout"$B%5%V%G%#%l%/%H%j$KBTHr$5$;$F$*$-$^$9!%BTHr$5$;$F$*$+$J$$$H!$(B
    elf $B$J(B ports $B$O2?$b9M$($:$K(B aout $B%i%$%V%i%j$r>e=q$-$7$F$7$^$&$G$7$g(B
    $B$&!%(B-current $B$N(B src/Makefile $BCf$N%?!<%2%C%H(B "move-aout-libs"
    ("aout-toelf" $B$+$i8F$S=P$5$l$k(B) $B$O!$$3$N:n6H$r9T$C$F$/$l$^$9!%(B
    aout $B$J%i%$%V%i%j$r0\F0$9$k$@$1$J$N$G!$(B1$B$D$N%7%9%F%`$GI8=`%G%#%l%/(B
    $B%H%j$N(B elf $B$H(B aout 2 $B$D$N%i%$%V%i%j$NAPJ}$H$b0BA4$K8F$S=P$;$^$9!%(B

(2) ports$BLZ$O!$$=$N%^%7%s$N7A<0$G(Bpackage$B$r@8@.$7$^$9!%$3$l$O!$(B
    2.2-stable $B$J$i$P(B aout $B7A<0$G!$(B3.0-current $B$G$"$k$J$i$P(B
    `objformat` $B$,2?$rJV$9$+$K$h$C$F(B elf $B$+(B aout $B$+$,7hDj$5$l$k$3$H$r(B
    $B0UL#$7$^$9!%$^$?!$0lEY(B (1) $B$N<j=g$G(B elf $B2=$7$F$7$^$&(B($B$9$J$o$A!$(B
    aout $B%i%$%V%i%j$r%5%V%G%#%l%/%H%j$K0\F0$7$F$7$^$&(B)$B$H!$(Baout $B%i%$%V(B
    $B%i%j$N@8@.$O%5%]!<%H$5$l$^$;$s(B($B$I$&$9$k$Y$-$+CN$C$F$k$J$i$P!$F0$-(B
    $B$O$9$k$G$7$g$&!%$?$@$7!"$"$/$^$G<+8J@UG$$G9T$&$3$H(B)$B!%(B

(3) bsd.port.mk $B$OJQ?t(B PORTOBJFORMAT $B$r(B "aout" $B$d(B "elf" $B$K@_Dj$7!$$=$l(B
    $B$r4D6-JQ?t(B CONFIGURE_ENV $B$H(B MAKE_ENV $B$K(Bexport$B$7$^$9(B(-stable $B$G$O$3(B
    $B$l$O>o$K(B "aout" $B$@(B)$B!%$^$?!$(BPLIST_SUB $B$K$b(B
    "PORTOBJFORMAT=${PORTOBJFORMAT}" $B$H$7$FEO$5$l$^$9(B($B>\:Y$O(B(7)$B;2>H(B)$B!%(B

    $BK\JQ?t$O0J2<$N9T$r;H$C$F@_Dj$5$l$^$9(B:

PORTOBJFORMAT!= test -x /usr/bin/objformat && /usr/bin/objformat || echo aout

    ports $B$N(Bmake $B=hM}$O2?$r9T$&$+$3$NJQ?t$r;H$C$F7hDj$G$-$^$9!%$?$@$7!$(B
    ports $B<+?H$N(B configure $B%9%/%j%W%H(B($B$d!$$=$l$KN`$9$k$b$N(B)$B$,(B ELF $B$G$"(B
    $B$k$+H]$+$r@5$7$/H=JL$G$-$k$J$i$P!$(BPORTOBJFORMAT $B$rD4$Y$kI,MW$O$"$j(B
    $B$^$;$s!%(B

 (3a) ELF $B%i%$%V%i%j$O(B "libfoo.so.M" $B$H8@$&7A<0$G8F$P$l$M$P$J$j$^$;$s!%(B
     ("libfoo.so.M.N" $B$H$$$&7A<0$G@8@.$9$k$3$H$O5v$5$l$^$;$s!%$,!$%7%s(B
     $B%\%j%C%/%j%s%/$G(B "libfoo.so.M" $B$+$i$N%j%s%/$rD%$l$PJL$G$9(B)
     $B$^$?!$(B"ld" $B$rD>@\;H$&Be$o$j$K(B "cc -shared" $B$r;H$&$h$&$K$7$^$9!%(B
     ("ld"$B$rD>@\;H$&>l9g$H$N(B)$BAj0cE@$O!$(B"-Wl,-soname,libfoo.so.M" $B$H$$(B
     $B$&0z?t$rDI2C$9$k$@$1$G$9!%(B

 (3b) aout $B%i%$%V%i%j$O(B "libfoo.so.M.N" $B$H8@$&7A<0$G8F$P$l$M$P$J$j$^$;(B
     $B$s!%$3$N>l9g!$(B"libfoo.so.M" $B$+$i$N%j%s%/$OD%$i$l$k$Y$-$G$O$"$j$^(B
     $B$;$s!%(B

    elf $B6&M-%i%$%V%i%j$N%P!<%8%g%sHV9f$O!$(Bports $B$,Hs8_49@-$N$"$kJQ99$r(B
    $B2C$($i$l$?;~$K!$A}2C$5$l$k$Y$-$G$9!%$=$N;~E@$G!$(Baout $B$N%^%$%J!<%P!<(B
    $B%8%g%s$O(B 0 $B$K$5$l!$$=$N$^$^$KCV$+$l$k$h$&$K$7$^$9(B($B$3$l$O!$(B
    pkg/PLIST $BCf$K$O(B elf $B6&M-%i%$%V%i%jL>$N$_$,=q$-9~$^$l$k$3$H$r0UL#(B
    $B$7$^$9!%>\:Y$O(B(4)$B;2>H(B)$B!%(B

(4) pkg/PLIST $B$O!$(Baout $B$N%^%$%J!<%P!<%8%g%sHV9f$,(B0$B$G$"$k>l9g$O!$C;$$(B
    (elf$B$J(B)$B6&M-%i%$%V%i%jL>$,=q$+$l$k$Y$-$G$9!%D9$$(B(aout$B$J(B)$BL>A0$O!$$=(B
    $B$l0J30$N>l9g$G$9!%(Bbsd.port.mk $B$O6&M-%i%$%V%i%jL>$,C;$$7A<0$N>l9g!$(B
    $B$+$D!$(BPORTOBJFORMAT==aout $B$N>l9g$K!$$=$NKvHx$K(B ".0" $B$rDI2C$7$^$9!%(B
    $B0lJ}!$(BPORTOBJFORMAT==elf $B$+$D!$D9$$6&M-%i%$%V%i%jL>$N>l9g$O!$%^%$(B
    $B%J!<%P!<%8%g%sHV9f$r:o=|$7$^$9!%(B

(5) ports $B$O!$(B"libfoo.so" $B$,<B:]$N6&M-%i%$%V%i%j(B(aout$B$J$i$P(B
    libfoo.so.M.N$B!$(Belf$B$J$i$P(B libfoo.so.M)$B$r$5$9$h$&$J%7%s%\%j%C%/%j%s(B
    $B%/$r%$%s%9%H!<%k$;$M$P$J$j$^$;$s!%$3$N%j%s%/D%$j$O(Bpkg/PLIST$B$K$b5-(B
    $B=R$5$l$M$P$J$j$^$;$s!%(B

(6) $B$9$Y$F$N(B ports $B$N(B Makefile $B$O!$(BLIB_DEPENDS $B$+$i%^%$%J!<%P!<%8%g%s(B
    $BHV9f$r:o=|$9$k$h$&JT=8$5$l$M$P$J$j$^$;$s!%$^$?!$(Bregexp$B5!G=$N;HMQ$b(B
    $B$d$a$M$P$J$j$^$;$s(B($BNc$($P!$(B"foo\\.1\\.\\(33|40\\)" -> "foo.2" $B$H$7(B
    $B$^$9!%$3$l$O!$(B"grep -wF" $B$K$h$k%^%C%A%s%0$H9M$($l$P$h$$$G$7$g$&(B)$B!%(B

(7) Makefile $BCf$N(B ldconfig $B9T$O(B:

${SETENV} OBJFORMAT=${PORTOBJFORMAT} ${LDCONFIG} -m ....

    $B$H$J$k$Y$-$G$"$j!$(Bpkg/PLIST $B$G$O(B:

@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m ...
@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R

    $B$H$9$k$Y$-$G$9!%(B
---
