cygport may not create debug info if top directory contains a symlink

Christian Franke Christian.Franke@t-online.de
Sat Sep 16 14:17:19 GMT 2023


Found during tests of busybox package:
If the path of the top build directory contains a symlink and the 
project's build scripts normalize pathnames, no debug info is created by 
cygport.

This is because options like
  -fdebug-prefix-map=${B}=/usr/src/debug/${PF}
have no effect because ${B} contains a symlink but the compiler is run 
with the real source path.
The postinstall code then does not find any line number info with source 
path /usr/src/debug/${PF}/...

Could be fixed easily in line 414 of /bin/cygport:

-declare -r top=$(cd ${_topdir}; pwd);
+declare -r top=$(cd ${_topdir}; /bin/pwd);

No patch provided because I'm not sure whether this has other negative 
side effects.

If this is the case, it possibly makes sense to print a warning if 
"$(pwd)" != "$(/bin/pwd)".

-- 
Regards,
Christian



More information about the Cygwin mailing list