On Tue, May 20, 2014 at 03:01:58PM +0400, Vadim Zhukov wrote:
> 2014-05-20 14:39 GMT+04:00, Stuart Henderson <st...@openbsd.org>:
> > On 2014/05/19 17:06, Marc Espie wrote:
> >> > --- /dev/null 1 Jan 1970 00:00:00 -0000
> >> > +++ patches/patch-buildtools_wafadmin_Tools_cxx_py 19 May 2014
> >> > 14:45:35
> >> > -0000
> >> > @@ -0,0 +1,14 @@
> >> > +$OpenBSD$
> >> > +Reorder object files to minimize library interrefs count.
> >> > +Speeds up loading of library files.
> >> > +--- buildtools/wafadmin/Tools/cxx.py.orig Mon May 19 18:30:35 2014
> >> > ++++ buildtools/wafadmin/Tools/cxx.py Mon May 19 18:31:28 2014
> >> > +@@ -97,7 +97,7 @@ cls = Task.simple_task_type('cxx', cxx_str,
> >> > color='GRE
> >> > + cls.scan = ccroot.scan
> >> > + cls.vars.append('CXXDEPS')
> >> > +
> >> > +-link_str = '${LINK_CXX} ${CXXLNK_SRC_F}${SRC}
> >> > ${CXXLNK_TGT_F}${TGT[0].abspath(env)} ${LINKFLAGS}'
> >> > ++link_str = '${LINK_CXX} ${CXXLNK_SRC_F} `set -- ${SRC}; test $# -gt 0
> >> > && lorder "$@" | tsort -q` ${CXXLNK_TGT_F}${TGT[0].abspath(env)}
> >> > ${LINKFLAGS}'
> >> > + cls = Task.simple_task_type('cxx_link', link_str, color='YELLOW',
> >> > ext_in='.o', ext_out='.bin', shell=False)
> >> > + cls.maxjobs = 1
> >> > + cls.install = Utils.nada
> >> This is definitely a good idea, this is what the base system does for
> >> linking
> >> libraries !
> >>
> >
> > Does src/usr.bin/libtool do the same?
>
> No. But it could; what do you think, Marc?
looks like a good idea. Of course, it's very likely to find other bugs,
so it should be exhaustively tested...