From owner-ports-jp@jp.freebsd.org  Tue Sep 15 07:20:23 1998
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.1+3.0W/8.7.3) id HAA05022;
	Tue, 15 Sep 1998 07:20:23 +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 HAA05013
	for <ports-jp@jp.freebsd.org>; Tue, 15 Sep 1998 07:20:21 +0900 (JST)
	(envelope-from taguchi@tohoku.iij.ad.jp)
Received: by tohokugw.tohoku.iij.ad.jp; id HAA15937; Tue, 15 Sep 1998 07:20:19 +0900 (JST)
Received: from unknown(192.168.144.10) by tohokugw.tohoku.iij.ad.jp via smap (4.1)
	id xma015935; Tue, 15 Sep 98 07:19:45 +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 HAA05910
	for <ports-jp@jp.freebsd.org>; Tue, 15 Sep 1998 07:19:04 +0900 (JST)
To: ports-jp@jp.freebsd.org
From: Taguchi Takeshi <taguchi@tohoku.iij.ad.jp>
In-Reply-To: Your message of "Mon, 14 Sep 1998 05:15:08 -0700 (PDT)"
	<199809141215.FAA22967@silvia.hip.berkeley.edu>
References: <199809141215.FAA22967@silvia.hip.berkeley.edu>
X-Mailer: Mew version 1.93b26 on Emacs 19.28 / Mule 2.3 (SUETSUMUHANA)
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: <19980915071802W.taguchi@tohoku.iij.ad.jp>
Date: Tue, 15 Sep 1998 07:18:02 +0900
X-Dispatcher: imput version 980522
Lines: 95
Reply-To: ports-jp@jp.freebsd.org
Precedence: bulk
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+980914
X-Sequence: ports-jp 4366
Subject: [ports-jp 4366] ELF transition for ports (in Japanese)
Errors-To: owner-ports-jp@jp.freebsd.org
Sender: owner-ports-jp@jp.freebsd.org

$BED8}$G$9!#<B$O@TDGH?<ME*$KLu$O40@.$7$F$?$s$G$9$o!#(B

>  * Guideline $B$NF|K\8lHG$O(B post $B$5$l$J$$$N$G$7$g$&$+!#(B
> 
> $B$3$l!"$I$J$?$+$*4j$$$7$^$9!#(B(^_^;)

$B8mLu$O;XE&$7$F2<$5$$$M!#(B

---
Subject: ELF transition for ports
From: asami@cs.berkeley.edu (Satoshi Asami)
To: ports@FreeBSD.ORG
CC: committers@FreeBSD.ORG, current@FreeBSD.ORG
Date: Wed, 9 Sep 1998 23:57:51 -0700 (PDT)
Followup-to: ports@freebsd.org

$B$_$J$5$s!$$3$s$K$A$O!%(B

$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$?$a$N%,%$%I%i%$%s$G$9!%(BELF$B2=$5$l$?(B ports $B$rMQ$$$k$K$O!$(B
$B:G?7$N(B bsd.ports.mk (1.287 $B$d(B 1.227.2.51) $B$,I,MW$K$J$j$^$9!%(B
($B:G?7$N(B ports $B$r;H$$$?$$$N$G$"$k$J$i$P!$(B-stable $B%f!<%6$G$"$C$F(B
$B$b:G?7$N(B bsd.ports.mk $B$,I,MW$G$"$k$3$H$KCm0U$7$F$/$@$5$$!%(B)

a.out $B$H(B ELF $BAPJ}$G(B ports $BLZ$,F0$/$h$&2f!9$,=$@5$r40N;$9$k$^$G$O!$(B
$B?IJz$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$+$L$h$&$K$7!$(B"aout"
  $B%5%V%G%#%l%/%H%j$KBTHr$5$;$F$*$/!%BTHr$5$;$F$*$+$J$$$H!$(Belf $B$J(B
  ports $B$O2?$b9M$($:$K(B aout $B%i%$%V%i%j$r>e=q$-$7$F$7$^$&$@$m$&!%(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$k!%(Baout $B$J%i%$%V%i%j$r(B
  $B0\F0$9$k$@$1$J$N$G!$(B1$B$D$N%7%9%F%`$GI8=`%G%#%l%/%H%j$N(B elf $B$H(B aout
  2 $B$D$N%i%$%V%i%j$NAPJ}$H$b0BA4$K8F$S=P$;$k!%(B

(2) ports$BLZ$O!$$=$N%^%7%s$N7A<0$G(Bpackage$B$r@8@.$9$k$b$N$G$"$k!%$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$,(B
  $B2?$rJV$9$+$K$h$C$F(B elf $B$+(B aout $B$+$,7hDj$5$l$k$3$H$r0UL#$9$k!%$^$?!$(B
  $B0lEY(B (1) $B$N<j=g$G(B elf $B2=$7$F$7$^$&(B($B$9$J$o$A!$(Baout $B%i%$%V%i%j$r%5%V(B
  $B%G%#%l%/%H%j$K0\F0$7$F$7$^$&(B)$B$H!$(Baout $B%i%$%V%i%j$N@8@.$O%5%]!<%H$5(B
  $B$l$J$$(B($B$I$&$9$k$Y$-$+CN$C$F$k$J$i$P!$F0$-$O$9$k$@$m$&!%$?$@$7!"$"(B
  $B$/$^$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$r(B
    $B4D6-JQ?t(B CONFIGURE_ENV $B$H(B MAKE_ENV $B$K(Bexport$B$9$k(B(-stable $B$G$O$3$l$O>o(B
    $B$K(B "aout" $B$@(B)$B!%$^$?!$(BPLIST_SUB $B$K$b(B "PORTOBJFORMAT=${PORTOBJFORMAT}"
    $B$H$7$FEO$5$l$k(B($B>\:Y$O(B(6)$B;2>H(B)$B!%(B

    $BK\JQ?t$O0J2<$N9T$G@_Dj$5$l$k(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$9$k$h$&(Bpatch$BEv(B
    $B$F$5$l$M$P$J$i$J$$!%FC$K(B elf $B7A<0$G$O%i%$%V%i%j$K%^%$%J!<HV9f$,(B
    $BB8:_$7$J$$$3$H$K$OCm0U$9$Y$-$G$"$k!%$^$?!$(B"ld" $B$rD>@\;H$&Be$o$j(B
    $B$K(B "cc -shared" $B$r;H$&$h$&$K$;$M$P$J$i$J$$!%0c$$$O!$(B
    "-Wl,-soname,foo.so.3" $B$r%3%^%s%I9T$KDI2C$9$k$@$1$@!%$^$?!$%$%s%9(B
    $B%H!<%k$N:]$K(B "libfoo.so" -> "libfoo.so.3" $B$N%7%s%\%j%C%/%j%s%/$rD%(B
    $B$k$N$rK:$l$F$O$J$i$J$$!%(B

(4) aout $B$J%i%$%V%i%j$G$O!$$9$Y$F$N%^%$%J!<HV9f$O(B 0 $B$K$J$k$Y$-$G$"$k!%(B
    $B$3$l$OB?$/$N(B ports (0$B$G$J$$%^%$%J!<HV9f$r;}$D(B) $B$G$=$N%a%8%c!<HV9f(B
    $B$r(B 1 $BA}2C$5$;$M$P$J$i$J$$$3$H$r0UL#$9$k!%$3$N=$@5$NI,MW$J(B ports 
    $B$O0J2<$K$h$l$P(B 80 $B$[$IB8:_$9$k$h$&$@(B:

## grep 'lib.*\.so\..*\..*' */*/pkg/PLIST > t 
## cat t | sed -e 's/:.*//' | uniq | wc
     143     143    3622
## grep -v '\.0$' t | sed -e 's/:.*//' | uniq | wc
      80      80    2019
      ^^
    ("0" $B$G=*$o$C$F$J$$$N$NAm7W$G$"$k(B)

    $B$9$Y$F$N(B ports $B$N(B Makefile $B$N(B LIB_DEPEND $B$+$i%^%$%J!<HV9f$O:o=|$5$l(B
    $B$F$*$j!$(Bregexp $B5!G=$b:o$i$l$F$$$k(B ($BNc$($P!$(B"foo\\.1\\.\\(33|40\\)" 
    -> "foo.2"$B!%$3$l$O(B "grep -wF" $B$G%^%C%A$9$k(B)$B!%(B    .

(5) pkg/PLIST $B$OC;$$6&M-%i%$%V%i%jL>(B(elf$B7A<0$N$=$l(B) $B$r5-=R$9$k$h$&$K$7(B
    $B$J$1$l$P$J$i$J$$!%@8@.$5$l$?(B PLIST $B$G(B PORTOBJFORMAT==aout $B$K$J$C$F$$(B
    $B$k$J$i$P!$(Bbsd.port.mk $B$O6&M-%i%$%V%i%j9T$NKvHx$K(B "0" $B$rDI2C$9$k!%(B

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

${SETENV} OBJFORMAT=${PORTOBJFORMAT} /sbin/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$J$C$F$J$1$l$P$J$i$J$$!%(B
