http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52122

             Bug #: 52122
           Summary: [4.6.x/4.7] incorrect ln -s replacement for mingw like
                    targets in configure files
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: daniel.f.sta...@freenet.de


Taking the current gcc 4.7 trunk revision 183875 (and even older versions like
4.6.x) as well as the libraries used the configure files are set to use "cp -p"
as replacement for "ln -s" for mingw targets. This is correct for files but not
for directories especially when contianing sub directories. My proposal is to
replace it with "cp -pr" to handle recursion. As a result of the current
problem ada fails bootstrapping on mingw while trying to copy a folder of
header files.

Extract from gcc/configure:
472    as_ln_s='ln -s'
473    # ... but there are two gotchas:
474    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
475    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
476    # In both cases, we have to default to `cp -p'.
477    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
478      as_ln_s='cp -p'

I hope this is the right place for this issue as I am not certain how the
configure system is handled.

Reply via email to