Opened 13 years ago
Last modified 13 years ago
#33325 new request
Port request- shairport
Reported by: | jruschme@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | mkae (Marko Käning) | |
Port: | shairport |
Description
I would like to request a port of Shairport, the Airport Express RAOP server clone. A C-language version which appears to use Bonjour services of Mac OS X and the MacPorts port of libao is available at
https://github.com/albertz/shairport
I would attempt a port myself, but am not clear how to handle the sources coming from github.
Attachments (3)
Change History (15)
comment:1 Changed 13 years ago by mf2k (Frank Schima)
Keywords: | shairport removed |
---|---|
Milestone: | MacPorts Future |
Port: | shairport added |
Version: | 2.0.3 |
comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Changed 13 years ago by jruschme@…
Attachment: | patch--Makefile.diff added |
---|
Patch to shairport makefile
comment:4 Changed 13 years ago by mkae (Marko Käning)
Hardcoding the prefix is not recommended since users might have a different prefix. Please be aware that users might have different prefixes then /opt/local for their installations. Therefore you should use the "reinplace" command
reinplace "s|/usr/local|${prefix}|g" ${worksrcpath}/Makefile
in your portfile to manipulate the path properly. See section "5.6 Tcl extensions" for more details.
comment:6 Changed 13 years ago by mkae (Marko Käning)
BTW, the line ".PTHONY: all clean install" in that Makefile looks a little phony to me! ;-)
comment:7 Changed 13 years ago by mkae (Marko Käning)
I see, has been fixed in https://github.com/albertz/shairport/commit/be145fa704b628c990bc4aa19800816f00512ccc!
comment:8 Changed 13 years ago by mkae (Marko Käning)
Did you successfully test your port file from above, or is it just 1st try?
I can't even download the tarball using it...
comment:9 follow-up: 12 Changed 13 years ago by jruschme@…
Odd, I actually did test it on a Pismo running 2.0.3 under Tiger. And it did install successfully. (Don't ask about the first test run... not a pretty sight.)
I'll have to look at the 'reinplace' change. This is my first port, so I still have a lot of learning to do.
comment:10 Changed 13 years ago by deric@…
Attached my stab at this, was some time since I made a Portfile from scratch but it works and passes lint. I had to recompile perl5.12 (sudo port -n upgrade --force perl5.12) because the compiler path changed with Xcode 4.3 and that seems to have been hard coded somewhere for perl.
Two points I'm uncertain on:
- Do we want to depend on avahi as well? "Can't exec "avahi-publish-service": No such file or directory at /opt/local/bin/shairport.pl line 274." but on Macs it falls back to the system supplied Bonjour and that works fine.
- p5-libwww-perl is kind of heavyweight but I couldn't find a separate port for HTTP::Request. I'm not that well versed in CPAN modules but there might be an more lightweight approach.
INSTALL.md lists:
- HTTP::Request
- HTTP::Message
- Crypt::OpenSSL::RSA
- IO::Socket::INET6
... as CPAN dependencies
comment:11 Changed 13 years ago by mkae (Marko Käning)
Deric, your portfile worked for me now'''
I saw you removed this line from j's original:
github.tarball_from downloads
... which actually made it work on my end. :-)
Deric, I see that you added dependencies... Looks like you've got more interest in this port, so I am not going to test this port any further, especially because I am not that into iTunes streaming...
comment:12 Changed 13 years ago by mkae (Marko Käning)
Replying to jruschme@…:
... And it did install successfully. (Don't ask about the first test run... not a pretty sight.)
I see. Might be working for you, but in my case it wouldn't if I wanted to install your port on one of my parallel macports installations, which have different prefixes like /opt/macports-test or /opt/clean-slate... :-)
I'll have to look at the 'reinplace' change. This is my first port, so I still have a lot of learning to do.
Deric's update implements that change now. :-)
The github portgroup takes care of most/all of the details of that for you. The github-1.0.tcl portgroup file itself is its only documentation, at this point.