View | Details | Raw Unified | Return to bug 179390 | Differences between
and this patch

Collapse All | Expand All

(-)Makefile (-55 / +44 lines)
Lines 2-11 Link Here
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	pure
4
PORTNAME=	pure
5
PORTVERSION=	0.55
5
PORTVERSION=	0.58
6
CATEGORIES=	lang
6
CATEGORIES=	lang
7
DISTFILES=	${PORTNAME}-${PORTVERSION}.tar.gz \
7
MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
8
		${PORTNAME}-docs-${PORTVERSION}.tar.gz
8
DISTFILES=	${PORTNAME}-${PORTVERSION}.tar.gz ${PORTNAME}-docs-${PORTVERSION}.tar.gz
9
DIST_SUBDIR=	pure
9
10
10
MAINTAINER=	lichray@gmail.com
11
MAINTAINER=	lichray@gmail.com
11
COMMENT=	Modern-style functional programming language
12
COMMENT=	Modern-style functional programming language
Lines 15-48 Link Here
15
16
16
LIB_DEPENDS=	libgmp.so:${PORTSDIR}/math/gmp \
17
LIB_DEPENDS=	libgmp.so:${PORTSDIR}/math/gmp \
17
		libmpfr.so:${PORTSDIR}/math/mpfr
18
		libmpfr.so:${PORTSDIR}/math/mpfr
18
BUILD_DEPENDS=	llvm31>=3.1:${PORTSDIR}/devel/llvm31
19
BUILD_DEPENDS=	llvm>=3.2:${PORTSDIR}/devel/llvm
19
RUN_DEPENDS=	llvm31>=3.1:${PORTSDIR}/devel/llvm31
20
RUN_DEPENDS:=	${BUILD_DEPENDS}
20
21
21
USES=		iconv pkgconfig
22
SUB_FILES=	pkg-message
23
24
USES=		gmake iconv pathfix pkgconfig
22
USE_AUTOTOOLS=	libltdl
25
USE_AUTOTOOLS=	libltdl
23
GNU_CONFIGURE=	yes
26
GNU_CONFIGURE=	yes
24
USE_GNOME=	gnomehack
27
CONFIGURE_ARGS=	--with-libgmp-prefix=${LOCALBASE} --enable-release
25
USE_LDCONFIG=	yes
28
USE_LDCONFIG=	yes
26
USE_PURE=	yes
27
29
28
CONFIGURE_ARGS=	--with-libgmp-prefix=${LOCALBASE} --enable-release
30
MAKE_ARGS+=	prefix=${PREFIX} mandir=${PREFIX}/man \
31
		CC=${CC} CFLAGS="${CFLAGS}" \
32
		CXX=${CXX} CXXFLAGS="${CXXFLAGS}" \
33
		CPPFLAGS+=-I${LOCALBASE}/include \
34
		LDFLAGS+=-L${LOCALBASE}/lib
29
35
30
OPTIONS_DEFINE=	EMACS
36
PORTDOCS=	*
37
PORTEXAMPLES=	*
38
39
OPTIONS_DEFINE=	DOCS EMACS ETC EXAMPLES
40
31
EMACS_DESC=	Compile pure-mode.el with Emacs
41
EMACS_DESC=	Compile pure-mode.el with Emacs
42
ETC_DESC=	Copy Pure syntax highlighting to ${DATADIR}/etc
32
43
33
MAN1=		pure.1
44
OPTIONS_DEFAULT=	ETC
34
SUB_FILES=	pkg-message
35
45
36
NO_STAGE=	yes
46
OPTIONS_SUB=	yes
47
48
EMACS_CONFIGURE_ENABLE=		--with-elisp
49
EMACS_CONFIGURE_DISABLE=	--without-elisp
50
37
.include <bsd.port.options.mk>
51
.include <bsd.port.options.mk>
38
52
39
.if ${PORT_OPTIONS:MEMACS}
53
.if ${PORT_OPTIONS:MEMACS}
40
USE_EMACS=	yes
54
USE_EMACS=	yes
41
MAKE_ARGS+=	emacs_prefix=${PREFIX}
55
MAKE_ARGS+=	emacs_prefix=${PREFIX}
42
PLIST_SUB+=	ELC=""
56
.endif
57
58
.if ${OSVERSION} < 900014
59
SUB_LIST+=	NOCLANG=""
43
.else
60
.else
44
CONFIGURE_ARGS+=	--without-elisp
61
SUB_LIST+=	NOCLANG="@comment "
45
PLIST_SUB+=	ELC="@comment "
46
.endif
62
.endif
47
63
48
# automatically disable readline support if editline support is available
64
# automatically disable readline support if editline support is available
Lines 54-101 Link Here
54
CONFIGURE_TARGET=	x86_64-portbld-freebsd
70
CONFIGURE_TARGET=	x86_64-portbld-freebsd
55
.endif
71
.endif
56
72
57
PORTDATA=	*
73
post-install:
58
PORTEXAMPLES=	*
74
.if ${PORT_OPTIONS:METC}
59
PORTDOCS=	*
75
	@${MKDIR} ${STAGEDIR}${DATADIR}/etc/
60
76
	@(cd ${WRKSRC} && ${RM} -f etc/*.in && ${COPYTREE_SHARE} etc/ ${STAGEDIR}${DATADIR})
61
.if !defined(NOPORTDATA)
62
SUB_LIST+=	ETC=""
63
.else
64
SUB_LIST+=	ETC="@comment "
65
.endif
77
.endif
66
78
67
.if !defined(NOPORTDOCS)
79
.if ${PORT_OPTIONS:MDOCS}
68
PLIST_SUB+=	DOCS=""
80
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
69
.else
81
	@(cd ${WRKDIR}/${PORTNAME}-docs-${PORTVERSION} && ${RM} -f Makefile && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR})
70
PLIST_SUB+=	DOCS="@comment "
82
	${LN} -sf ${DOCSDIR} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/docs
71
.endif
83
.endif
72
84
73
.if ${OSVERSION} < 900014
85
.if ${PORT_OPTIONS:MEXAMPLES}
74
SUB_LIST+=	NOCLANG=""
86
	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
75
.else
87
	@(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
76
SUB_LIST+=	NOCLANG="@comment "
77
.endif
88
.endif
78
89
79
.include "${.CURDIR}/bsd.pure.mk"
90
.include <bsd.port.mk>
80
.include <bsd.port.pre.mk>
81
82
post-install:
83
.if !defined(NOPORTDATA)
84
	@${MKDIR} ${DATADIR}/etc
85
	(cd ${WRKSRC} && ${RM} -f etc/*.in && ${COPYTREE_SHARE} etc ${DATADIR})
86
.endif
87
.if !defined(NOPORTEXAMPLES)
88
	@${MKDIR} ${EXAMPLESDIR}
89
	(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
90
.endif
91
.if !defined(NOPORTDOCS)
92
	@${MKDIR} ${DOCSDIR}
93
	(cd ${WRKDIR}/${PORTNAME}-docs-${PORTVERSION} && \
94
		${RM} -f Makefile && ${COPYTREE_SHARE} . ${DOCSDIR})
95
	${LN} -fs ${DOCSDIR} ${PREFIX}/lib/${PORTNAME}/docs
96
.endif
97
	@${ECHO_MSG}
98
	@${CAT} ${PKGMESSAGE}
99
	@${ECHO_MSG}
100
101
.include <bsd.port.post.mk>
(-)bsd.pure.mk (-96 lines)
Lines 1-96 Link Here
1
# ex:ts=8
2
#
3
# $FreeBSD$
4
#
5
# bsd.pure.mk - Support for the Pure language packages
6
#
7
# Author: Zhihao Yuan <lichray@gmail.com>
8
#
9
# USE_PURE		-	Set it to 'yes' to use libpure.so.
10
# 					Others are regarded as a list of *RUN_DEPENDS*
11
# 					to pure-* addons. For example,
12
# USE_PURE=	ffi 	makes the port depends on pure-ffi at runtime.
13
# USE_PURE_BUILD	-	Set it to 'yes' to change the addons in USE_PURE
14
# 						list to *BUILD_DEPENDS*.
15
# NO_PURE_EXAMPLES	-	Don't automatically install examples/.
16
17
.if !defined(PURE_include)
18
19
PURE_MAINTAINER=lichray@gmail.com
20
PURE_include=	bsd.pure.mk
21
22
MASTER_SITES?=	http://pure-lang.googlecode.com/files/
23
DIST_SUBDIR=	pure
24
25
USES+=		gmake
26
27
_PURE_audio_cat=	audio
28
_PURE_csv_cat=		textproc
29
_PURE_ffi_cat=		devel
30
_PURE_gen_cat=		devel
31
_PURE_gen_util=		pure-gen
32
_PURE_gl_cat=		graphics
33
_PURE_gl_fn=		GL
34
_PURE_gtk_cat=		x11-toolkits
35
_PURE_mpfr_cat=		math
36
_PURE_readline_cat=	devel
37
_PURE_sockets_cat=	net
38
_PURE_sql3_cat=		databases
39
_PURE_tk_cat=		x11-toolkits
40
_PURE_xml_cat=		textproc
41
42
.ifdef _PURE_${PORTNAME}_cat
43
CATEGORIES=		_PURE_${PORTNAME}_cat
44
.endif
45
46
.if ${PORTNAME} != pure
47
48
.if ${USE_PURE} == yes
49
LIB_DEPENDS+=	libpure.so.8:${PORTSDIR}/lang/pure
50
.else
51
. for dep in ${USE_PURE}
52
_PURE_LIBDIR=	${LOCALBASE}/lib/pure
53
_PURE_PORTDIR=	${PORTSDIR}/${_PURE_${dep}_cat}/pure-${dep}
54
.  ifdef _PURE_${dep}_cat
55
.   ifdef _PURE_${dep}_util
56
BUILD_DEPENDS+=	${_PURE_${dep}_util}:${_PURE_PORTDIR}
57
.   else
58
.    ifdef USE_PURE_BUILD
59
.     ifdef _PURE_${dep}_fn
60
BUILD_DEPENDS+=	${_PURE_LIBDIR}/${_PURE_${dep}_fn}.pure:${_PURE_PORTDIR}
61
.     else
62
BUILD_DEPENDS+=	${_PURE_LIBDIR}/${dep}.pure:${_PURE_PORTDIR}
63
.     endif
64
.    endif
65
.     ifdef _PURE_${dep}_fn
66
RUN_DEPENDS+=	${_PURE_LIBDIR}/${_PURE_${dep}_fn}.pure:${_PURE_PORTDIR}
67
.     else
68
RUN_DEPENDS+=	${_PURE_LIBDIR}/${dep}.pure:${_PURE_PORTDIR}
69
.     endif
70
.   endif
71
.  else
72
.   error pure-${dep} is not supported by "bsd.pure.mk"
73
.  endif
74
. endfor
75
.endif
76
77
.endif # PORTNAME != pure
78
79
MAKE_ARGS+=	prefix=${PREFIX} mandir=${PREFIX}/man \
80
		CC=${CC} CFLAGS="${CFLAGS}" \
81
		CXX=${CXX} CXXFLAGS="${CXXFLAGS}" \
82
		CPPFLAGS+=-I${LOCALBASE}/include \
83
		LDFLAGS+=-L${LOCALBASE}/lib
84
85
.if ${PORTNAME:Mpure-*} !="" && !defined(NO_PURE_EXAMPLES)
86
PORTEXAMPLES=	*
87
88
post-install:
89
.if !defined(NOPORTEXAMPLES)
90
	@${MKDIR} ${EXAMPLESDIR}
91
	(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
92
.endif
93
94
.endif
95
96
.endif #!defined(PURE_include)
(-)distinfo (-4 / +4 lines)
Lines 1-4 Link Here
1
SHA256 (pure/pure-0.55.tar.gz) = 36dbf1b77719a8031766b30812ac89102188d01ae9da80c2b53889f501cb58a7
1
SHA256 (pure/pure-0.58.tar.gz) = b1f65c8fd6e41b7db60a11314d0ac996150b5593a84e930cd9c8bb6ad17e1ea0
2
SIZE (pure/pure-0.55.tar.gz) = 1147787
2
SIZE (pure/pure-0.58.tar.gz) = 1465322
3
SHA256 (pure/pure-docs-0.55.tar.gz) = 2cd0045c8fd126cf41cb847f2842e11b7c0480c8cb8d5ea33470cf7edcfd1db9
3
SHA256 (pure/pure-docs-0.58.tar.gz) = 4374949a3d78db6363d110322dc34c1f97c8c81688a126ccdba4b9b638953b85
4
SIZE (pure/pure-docs-0.55.tar.gz) = 3540249
4
SIZE (pure/pure-docs-0.58.tar.gz) = 4816134
(-)pkg-descr (-1 / +1 lines)
Lines 5-8 Link Here
5
interface. The interpreter uses LLVM as a backend to JIT-compile Pure
5
interface. The interpreter uses LLVM as a backend to JIT-compile Pure
6
programs to fast native code.
6
programs to fast native code.
7
7
8
WWW:	https://code.google.com/p/pure-lang/
8
WWW: http://purelang.bitbucket.org/
(-)pkg-plist (-4 / +17 lines)
Lines 6-11 Link Here
6
lib/pure/array.pure
6
lib/pure/array.pure
7
lib/pure/avltrees.pure
7
lib/pure/avltrees.pure
8
lib/pure/dict.pure
8
lib/pure/dict.pure
9
lib/pure/docs
10
lib/pure/enum.pure
9
lib/pure/faustui.pure
11
lib/pure/faustui.pure
10
lib/pure/getopt.pure
12
lib/pure/getopt.pure
11
lib/pure/heap.pure
13
lib/pure/heap.pure
Lines 18-24 Link Here
18
lib/pure/pure_main.c
20
lib/pure/pure_main.c
19
lib/pure/pure_main.o
21
lib/pure/pure_main.o
20
lib/pure/quasiquote.pure
22
lib/pure/quasiquote.pure
21
lib/pure/quasiquote1.pure
22
lib/pure/records.pure
23
lib/pure/records.pure
23
lib/pure/regex.pure
24
lib/pure/regex.pure
24
lib/pure/set.pure
25
lib/pure/set.pure
Lines 25-32 Link Here
25
lib/pure/strings.pure
26
lib/pure/strings.pure
26
lib/pure/system.pure
27
lib/pure/system.pure
27
libdata/pkgconfig/pure.pc
28
libdata/pkgconfig/pure.pc
28
%%ELC%%%%EMACS_SITE_LISPDIR%%/pure-mode.el
29
man/man1/pure.1.gz
29
%%ELC%%%%EMACS_SITE_LISPDIR%%/pure-mode.elc
30
%%EMACS%%share/emacs/site-lisp/pure-mode.el
30
%%DOCS%%lib/pure/docs
31
%%EMACS%%share/emacs/site-lisp/pure-mode.elc
32
%%ETC%%%%DATADIR%%/etc/pure-highlight.lang
33
%%ETC%%%%DATADIR%%/etc/pure-mode.el
34
%%EMACS%%%%ETC%%%%DATADIR%%/etc/pure-mode.elc
35
%%ETC%%%%DATADIR%%/etc/pure.lang
36
%%ETC%%%%DATADIR%%/etc/pure.nanorc
37
%%ETC%%%%DATADIR%%/etc/pure.plist
38
%%ETC%%%%DATADIR%%/etc/pure.py
39
%%ETC%%%%DATADIR%%/etc/pure.ssh
40
%%ETC%%%%DATADIR%%/etc/pure.vim
41
%%ETC%%%%DATADIR%%/etc/pure.xml
42
%%ETC%%@dirrm %%DATADIR%%/etc
43
%%ETC%%@dirrm %%DATADIR%%
31
@dirrm lib/pure
44
@dirrm lib/pure
32
@dirrm include/pure
45
@dirrm include/pure

Return to bug 179390