# $OpenBSD: Makefile,v 1.19 2011/09/16 10:31:21 espie Exp $

SHARED_ONLY=	Yes

COMMENT =	Mozilla C implementation of JavaScript

MOZILLA_VERSION =	1.9.2.16
FFX_VERSION =	3.6.16
MOZILLA_BRANCH =	1.9.2
MOZILLA_PROJECT =	spidermonkey
DISTNAME =		firefox-${FFX_VERSION}.source
PKGNAME =	${MOZILLA_PROJECT}-${MOZILLA_VERSION}
EPOCH =		0
REVISION =	2

SO_VERSION =	0.0
SHARED_LIBS =	mozjs ${SO_VERSION}
CATEGORIES =	lang

MAINTAINER =	Martynas Venckus <martynas@openbsd.org>
# MPL
PERMIT_PACKAGE_CDROM=	Yes
PERMIT_PACKAGE_FTP=	Yes
PERMIT_DISTFILES_CDROM=	Yes
PERMIT_DISTFILES_FTP=	Yes

.if ${MACHINE_ARCH} == "i386"
PKG_ARGS+=	-Djit=1 -Damd64=0
.elif ${MACHINE_ARCH} == "amd64"
PKG_ARGS+=	-Djit=1 -Damd64=1
.else
PKG_ARGS+=	-Djit=0 -Damd64=0
.endif

HOMEPAGE =	http://www.mozilla.org/js/spidermonkey/

MASTER_SITES =	http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${FFX_VERSION}/source/
EXTRACT_SUFX =	.tar.bz2

# use patches from www/firefox36
PATCHDIR =		${PORTSDIR}/www/firefox36/patches
PATCH_LIST =	patch-js_src*
PATCH_STRIP =	-p2

MODULES =	lang/python
MODPY_RUNDEP =	No
BUILD_DEPENDS =	archivers/zip archivers/unzip
LIB_DEPENDS =	devel/nspr
WANTLIB =	c m pthread readline nspr4 ncurses plc4 plds4 stdc++

WRKDIST =	${WRKDIR}/mozilla-${MOZILLA_BRANCH}/js/src
USE_GMAKE =	yes
CONFIGURE_STYLE =	autoconf no-autoheader
CONFIGURE_ARGS =	--with-pthreads \
			--with-system-nspr \
			--disable-optimize \
			--enable-readline \
			--enable-ctypes \
			--enable-threadsafe

CONFIGURE_ENV +=	SO_VERSION="${SO_VERSION}" \
			LIBS=-lncurses \
			MOZILLA_VERSION="${MOZILLA_VERSION}" \
			CPPFLAGS=-DJS_C_STRINGS_ARE_UTF8


SUBST_VARS +=	MOZILLA_VERSION

post-install:
	${INSTALL_PROGRAM} ${WRKSRC}/js ${PREFIX}/bin/
	# There is a mozilla-js.pc in the tarball, but it's not initialized
	# as part of the build. This file is based on that.
	${INSTALL_DATA_DIR} ${PREFIX}/lib/pkgconfig/
	${SUBST_CMD} -o ${SHAREOWN} -g ${SHAREGRP} -c ${FILESDIR}/mozilla-js.pc \
		${PREFIX}/lib/pkgconfig/mozilla-js.pc

.include <bsd.port.mk>
