summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-libs/openh323/openh323-1.15.3.ebuild')
-rw-r--r--net-libs/openh323/openh323-1.15.3.ebuild139
1 files changed, 139 insertions, 0 deletions
diff --git a/net-libs/openh323/openh323-1.15.3.ebuild b/net-libs/openh323/openh323-1.15.3.ebuild
new file mode 100644
index 000000000000..b8aa7381405e
--- /dev/null
+++ b/net-libs/openh323/openh323-1.15.3.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/openh323/openh323-1.15.3.ebuild,v 1.6 2007/04/14 14:20:24 dirtyepic Exp $
+
+inherit eutils flag-o-matic multilib
+
+MY_P="${PN}-v${PV//./_}"
+
+DESCRIPTION="Open Source implementation of the ITU H.323 teleconferencing protocol"
+HOMEPAGE="http://www.openh323.org/"
+SRC_URI="http://www.gnomemeeting.org/admin/downloads/latest/sources/sources/${P}.tar.gz"
+
+IUSE="ssl novideo noaudio debug"
+SLOT="0"
+LICENSE="MPL-1.1"
+KEYWORDS="alpha ~amd64 ppc ~sparc ~x86"
+
+DEPEND=">=sys-apps/sed-4
+ >=dev-libs/pwlib-1.8.4
+ >=media-video/ffmpeg-0.4.7
+ ssl? ( dev-libs/openssl )"
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${S}
+ # Makefile is currently broken with NOTRACE=1, fix that
+ epatch ${FILESDIR}/${PN}-1.15.2-notrace.diff
+}
+
+src_compile() {
+ local makeopts
+ local myconf
+
+ # remove -fstack-protector, may cause problems (bug #75259)
+ filter-flags -fstack-protector
+
+ export PWLIBDIR=/usr/share/pwlib
+ export PTLIB_CONFIG=/usr/bin/ptlib-config
+ export OPENH323DIR=${S}
+
+ makeopts="${makeopts} ASNPARSER=/usr/bin/asnparser LDFLAGS=-L${S}/lib"
+
+ # NOTRACE avoid compilation problems, we disable PTRACING using NOTRACE=1
+ # compile with PTRACING if the user wants to debug stuff
+ if ! use debug; then
+ makeopts="${makeopts} NOTRACE=1"
+ fi
+
+ if use ssl; then
+ export OPENSSLFLAG=1
+ export OPENSSLDIR=/usr
+ export OPENSSLLIBS="-lssl -lcrypt"
+ fi
+
+ use novideo \
+ && myconf="${myconf} --disable-video"
+
+ use noaudio \
+ && myconf="${myconf} --disable-audio"
+
+ econf ${myconf} || die "configure failed"
+ emake ${makeopts} opt || die "make failed"
+}
+
+src_install() {
+ local OPENH323_ARCH ALT_ARCH OPENH323_SUFFIX
+ local makeopts
+ # make NOTRACE=1 opt ==> linux_$ARCH_n
+ # make opt ==> linux_$ARCH_r
+ if ! use debug; then
+ OPENH323_SUFFIX="n"
+ makeopts="NOTRACE=1"
+ else
+ OPENH323_SUFFIX="r"
+ fi
+
+ # amd64 needs special treatment
+ if use amd64; then
+ OPENH323_ARCH="linux_x86_64_${OPENH323_SUFFIX}"
+ else
+ OPENH323_ARCH="linux_${ARCH}_${OPENH323_SUFFIX}"
+ fi
+
+ # set ALT_ARCH
+ if use debug; then
+ ALT_ARCH=${OPENH323_ARCH/_r/_n}
+ else
+ ALT_ARCH=${OPENH323_ARCH/_n/_r}
+ fi
+
+ ###
+ # Install stuff
+ #
+ make PREFIX=/usr DESTDIR=${D} \
+ OH323_FILE="libh323_${OPENH323_ARCH}.so.${PV}" \
+ ${makeopts} install || die "install failed"
+
+ # workaround: don't install libh323*.so and libh323.so.${PV}
+ if [[ -f ${D}/usr/$(get_libdir)/libh323_${OPENH323_ARCH}.so ]]; then
+ # libh323*.so is a file... replace it w/ a symlink
+ rm -f ${D}/usr/$(get_libdir)/libh323_${OPENH323_ARCH}.so
+
+ dosym /usr/$(get_libdir)/libh323_${OPENH323_ARCH}.so.${PV} \
+ /usr/$(get_libdir)/libh323_${OPENH323_ARCH}.so
+ fi
+
+ ###
+ # Compatibility "hacks"
+ #
+
+ # mod to keep gnugk happy
+ insinto /usr/share/openh323/src
+ newins ${FILESDIR}/openh323-1.11.7-emptyMakefile Makefile
+
+ # install version.h into $OPENH323DIR
+ insinto /usr/share/openh323
+ doins version.h
+
+ rm ${D}/usr/$(get_libdir)/libopenh323.so
+ dosym /usr/$(get_libdir)/libh323_${OPENH323_ARCH}.so.${PV} /usr/$(get_libdir)/libopenh323.so
+
+ # for backwards compatibility with _r versioned libraries
+ for pv in ${PV} ${PV%.[0-9]} ${PV%.[0-9]*.[0-9]}; do
+ einfo "creating /usr/$(get_libdir)/libh323_${ALT_ARCH}.so.${pv} symlink"
+ dosym /usr/$(get_libdir)/libh323_${OPENH323_ARCH}.so.${PV} /usr/$(get_libdir)/libh323_${ALT_ARCH}.so.${pv}
+ done
+ dosym /usr/$(get_libdir)/libh323_${OPENH323_ARCH}.so.${PV} /usr/$(get_libdir)/libh323_${ALT_ARCH}.so
+
+ # these should point to the right directories,
+ # openh323.org apps and others need this
+ dosed "s:^OH323_LIBDIR = \$(OPENH323DIR).*:OH323_LIBDIR = /usr/$(get_libdir):" \
+ /usr/share/openh323/openh323u.mak
+ dosed "s:^OH323_INCDIR = \$(OPENH323DIR).*:OH323_INCDIR = /usr/include/openh323:" \
+ /usr/share/openh323/openh323u.mak
+ # this is hardcoded now?
+ dosed "s:^\(OPENH323DIR[ \t]\+=\) ${S}:\1 /usr/share/openh323:" \
+ /usr/share/openh323/openh323u.mak
+}