Build spends a long time in "mkimport".

Ken Brown kbrown@cornell.edu
Sun Oct 11 16:52:02 GMT 2020


On 10/11/2020 3:24 AM, Mark Geisert wrote:
> Kaz Kylheku (Cygwin) via Cygwin wrote:
>> Hi All,
>>
>> When building the Cygwin DLL, this single step takes almost ten minutes:
>>
>>    ../../.././winsup/cygwin/mkimport --cpu=i686 --ar=ar --as=as --nm=nm 
>> --objcopy=objcopy \
>>    --replace=atexit= --replace=timezone= --replace=uname=uname_x 
>> --replace=__xdrrec_getrec=
>>
>>    [ .. SNIP ... ]
>>
>>    --replace=truncate=_truncate64 libcygwin.a cygdll.a _cygwin_crt0_common.o \
>>    atexit.o cygwin_attach_dll.o cygwin_crt0.o dll_entry.o dll_main.o 
>> dso_handle.o \
>>    libcmain.o premain0.o premain1.o premain2.o premain3.o pseudo-reloc-dummy.o
>>
>> What's puzzling is that there is very CPU activity during this time. It's 
>> launching
>> some objcopy commands.
>>
>> Is there some documentation that provides an overview of what exactly this does,
>> other than studying its perl source code?
>>
>> Maybe it can be sped up?
>>
>> I'm going to have to cycle quite a few times on some changes, so this is 
>> frustrating.
> 
> Hi Kaz,
> I'm redirecting this to the cygwin-developers list as it's a Cygwin build issue. 
> Please follow up there.

I don't have any insight into why mkimport takes so long.  But the good news is 
that it doesn't run very often.  Most changes to winsup/cygwin files don't 
trigger the mkimport command.

Ken


More information about the Cygwin-developers mailing list