[patch cygport]

Marco Atzeri marco.atzeri@gmail.com
Thu Jun 4 06:02:12 GMT 2020


"Fixing libtool modules:" will enter in a never ending loop
when "_topdir=." is different from "readlink -f ."


+ '[' /cygdrive/d/cyg_pub/devel/openmpi/v4.0/openmpi-4.0.4-0.2.x86_64 
'!=' /pub/devel/openmpi/v4.0/openmpi-4.0.4-0.2.x86_64/inst/usr ']'
+ dlname=../../../../bin/cygmpi-40.dll
++ readlink -f usr/lib/../../../..


+ '[' /cygdrive/d/cyg_pub/devel/openmpi/v4.0 '!=' 
/pub/devel/openmpi/v4.0/openmpi-4.0.4-0.2.x86_64/inst/usr ']'
+ dlname=../../../../../bin/cygmpi-40.dll
++ readlink -f usr/lib/../../../../..

and so on ..


With the patch the two sides match and loop end as expected:

+ '[' 
/cygdrive/d/cyg_pub/devel/openmpi/v4.0/openmpi-4.0.4-0.2.x86_64/inst/usr 
'!=' 
/cygdrive/d/cyg_pub/devel/openmpi/v4.0/openmpi-4.0.4-0.2.x86_64/inst/usr ']'
+ '[' ../bin/cygmpi-40.dll '!=' ../bin/cygmpi-40.dll ']'
-------------- next part --------------
diff --git a/bin/cygport.in b/bin/cygport.in
index 1fe804d..2eeff26 100755
--- a/bin/cygport.in
+++ b/bin/cygport.in
@@ -397,7 +397,7 @@ if [ "x${_topdir}" = "x${argv[1]}" ]
 then
 	if [ -f ./${cygportfile} ]
 	then
-		_topdir=.;
+		_topdir=$(readlink -f .);
 	else
 		_topdir=/usr/src;
 	fi


More information about the Cygwin-apps mailing list