Wednesday, October 29, 2014

Mac Ports - llvm-3.5 failed to install

Recently, I've upgraded to OSX Yosemite (great update for OSX, by the way) and issued a mac ports update (port selfupdate && port upgrade outdated) and ran into an issue with upgrading llvm-3.5.  Here's what it looked like:

sudo port clean llvm-3.5 && sudo port install llvm-3.5
--->  Cleaning llvm-3.5
--->  Computing dependencies for llvm-3.5
--->  Fetching archive for llvm-3.5
--->  Attempting to fetch llvm-3.5-3.5-r216817_0+assertions.darwin_14.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/llvm-3.5
--->  Attempting to fetch llvm-3.5-3.5-r216817_0+assertions.darwin_14.x86_64.tbz2 from http://nue.de.packages.macports.org/macports/packages/llvm-3.5
--->  Attempting to fetch llvm-3.5-3.5-r216817_0+assertions.darwin_14.x86_64.tbz2 from http://packages.macports.org/llvm-3.5
--->  Fetching distfiles for llvm-3.5
Error: org.macports.fetch for port llvm-3.5 returned: Subversion check out failed
Please see the log file for port llvm-3.5 for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.5/llvm-3.5/main.log
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port llvm-3.5 failed

Here's how I managed to fix it:

cd $(port dir llvm-3.5)
sudo vim Portfile

On line 70 there is a config option starting with "svn.url".  The URL specifies http:// - you need to change it so it uses the https protocol.   It should look similar to this now:

svn.url              https://llvm.org/svn/llvm-project/llvm/branches/release_${llvm_version_no_dot}

After making that change, I re-ran port upgrade outdated and it was able to pull the file down.  It is unclear at this point why it fails to checkout the files using SVN over http.