homebrew-core/Formula/ushare.rb

58 lines
1.8 KiB
Ruby

require 'formula'
class Ushare < Formula
homepage 'http://ushare.geexbox.org/'
url 'http://ushare.geexbox.org/releases/ushare-1.1a.tar.bz2'
sha1 '1539e83cde5d80f433d262d971f5fe78486c9375'
depends_on 'pkg-config' => :build
depends_on 'gettext'
depends_on 'libupnp'
depends_on 'libdlna'
# Correct "OPTFLAGS" to "CFLAGS"
def patches
{ :p0 =>
"https://trac.macports.org/export/89267/trunk/dports/net/ushare/files/patch-configure.diff",
:p1 => DATA,
}
end
fails_with :clang do
cause "clang removes inline functions, causing a link error:\n" +
"\"_display_headers\", referenced from: _parse_command_line in cfgparser.o"
end
def install
# Need to explicitly add intl and gettext here.
gettext = Formula.factory("gettext")
ENV.append 'CFLAGS', "-I#{gettext.include}"
ENV.append 'LDFLAGS', "-lintl"
inreplace 'configure', /config.h/, 'src/config.h'
system "./configure", "--disable-debug",
"--prefix=#{prefix}",
"--enable-dlna",
"--with-libupnp-dir=#{HOMEBREW_PREFIX}",
"--with-libdlna-dir=#{HOMEBREW_PREFIX}",
"--disable-strip"
system "make install"
man1.install "src/ushare.1"
end
end
__END__
diff --git a/src/ushare.c b/src/ushare.c
index 717e862..8e51bf7 100644
--- a/src/ushare.c
+++ b/src/ushare.c
@@ -188,7 +188,7 @@ handle_action_request (struct Upnp_Action_Request *request)
if (strcmp (request->DevUDN + 5, ut->udn))
return;
- ip = request->CtrlPtIPAddr.s_addr;
+ ip = ((struct sockaddr *) &request->CtrlPtIPAddr)->sa_data;
ip = ntohl (ip);
sprintf (val, "%d.%d.%d.%d",
(ip >> 24) & 0xFF, (ip >> 16) & 0xFF, (ip >> 8) & 0xFF, ip & 0xFF);