# $Id: Portfile 65383 2010-03-25 22:22:06Z ryandesign@macports.org $

PortSystem		1.0
PortGroup		archcheck 1.0

name			mediatomb
version			0.12.0
categories		net multimedia
platforms       darwin
maintainers		gmail.com:yattenator
description		Open source (GPL) UPnP MediaServer
long_description \
		MediaTomb is an open source (GPL) UPnP MediaServer \
		with a nice web user interface, it allows you to stream \
		your digital media through your home network and \
		listen to/watch it on a variety of UPnP compatible devices.

homepage	http://mediatomb.cc/
master_sites	sourceforge

checksums		md5     d822a3f33ee109f799d7a6b76d394e05 \
			sha1    50333464ce42e14488f9c63243ab0ab34e36c762 \
			rmd160  5d46fa16d8614f853ec52212cd5df00a204c6e47

depends_lib	port:libiconv port:zlib port:spidermonkey \
	port:file port:curl port:libexif port:expat

archcheck.files	lib/libiconv.dylib \
		lib/libz.dylib \
		lib/libjs.dylib \
		lib/libmagic.dylib \
		lib/libcurl.dylib \
		lib/libexif.dylib \
		lib/libexpat.dylib

use_autoreconf	yes

patchfiles	patch-configure.ac.diff

configure.args	\
	--enable-libjs --with-js-h=${prefix}/include/js --enable-libexif \
	--disable-sqlite3 --disable-mysql \
	--disable-taglib --disable-id3lib \
	--disable-ffmpeg --disable-libextractor \
	--with-search=${prefix} \
	--with-curl-cfg=${prefix}/bin/curl-config

default_variants	+sqlite3 +taglib +ffmpeg

variant sqlite3 description {Use SQLite 3 database} {
	depends_lib-append	port:sqlite3
	archcheck.files-append	lib/libsqlite3.dylib
	configure.args-append	--enable-sqlite3
	configure.args-delete	--disable-sqlite3
}

variant mysql4 conflicts mysql5 description {Use MySQL 4 database} {
	depends_lib-append	port:mysql4
	archcheck.files-append	lib/mysql/libmysqlclient.dylib
	configure.args-append	--enable-mysql \
		--with-mysql-cfg=${prefix}/bin/mysql_config
	configure.args-delete	--disable-mysql
}

variant mysql5 conflicts mysql4 description {Use MySQL 5 database} {
	depends_lib-append	path:bin/mysql_config5:mysql5
	archcheck.files-append	lib/mysql5/mysql/libmysqlclient.dylib
	configure.args-append	--enable-mysql \
		--with-mysql-cfg=${prefix}/bin/mysql_config5
	configure.args-delete	--disable-mysql
}

variant taglib conflicts id3lib description {Use TagLib for tag access} {
	depends_lib-append	port:taglib
	archcheck.files-append	lib/libtag.dylib
	configure.args-append	--enable-taglib \
		--with-taglib-cfg=${prefix}/bin/taglib-config
	configure.args-delete	--disable-taglib
}

variant id3lib conflicts taglib description {Use id3lib for tag access} {
	depends_lib-append	port:id3lib
	archcheck.files-append	lib/libid3.dylib
	configure.args-append	--enable-id3lib
	configure.args-delete	--disable-id3lib
}

variant ffmpeg conflicts libextractor description {Use ffmpeg for gathering metadata} {
	depends_lib-append	path:lib/libavcodec.dylib:ffmpeg
	archcheck.files-append	lib/libavcodec.dylib
	configure.args-append	--enable-ffmpeg
	configure.args-delete	--disable-ffmpeg
}
# ffmpeg is not universal
if {[variant_isset ffmpeg]} {
	universal_variant	no
}

variant libextractor conflicts ffmpeg description {Use libextractor for gathering metadata} {
	depends_lib-append	port:libextractor
	archcheck.files-append	lib/libextractor.dylib
	configure.args-append	--enable-libextractor
	configure.args-delete	--disable-libextractor
}

post-install {
	if { [variant_isset taglib] } {
		ui_msg "******************************************************"
		ui_msg "* To use UTF-8 filename and metadata on Mac OS X, add:"
		ui_msg "*   <filesystem-charset>UTF-8-MAC</filesystem-charset>"
		ui_msg "*   <metadata-charset>UTF-8-MAC</metadata-charset>"
		ui_msg "* to <import> section of ~/.mediatomb/config.xml."
		ui_msg "******************************************************"
	}
	if { [variant_isset mysql4] || [variant_isset mysql5] } {
		ui_msg "******************************************************"
		ui_msg "* In order to use MySQL for MediaTomb database:"
		ui_msg "* 1. Create DB on mysqld and grant all privilege to DB user."
		ui_msg "* 2. Run \"mediatomb\" once on your shell."
		ui_msg "* 3. Edit auto-generated ~/.mediatomb/config.xml."
		ui_msg "*    In <server> section, edit <mysql> config like this:"
		ui_msg "*    <mysql enabled=\"yes\">"
		ui_msg "*      <host>localhost</host>"
		ui_msg "*      <username>dbusername</username>"
		ui_msg "*      <password>dbpassword</password>"
		ui_msg "*      <database>dbname</database>"
		ui_msg "*    </mysql>"
		ui_msg "* If sqlite3 is enabled,"
		ui_msg "*    <sqlite3 enabled=\"no\">"
		ui_msg "* is also needed to disable it."
		ui_msg "******************************************************"
	}
}

livecheck.regex "<title>MediaTomb (\\d+(?:\\.\\d+)*) released.*</title>"
