aboutsummaryrefslogtreecommitdiffstats
path: root/lang/spidermonkey17/Makefile
blob: b27b9938dea8108d43ce4df88d129aa2118f8f95 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# Created by: Dan Rench <citric@cubicone.tmetic.com>
# $FreeBSD$

PORTNAME=   spidermonkey17
DISTVERSION=    1.7.0
PORTREVISION=   1
CATEGORIES= lang
MASTER_SITES=   MOZILLA/js
DISTNAME=   js-${DISTVERSION}

MAINTAINER= citric@cubicone.tmetic.com
COMMENT=    Standalone JavaScript interpreter from the Mozilla project

LIB_DEPENDS=    libnspr4.so:devel/nspr

CONFLICTS=  njs-[0-9]*

MAKE_ARGS+= JS_THREADSAFE=YES \
        PROG_LIBS="-lreadline -lncurses -lm -lpthread" \
        LDFLAGS="-L${LOCALBASE}/lib"
CFLAGS+=    -I${LOCALBASE}/include/nspr

BROKEN_sparc64=     Does not build on sparc64: fails to link

USES=       gmake ncurses readline
MAKEFILE=   Makefile.ref
ALL_TARGET= ${OPSYS}`${UNAME} -r`_DBG.OBJ/js
MAKE_ENV+=  CCC="${CXX}"
USE_LDCONFIG=   yes
SRC_DIR=    js/src

JSH=        jsapi.h jsarena.h jsarray.h jsatom.h jsautocfg.h jsbool.h \
        jsclist.h jscntxt.h jscompat.h jsconfig.h jsdate.h jsdhash.h \
        jsdtoa.h jsemit.h jsexn.h jsfun.h jsgc.h jshash.h jsinterp.h \
        jsiter.h jslibmath.h jslock.h jslong.h jsmath.h jsnum.h jsobj.h \
        jsopcode.h jsosdep.h jsotypes.h jsparse.h jsprf.h jsprvtd.h \
        jspubtd.h jsutil.h jsregexp.h jsscan.h jsscope.h jsscript.h \
        jsstr.h jstypes.h jsxdrapi.h jsxml.h \
        js.msg jsproto.tbl

PLIST_FILES=    bin/js lib/libjs.so lib/libjs.so.1 ${JSH:S,^,include/,}
WRKSRC=     ${WRKDIR}/${SRC_DIR}
EXTRACT_AFTER_ARGS= --exclude js/jsd

OPTIONS_DEFINE= UTF8

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MUTF8}
CFLAGS+=    -DJS_C_STRINGS_ARE_UTF8
.endif

do-configure:
    ${CP} ${WRKSRC}/config/Linux_All.mk \
        ${WRKSRC}/config/${OPSYS}`${UNAME} -r`.mk

do-install:
    ${INSTALL_PROGRAM} ${WRKSRC}/${OPSYS}`${UNAME} -r`_DBG.OBJ/js \
        ${STAGEDIR}${PREFIX}/bin
    ${INSTALL_PROGRAM} ${WRKSRC}/${OPSYS}`${UNAME} -r`_DBG.OBJ/libjs.so \
        ${STAGEDIR}${PREFIX}/lib
    ${LN} -sf libjs.so ${STAGEDIR}${PREFIX}/lib/libjs.so.1
    ${CP} ${WRKSRC}/${OPSYS}`${UNAME} -r`_DBG.OBJ/jsautocfg.h ${WRKSRC}
    @${INSTALL_DATA} ${JSH:S,^,${WRKSRC}/,} ${STAGEDIR}${PREFIX}/include/

.include <bsd.port.mk>