libtool
[Top][All Lists]
Advanced

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

Re: [PATCH] Re: libtool-2.4.2 is fine but libtool-2.4.6 very slow.


From: Hiroyuki Sato
Subject: Re: [PATCH] Re: libtool-2.4.2 is fine but libtool-2.4.6 very slow.
Date: Thu, 24 Sep 2015 00:03:40 +0000

Hello Pavel.

Thank you for your advice.
Workaround worked perfectly!!.
https://github.com/groonga/groonga/commit/7d7a62a2fba74334b23d0021a9a9e78da046b21c

Thanks.


2015年9月19日(土) 17:09 Pavel Raiskup <address@hidden>:
Hi Hiroyuki Sato,

On Wednesday 02 of September 2015 16:00:34 Hiroyuki Sato wrote:
> This configure.ac is extreme slow on libtool-2.4.6.
> But It run smoothly on libtool-2.4.2.
> https://github.com/groonga/groonga/blob/master/configure.ac

thanks for reproducer!

This _really_ looks like issue mentioned [1], though the thread is
believed to be resolved (with existing small slowdown between
libtool-2.4.5 and 2.4.2).  Let me CC Robert whether this patch does not
actually fix the "1 sec" slowdown of libtoolize.

> Could you tell me how to fix this problem?.

You can workaround/fix this by:
-m4_define([nginx_version], m4_include(nginx_version))
-NGINX_VERSION=nginx_version
+NGINX_VERSION=m4_include([nginx_version])

See the "recursion" in 'nginx_version' definition.  Its not recursion
usually (because nginx_version is not defined in the time of m4_define)
-- but libtoolize script does 'm4_undefine(m4_include)' before
evaluating configure.ac.

> Is this libtool's Bug?

I would say so, see the attached patch I'll push very soon (if there are
no objections).

> * OS OSX 10.10.5. and CentOS7

Should be IMO reproducible everywhere.

[1] http://lists.gnu.org/archive/html/libtool/2015-02/msg00000.html

Thanks, Pavel
------

> Thanks.
>
> libtool-2.4.6
>
>   time /tmp/libtool246/bin/libtoolize --verbose --copy --force
>   libtoolize: found 'configure.ac'
>   libtoolize: export M4='/usr/bin/gm4'
>
>   It takes around 10 minutes.
>
> libtool-2.4.2
>
>   time /tmp/libtool242/bin/libtoolize --verbose --copy --force
>   libtoolize: rm -f './ltmain.sh'
>   libtoolize: putting auxiliary files in `.'.
>   libtoolize: copying file from `/tmp/libtool242/share/libtool/config/ltmain.sh'
>   libtoolize: rm -f './libtool.m4'
>   libtoolize: rm -f './ltoptions.m4'
>   libtoolize: rm -f './ltsugar.m4'
>   libtoolize: rm -f './ltversion.m4'
>   libtoolize: rm -f './lt~obsolete.m4'
>   libtoolize: Not copying `./argz.m4', libltdl not used.
>   libtoolize: putting macros in `.'.
>   libtoolize: copying file from `/tmp/libtool242/share/aclocal/libtool.m4'
>   libtoolize: Not copying `./ltdl.m4', libltdl not used.
>   libtoolize: copying file from `/tmp/libtool242/share/aclocal/ltoptions.m4'
>   libtoolize: copying file from `/tmp/libtool242/share/aclocal/ltsugar.m4'
>   libtoolize: copying file from `/tmp/libtool242/share/aclocal/ltversion.m4'
>   libtoolize: copying file from `/tmp/libtool242/share/aclocal/lt~obsolete.m4'
>   libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
>   libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
>
>   real 0m1.003s
>   user 0m0.364s
>   sys 0m0.540s
>
>
>

reply via email to

[Prev in Thread] Current Thread [Next in Thread]