Readline fails to build (yet again)

Ryan Schmidt ryandesign at macports.org
Fri Apr 10 23:13:07 PDT 2009


On Apr 10, 2009, at 19:56, lists at mgreg.com wrote:

> On Apr 7, 2009, at 1:53 AM, Ryan Schmidt wrote:
>
>> Attaching as a file is great, thanks; it ensures the output  
>> doesn't get reformatted by the email program.
>>
>> So, looking into this, the readline port tries to delete the file $ 
>> {prefix}/share/info/dir in post-destroot. It has done this since  
>> r7643 (2004-07-04).
>>
>> MacPorts base also deletes this file automatically, in all ports.  
>> MacPorts has done this since r7669 (2004-07-08).
>>
>> The readline port could be changed to delete the file only if it  
>> exists. Or, given that MacPorts base already does this, the line  
>> could be removed from the readline port.
>>
>> But I'm not clear why this is now, all of a sudden, almost 5 years  
>> later, causing a problem.
>>
>> BTW, I don't see the problem, on Mac OS X 10.4.11 Intel with Xcode  
>> 2.5 and MacPorts 1.7.1.
>
>
> Well, it was trying to install readline 6.0 (which is fine).   
> However, I kept getting DESTROOT errors -- which I still don't  
> fully understand (I'm in the midst of reading the DEV info now).   
> So, I ended up removing all references to DESTROOT, namely the  
> following:
>
>
> post-destroot {
>
>     set docdir ${prefix}/share/doc/${name}-${version}
>     xinstall -d ${destroot}${docdir}/html
>     xinstall -m 0644 -W ${worksrcpath} CHANGELOG CHANGES COPYING  
> NEWS README \
>         ${destroot}${docdir}
>     eval xinstall -m 0644 [glob ${worksrcpath}/doc/*.html] \
>         ${destroot}${docdir}/html
> }
>
> # Install symlinks to avoid breaking ports linked against the old  
> versions
> platform darwin {
>     post-destroot {
>         foreach f {history readline} {
>             foreach v {0 1 2} {
>                 ln -sf lib${f}.${milestone}.dylib ${destroot}$ 
> {prefix}/lib/lib${f}.5.${v}.dylib
>             }
>         }
>     }
> }
>
>
> I'm not sure what problems that will present in the future, but it  
> got past the errors.  I'm still unclear as to where items such as  
> DESTROOT and WORKSRCPATH are actually getting set.  Thoughts on any  
> of this?

It was only having problems with the line

     delete ${destroot}${prefix}/share/info/dir

That was the only line that apparently needed deleting, which is what  
Brian did in r49336 a few days ago, so you could also just "sudo port  
sync" and then "sudo port -fn upgrade readline" to rebuild it ("-fn"  
to force, nonrecursively, so it gets rebuilt even though MacPorts  
doesn't think it needs to, but doesn't rebuild any dependenciens).

By removing the other lines, you have removed from your installation  
the documentation which might be helpful, and the compatibility  
symlinks which some older software may require.

The variables ${worksrcpath}, ${destroot}, ${prefix}, and so on, are  
set by MacPorts base.




More information about the macports-users mailing list