Index: Mk/Uses/pure.mk
===================================================================
--- Mk/Uses/pure.mk	(revision 331216)
+++ Mk/Uses/pure.mk	(working copy)
@@ -19,12 +19,16 @@
 _pure_ARGS=		${pure_ARGS:C/\:/ /g}
 
 # Sanity check
-.if defined(pure_ARGS) && ${_pure_ARGS} != ffi
-IGNORE=Incorrect 'USES+= pure:${pure_ARGS}' usage: argument [${pure_ARGS}] is not recognized
+.if defined(pure_ARGS)
+.  for arg in ${_pure_ARGS}
+.    if empty(_valid_ARGS:M${arg})
+IGNORE= Incorrect 'USES+= pure:${pure_ARGS}' usage: argument [${arg}] is not recognized
+.    endif
+.  endfor
 .endif
 
 LIB_DEPENDS+=	libpure.so:${PORTSDIR}/lang/pure
-.include "${PORTSDIR}/Mk/Uses/gmake.mk"
+USES=	gmake
 
 .if ${_pure_ARGS:Mffi}
 RUN_DEPENDS+=	${LOCALBASE}/lib/pure/ffi.pure:${PORTSDIR}/devel/pure-ffi
@@ -31,8 +35,8 @@
 .endif
 
 MAKE_ARGS+=	prefix=${PREFIX} mandir=${PREFIX}/man \
-		CC="${CC}" CFLAGS="${CFLAGS}" \
-		CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \
+		CC=${CC} CFLAGS="${CFLAGS}" \
+		CXX=${CXX} CXXFLAGS="${CXXFLAGS}" \
 		CPPFLAGS+=-I${LOCALBASE}/include \
 		LDFLAGS+=-L${LOCALBASE}/lib
 
Index: audio/pure-audio/Makefile
===================================================================
--- audio/pure-audio/Makefile	(revision 331277)
+++ audio/pure-audio/Makefile	(working copy)
@@ -3,24 +3,45 @@
 
 PORTNAME=	pure-audio
 PORTVERSION=	0.5
+PORTREVISION=	1
 CATEGORIES=	audio
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
-COMMENT=	A digital audio interface for the Pure language
+COMMENT=	Digital audio interface for the Pure language
 
+LICENSE=	BSD
+
 LIB_DEPENDS=	portaudio.2:${PORTSDIR}/audio/portaudio2 \
 		samplerate:${PORTSDIR}/audio/libsamplerate \
 		sndfile:${PORTSDIR}/audio/libsndfile \
 		fftw3:${PORTSDIR}/math/fftw3
 
-USE_PURE=	yes
+USES=		pure
 NO_STAGE=	yes
 
 post-patch:
-	${REINPLACE_CMD} \
+	@${REINPLACE_CMD} \
 		-e "s|-lportaudio|-I${LOCALBASE}/include/portaudio2 -L${LOCALBASE}/lib/portaudio2 -lportaudio|" \
 		-e "s|portaudio.h|portaudio2/portaudio.h|g" \
-	   	${WRKSRC}/Makefile
+			${WRKSRC}/Makefile
 
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: audio/pure-audio/pkg-descr
===================================================================
--- audio/pure-audio/pkg-descr	(revision 331277)
+++ audio/pure-audio/pkg-descr	(working copy)
@@ -4,4 +4,4 @@
 to realtime scheduling on systems which have a pthreads library with the
 POSIX realtime threads extension.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-audio.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-audio.html
Index: databases/pure-sql3/Makefile
===================================================================
--- databases/pure-sql3/Makefile	(revision 331282)
+++ databases/pure-sql3/Makefile	(working copy)
@@ -3,19 +3,40 @@
 
 PORTNAME=	pure-sql3
 PORTVERSION=	0.4
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	databases
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Pure language binding to the SQLite3 library
 
+LICENSE=	BSD
+
 LIB_DEPENDS=	sqlite3:${PORTSDIR}/databases/sqlite3
 
-USE_PURE=	yes
+USES=		pure
 
 PLIST_FILES=	lib/pure/sql3.pure \
 		lib/pure/sql3util.so
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: databases/pure-sql3/pkg-descr
===================================================================
--- databases/pure-sql3/pkg-descr	(revision 331282)
+++ databases/pure-sql3/pkg-descr	(working copy)
@@ -3,4 +3,4 @@
 developer access to all of Sqlite3's features in a way that is convenient
 for Pure programmers.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-sql3.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-sql3.html
Index: devel/pure-ffi/Makefile
===================================================================
--- devel/pure-ffi/Makefile	(revision 331282)
+++ devel/pure-ffi/Makefile	(working copy)
@@ -2,20 +2,41 @@
 # $FreeBSD$
 
 PORTNAME=	pure-ffi
-PORTVERSION=	0.12
-PORTREVISION=	1
+PORTVERSION=	0.13
 CATEGORIES=	devel
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Pure language interface to libffi
 
+LICENSE=	GPLv3 LGPL3
+LICENSE_COMB=	dual
+
 LIB_DEPENDS+=	ffi:${PORTSDIR}/devel/libffi
 
-USE_PURE=	yes
+USES=		pure
 
 PLIST_FILES=	lib/pure/ffi.pure \
 		lib/pure/ffi.so
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: devel/pure-ffi/distinfo
===================================================================
--- devel/pure-ffi/distinfo	(revision 331282)
+++ devel/pure-ffi/distinfo	(working copy)
@@ -1,2 +1,2 @@
-SHA256 (pure/pure-ffi-0.12.tar.gz) = 7aba78d96cad5ce6277b9857cbe9a09d6d572cb3fa5a48a53e4a8d3e23eee32d
-SIZE (pure/pure-ffi-0.12.tar.gz) = 39868
+SHA256 (pure/pure-ffi-0.13.tar.gz) = 1c605ee261a6a8fe60684e764ba1f12dfd2e1e09290190411314b35a71a69636
+SIZE (pure/pure-ffi-0.13.tar.gz) = 39857
Index: devel/pure-ffi/pkg-descr
===================================================================
--- devel/pure-ffi/pkg-descr	(revision 331282)
+++ devel/pure-ffi/pkg-descr	(working copy)
@@ -3,4 +3,4 @@
 built-in C interface in that it also handles C structs and makes Pure
 functions callable from C without writing a single line of C code.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-ffi.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-ffi.html
Index: devel/pure-gen/Makefile
===================================================================
--- devel/pure-gen/Makefile	(revision 331282)
+++ devel/pure-gen/Makefile	(working copy)
@@ -2,21 +2,47 @@
 # $FreeBSD$
 
 PORTNAME=	pure-gen
-PORTVERSION=	0.15
+PORTVERSION=	0.16
 CATEGORIES=	devel
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
-COMMENT=	A C interface generator for the Pure language
+COMMENT=	C interface generator for the Pure language
 
+LICENSE=	BSD
+
 BUILD_DEPENDS=	ghc:${PORTSDIR}/lang/ghc \
 		hs-language-c>=0.3.2:${PORTSDIR}/devel/hs-language-c
 
-USE_PURE=	yes
+NO_STAGE=	yes
 
-MAN1=		pure-gen.1
+CC=		gcc
 
-CC= 		gcc
+USES=		pure:ffi
+USE_GCC=	4.6+
 
-NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+MAN1=		${PORTNAME}.1
+
+PLIST_FILES=	bin/${PORTNAME} \
+		lib/${PORTNAME}/dump-ast
+PLIST_DIRS=	lib/${PORTNAME}
+
+PORTDOCS=	README README.dump-ast
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: devel/pure-gen/distinfo
===================================================================
--- devel/pure-gen/distinfo	(revision 331282)
+++ devel/pure-gen/distinfo	(working copy)
@@ -1,2 +1,2 @@
-SHA256 (pure/pure-gen-0.15.tar.gz) = e51921028f09710564b973d4ecd279f8654a8943c5aed8ddde0355bbb8a67bc6
-SIZE (pure/pure-gen-0.15.tar.gz) = 57590
+SHA256 (pure/pure-gen-0.16.tar.gz) = 077c2db73b0894f45b68a8d1d98b493bc94c63d85de04f918d66771732b3aa8c
+SIZE (pure/pure-gen-0.16.tar.gz) = 69391
Index: devel/pure-gen/pkg-descr
===================================================================
--- devel/pure-gen/pkg-descr	(revision 331282)
+++ devel/pure-gen/pkg-descr	(working copy)
@@ -7,4 +7,4 @@
 code which can be called via C. Interfaces to C++ can be made using SWIG's
 new C language module which can wrap arbitrary C++ libraries in C.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-gen.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-gen.html
Index: devel/pure-gen/pkg-plist
===================================================================
--- devel/pure-gen/pkg-plist	(revision 331282)
+++ devel/pure-gen/pkg-plist	(working copy)
@@ -1,3 +0,0 @@
-bin/pure-gen
-lib/pure-gen/dump-ast
-@dirrm lib/pure-gen
Index: devel/pure-readline/Makefile
===================================================================
--- devel/pure-readline/Makefile	(revision 331282)
+++ devel/pure-readline/Makefile	(working copy)
@@ -2,18 +2,32 @@
 # $FreeBSD$
 
 PORTNAME=	pure-readline
-PORTVERSION=	0.1
+PORTVERSION=	0.2
 CATEGORIES=	devel
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
-COMMENT=	A readline interface for the Pure language
+COMMENT=	Readline interface for the Pure language
 
-USE_PURE=	yes
-NO_PURE_EXAMPLES=	yes
+LICENSE=	BSD GPLv3
+LICENSE_COMB=	dual
 
+USES=		pure
+
 PLIST_FILES=	lib/pure/readline.pure \
 		lib/pure/readline.so
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
 .include <bsd.port.mk>
Index: devel/pure-readline/distinfo
===================================================================
--- devel/pure-readline/distinfo	(revision 331282)
+++ devel/pure-readline/distinfo	(working copy)
@@ -1,2 +1,2 @@
-SHA256 (pure/pure-readline-0.1.tar.gz) = a8721d58d2d34c803967923a2ebd1b8f612abfe8d4ad75d6796bee5bbc3c45a2
-SIZE (pure/pure-readline-0.1.tar.gz) = 16358
+SHA256 (pure/pure-readline-0.2.tar.gz) = 543686305921de4a6c295c8320be0c8fb273ae5219dbda9e17a85c27d9cd1baf
+SIZE (pure/pure-readline-0.2.tar.gz) = 19015
Index: devel/pure-readline/pkg-descr
===================================================================
--- devel/pure-readline/pkg-descr	(revision 331282)
+++ devel/pure-readline/pkg-descr	(working copy)
@@ -2,4 +2,4 @@
 Pure expressions, and the C++ Standard Template Library algorithms that act
 on them.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-readline.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-readline.html
Index: graphics/pure-gl/Makefile
===================================================================
--- graphics/pure-gl/Makefile	(revision 331282)
+++ graphics/pure-gl/Makefile	(working copy)
@@ -3,19 +3,38 @@
 
 PORTNAME=	pure-gl
 PORTVERSION=	0.8
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	graphics
+MASTER_SITES	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Pure language interface to OpenGL
 
-RUN_DEPENDS+=	${LOCALBASE}/lib/pure/ffi.pure:${PORTSDIR}/devel/pure-ffi
+LICENSE=	BSD
 
-USE_PURE=	yes
-USE_GL=	glut
+USES=		pure:ffi
+USE_GL=		glut
 
 MAKE_ARGS+=	LinkGL="-lglut -lGLU -lGL"
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: graphics/pure-gl/pkg-descr
===================================================================
--- graphics/pure-gl/pkg-descr	(revision 331282)
+++ graphics/pure-gl/pkg-descr	(working copy)
@@ -3,4 +3,4 @@
 Extensions are loaded on demand, functions will throw an exception if they
 are not available in your OpenGL implementation.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-gl.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-gl.html
Index: lang/pure/Makefile
===================================================================
--- lang/pure/Makefile	(revision 331216)
+++ lang/pure/Makefile	(working copy)
@@ -2,10 +2,11 @@
 # $FreeBSD$
 
 PORTNAME=	pure
-PORTVERSION=	0.55
+PORTVERSION=	0.58
 CATEGORIES=	lang
-DISTFILES=	${PORTNAME}-${PORTVERSION}.tar.gz \
-		${PORTNAME}-docs-${PORTVERSION}.tar.gz
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DISTFILES=	${PORTNAME}-${PORTVERSION}.tar.gz ${PORTNAME}-docs-${PORTVERSION}.tar.gz
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Modern-style functional programming language
@@ -15,34 +16,49 @@
 
 LIB_DEPENDS=	libgmp.so:${PORTSDIR}/math/gmp \
 		libmpfr.so:${PORTSDIR}/math/mpfr
-BUILD_DEPENDS=	llvm31>=3.1:${PORTSDIR}/devel/llvm31
-RUN_DEPENDS=	llvm31>=3.1:${PORTSDIR}/devel/llvm31
+BUILD_DEPENDS=	llvm>=3.2:${PORTSDIR}/devel/llvm
+RUN_DEPENDS:=	${BUILD_DEPENDS}
 
-USES=		iconv pkgconfig
+SUB_FILES=	pkg-message
+
+USES=		gmake iconv pathfix pkgconfig
 USE_AUTOTOOLS=	libltdl
 GNU_CONFIGURE=	yes
-USE_GNOME=	gnomehack
+CONFIGURE_ARGS=	--with-libgmp-prefix=${LOCALBASE} --enable-release
 USE_LDCONFIG=	yes
-USE_PURE=	yes
 
-CONFIGURE_ARGS=	--with-libgmp-prefix=${LOCALBASE} --enable-release
+MAKE_ARGS+=	prefix=${PREFIX} mandir=${PREFIX}/man \
+		CC=${CC} CFLAGS="${CFLAGS}" \
+		CXX=${CXX} CXXFLAGS="${CXXFLAGS}" \
+		CPPFLAGS+=-I${LOCALBASE}/include \
+		LDFLAGS+=-L${LOCALBASE}/lib
 
-OPTIONS_DEFINE=	EMACS
+PORTDOCS=	*
+PORTEXAMPLES=	*
+
+OPTIONS_DEFINE=	DOCS EMACS ETC EXAMPLES
+
 EMACS_DESC=	Compile pure-mode.el with Emacs
+ETC_DESC=	Copy Pure syntax highlighting to ${DATADIR}/etc
 
-MAN1=		pure.1
-SUB_FILES=	pkg-message
+OPTIONS_DEFAULT=	ETC
 
-NO_STAGE=	yes
+OPTIONS_SUB=	yes
+
+EMACS_CONFIGURE_ENABLE=		--with-elisp
+EMACS_CONFIGURE_DISABLE=	--without-elisp
+
 .include <bsd.port.options.mk>
 
 .if ${PORT_OPTIONS:MEMACS}
 USE_EMACS=	yes
 MAKE_ARGS+=	emacs_prefix=${PREFIX}
-PLIST_SUB+=	ELC=""
+.endif
+
+.if ${OSVERSION} < 900014
+SUB_LIST+=	NOCLANG=""
 .else
-CONFIGURE_ARGS+=	--without-elisp
-PLIST_SUB+=	ELC="@comment "
+SUB_LIST+=	NOCLANG="@comment "
 .endif
 
 # automatically disable readline support if editline support is available
@@ -54,48 +70,21 @@
 CONFIGURE_TARGET=	x86_64-portbld-freebsd
 .endif
 
-PORTDATA=	*
-PORTEXAMPLES=	*
-PORTDOCS=	*
-
-.if !defined(NOPORTDATA)
-SUB_LIST+=	ETC=""
-.else
-SUB_LIST+=	ETC="@comment "
+post-install:
+.if ${PORT_OPTIONS:METC}
+	@${MKDIR} ${STAGEDIR}${DATADIR}/etc/
+	@(cd ${WRKSRC} && ${RM} -f etc/*.in && ${COPYTREE_SHARE} etc/ ${STAGEDIR}${DATADIR})
 .endif
 
-.if !defined(NOPORTDOCS)
-PLIST_SUB+=	DOCS=""
-.else
-PLIST_SUB+=	DOCS="@comment "
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	@(cd ${WRKDIR}/${PORTNAME}-docs-${PORTVERSION} && ${RM} -f Makefile && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR})
+	${LN} -sf ${DOCSDIR} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/docs
 .endif
 
-.if ${OSVERSION} < 900014
-SUB_LIST+=	NOCLANG=""
-.else
-SUB_LIST+=	NOCLANG="@comment "
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
 .endif
 
-.include "${.CURDIR}/bsd.pure.mk"
-.include <bsd.port.pre.mk>
-
-post-install:
-.if !defined(NOPORTDATA)
-	@${MKDIR} ${DATADIR}/etc
-	(cd ${WRKSRC} && ${RM} -f etc/*.in && ${COPYTREE_SHARE} etc ${DATADIR})
-.endif
-.if !defined(NOPORTEXAMPLES)
-	@${MKDIR} ${EXAMPLESDIR}
-	(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
-.endif
-.if !defined(NOPORTDOCS)
-	@${MKDIR} ${DOCSDIR}
-	(cd ${WRKDIR}/${PORTNAME}-docs-${PORTVERSION} && \
-		${RM} -f Makefile && ${COPYTREE_SHARE} . ${DOCSDIR})
-	${LN} -fs ${DOCSDIR} ${PREFIX}/lib/${PORTNAME}/docs
-.endif
-	@${ECHO_MSG}
-	@${CAT} ${PKGMESSAGE}
-	@${ECHO_MSG}
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Index: lang/pure/distinfo
===================================================================
--- lang/pure/distinfo	(revision 331216)
+++ lang/pure/distinfo	(working copy)
@@ -1,4 +1,4 @@
-SHA256 (pure/pure-0.55.tar.gz) = 36dbf1b77719a8031766b30812ac89102188d01ae9da80c2b53889f501cb58a7
-SIZE (pure/pure-0.55.tar.gz) = 1147787
-SHA256 (pure/pure-docs-0.55.tar.gz) = 2cd0045c8fd126cf41cb847f2842e11b7c0480c8cb8d5ea33470cf7edcfd1db9
-SIZE (pure/pure-docs-0.55.tar.gz) = 3540249
+SHA256 (pure/pure-0.58.tar.gz) = b1f65c8fd6e41b7db60a11314d0ac996150b5593a84e930cd9c8bb6ad17e1ea0
+SIZE (pure/pure-0.58.tar.gz) = 1465322
+SHA256 (pure/pure-docs-0.58.tar.gz) = 4374949a3d78db6363d110322dc34c1f97c8c81688a126ccdba4b9b638953b85
+SIZE (pure/pure-docs-0.58.tar.gz) = 4816134
Index: lang/pure/pkg-descr
===================================================================
--- lang/pure/pkg-descr	(revision 331216)
+++ lang/pure/pkg-descr	(working copy)
@@ -5,4 +5,4 @@
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 
-WWW:	https://code.google.com/p/pure-lang/
+WWW: http://purelang.bitbucket.org/
Index: lang/pure/pkg-plist
===================================================================
--- lang/pure/pkg-plist	(revision 331216)
+++ lang/pure/pkg-plist	(working copy)
@@ -6,6 +6,8 @@
 lib/pure/array.pure
 lib/pure/avltrees.pure
 lib/pure/dict.pure
+lib/pure/docs
+lib/pure/enum.pure
 lib/pure/faustui.pure
 lib/pure/getopt.pure
 lib/pure/heap.pure
@@ -18,7 +20,6 @@
 lib/pure/pure_main.c
 lib/pure/pure_main.o
 lib/pure/quasiquote.pure
-lib/pure/quasiquote1.pure
 lib/pure/records.pure
 lib/pure/regex.pure
 lib/pure/set.pure
@@ -25,8 +26,20 @@
 lib/pure/strings.pure
 lib/pure/system.pure
 libdata/pkgconfig/pure.pc
-%%ELC%%%%EMACS_SITE_LISPDIR%%/pure-mode.el
-%%ELC%%%%EMACS_SITE_LISPDIR%%/pure-mode.elc
-%%DOCS%%lib/pure/docs
+man/man1/pure.1.gz
+%%EMACS%%share/emacs/site-lisp/pure-mode.el
+%%EMACS%%share/emacs/site-lisp/pure-mode.elc
+%%ETC%%%%DATADIR%%/etc/pure-highlight.lang
+%%ETC%%%%DATADIR%%/etc/pure-mode.el
+%%EMACS%%%%ETC%%%%DATADIR%%/etc/pure-mode.elc
+%%ETC%%%%DATADIR%%/etc/pure.lang
+%%ETC%%%%DATADIR%%/etc/pure.nanorc
+%%ETC%%%%DATADIR%%/etc/pure.plist
+%%ETC%%%%DATADIR%%/etc/pure.py
+%%ETC%%%%DATADIR%%/etc/pure.ssh
+%%ETC%%%%DATADIR%%/etc/pure.vim
+%%ETC%%%%DATADIR%%/etc/pure.xml
+%%ETC%%@dirrm %%DATADIR%%/etc
+%%ETC%%@dirrm %%DATADIR%%
 @dirrm lib/pure
 @dirrm include/pure
Index: math/pure-mpfr/Makefile
===================================================================
--- math/pure-mpfr/Makefile	(revision 331282)
+++ math/pure-mpfr/Makefile	(working copy)
@@ -3,19 +3,41 @@
 
 PORTNAME=	pure-mpfr
 PORTVERSION=	0.4
+PORTREVISION=	1
 CATEGORIES=	math
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Multiprecision floats for Pure
 
-USE_PURE=	yes
-USES=		pkgconfig
+LICENSE=	GPLv3 LGPL3
+LICENSE_COMB=	dual
 
+MAKE_ARGS+=	libdir="${PREFIX}/lib"
+
+USES=		pkgconfig pure
+
 PLIST_FILES=	lib/pure/mpfr.pure \
 		lib/pure/mpfr.so
 
-MAKE_ARGS+=	libdir="${PREFIX}/lib"
+NO_STAGE=	yes
 
-NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: math/pure-mpfr/pkg-descr
===================================================================
--- math/pure-mpfr/pkg-descr	(revision 331282)
+++ math/pure-mpfr/pkg-descr	(working copy)
@@ -2,4 +2,4 @@
 mpfr numbers or values) available in Pure, so that they work with the other
 types of Pure numbers in an almost seamless fashion.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-mpfr.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-mpfr.html
Index: math/pure-rational/Makefile
===================================================================
--- math/pure-rational/Makefile	(revision 331282)
+++ math/pure-rational/Makefile	(working copy)
@@ -5,6 +5,8 @@
 PORTVERSION=	0.1
 PORTREVISION=	1
 CATEGORIES=	math
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Rational number library for the Pure language
@@ -11,12 +13,21 @@
 
 LICENSE=	GPLv3
 
-USE_PURE=	yes
-NO_PURE_EXAMPLES=	yes
+USES=		pure
 
 PLIST_FILES=	lib/pure/rational.pure \
 		lib/pure/rat_interval.pure
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
 .include <bsd.port.mk>
Index: math/pure-rational/pkg-descr
===================================================================
--- math/pure-rational/pkg-descr	(revision 331282)
+++ math/pure-rational/pkg-descr	(working copy)
@@ -1,4 +1,4 @@
 pure-rational provides additional operations on the rational number type
 provided by the math.pure module in the standard library.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-rational.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-rational.html
Index: net/pure-sockets/Makefile
===================================================================
--- net/pure-sockets/Makefile	(revision 331282)
+++ net/pure-sockets/Makefile	(working copy)
@@ -3,16 +3,39 @@
 
 PORTNAME=	pure-sockets
 PORTVERSION=	0.6
+PORTREVISION=	1
 CATEGORIES=	net
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Pure language interface to the Berkeley socket functions
 
-USE_PURE=	yes
+LICENSE=	GPLv3 LGPL3
+LICENSE_COMB=	dual
 
+USES=		pure
+
 PLIST_FILES=	lib/pure/sockets.pure \
 		lib/pure/sockets.so
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: net/pure-sockets/pkg-descr
===================================================================
--- net/pure-sockets/pkg-descr	(revision 331282)
+++ net/pure-sockets/pkg-descr	(working copy)
@@ -3,4 +3,4 @@
 protocols and use these to transmit messages. Unix-style file sockets are
 also available if the host system supports them.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-sockets.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-sockets.html
Index: textproc/pure-csv/Makefile
===================================================================
--- textproc/pure-csv/Makefile	(revision 331282)
+++ textproc/pure-csv/Makefile	(working copy)
@@ -3,17 +3,31 @@
 
 PORTNAME=	pure-csv
 PORTVERSION=	1.5
+PORTREVISION=	1
 CATEGORIES=	textproc
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
-COMMENT=	A CSV reading and writing module for the Pure language
+COMMENT=	CSV reading and writing module for the Pure language
 
-USE_PURE=	yes
-NO_PURE_EXAMPLES=	yes
+LICENSE=	BSD
 
+USES=		pure
+
 PLIST_FILES=	lib/pure/csv.pure \
 		lib/pure/csv.so
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
 .include <bsd.port.mk>
Index: textproc/pure-csv/pkg-descr
===================================================================
--- textproc/pure-csv/pkg-descr	(revision 331282)
+++ textproc/pure-csv/pkg-descr	(working copy)
@@ -1,4 +1,4 @@
 pure-csv is a module for reading and writing Comma Separated Value (CSV)
 files from within Pure.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-csv.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-csv.html
Index: textproc/pure-xml/Makefile
===================================================================
--- textproc/pure-xml/Makefile	(revision 331282)
+++ textproc/pure-xml/Makefile	(working copy)
@@ -3,13 +3,18 @@
 
 PORTNAME=	pure-xml
 PORTVERSION=	0.6
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	textproc
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Pure language interface for libxml2 and libxslt
 
-USE_PURE=	yes
+LICENSE=	GPLv3 LGPL3
+LICENSE_COMB=	dual
+
+USES=		pure
 USE_GNOME=	libxml2 libxslt
 
 PLIST_FILES=	lib/pure/xml.pure \
@@ -16,5 +21,22 @@
 		lib/pure/xml.so
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: textproc/pure-xml/pkg-descr
===================================================================
--- textproc/pure-xml/pkg-descr	(revision 331282)
+++ textproc/pure-xml/pkg-descr	(working copy)
@@ -3,4 +3,4 @@
 libraries, and supplies all the necessary data structures and operations to
 inspect, create, modify and transform XML documents with ease.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-xml.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-xml.html
Index: x11-toolkits/pure-gtk/Makefile
===================================================================
--- x11-toolkits/pure-gtk/Makefile	(revision 331282)
+++ x11-toolkits/pure-gtk/Makefile	(working copy)
@@ -3,17 +3,39 @@
 
 PORTNAME=	pure-gtk
 PORTVERSION=	0.11
+PORTREVISION=	1
 CATEGORIES=	x11-toolkits
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
-COMMENT=	A set of Pure language bindings for GTK+
+COMMENT=	Set of Pure language bindings for GTK+
 
+LICENSE=	GPLv3 LGPL3
+LICENSE_COMB=	dual
+
 LIB_DEPENDS=	cairo:${PORTSDIR}/graphics/cairo
 
-USES=		pkgconfig
-USE_PURE=	ffi
+USES=		pkgconfig pure:ffi
 USE_GNOME=	glib20 gtk20 atk pango
 
 NO_STAGE=	yes
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: x11-toolkits/pure-gtk/pkg-descr
===================================================================
--- x11-toolkits/pure-gtk/pkg-descr	(revision 331282)
+++ x11-toolkits/pure-gtk/pkg-descr	(working copy)
@@ -2,4 +2,4 @@
 with Pure. The bindings include the gtk (+gdk), glib, atk, cairo and pango
 libraries, each in their own Pure module.
 
-WWW:	http://docs.pure-lang.googlecode.com/hg/pure-gtk.html
+WWW: http://docs.pure-lang.googlecode.com/hg/pure-gtk.html
Index: x11-toolkits/pure-tk/Makefile
===================================================================
--- x11-toolkits/pure-tk/Makefile	(revision 331285)
+++ x11-toolkits/pure-tk/Makefile	(working copy)
@@ -2,14 +2,18 @@
 # $FreeBSD$
 
 PORTNAME=	pure-tk
-PORTVERSION=	0.3
+PORTVERSION=	0.4
 CATEGORIES=	x11-toolkits
+MASTER_SITES=	https://cdn.bitbucket.org/purelang/pure-lang/downloads/
+DIST_SUBDIR=	pure
 
 MAINTAINER=	lichray@gmail.com
 COMMENT=	Basic interface between Pure and Tcl/Tk
 
-USE_PURE=	yes
-USE_TK=		yes
+LICENSE=	BSD
+
+USES=		pure
+USE_TK=		86+
 SHORT_TCL_VER=	${TCL_VER:S/8./8/}
 
 MAKE_ARGS+=	tclvers=${TCL_VER}
@@ -18,13 +22,30 @@
 		lib/pure/tk.so \
 		lib/pure/tk.pure
 
-NO_STAGE=	yes
 post-patch:
 	${REINPLACE_CMD} \
- 		-e "s|/usr/include|${LOCALBASE}/include|g" \
- 		-e "s|-ltcl\$$(tclvers)|-ltcl${SHORT_TCL_VER}|" \
- 		-e "s|-ltk\$$(tclvers)|-ltk${SHORT_TCL_VER}|" \
+		-e "s|/usr/include|${LOCALBASE}/include|g" \
+		-e "s|-ltcl\$$(tclvers)|-ltcl${SHORT_TCL_VER}|" \
+		-e "s|-ltk\$$(tclvers)|-ltk${SHORT_TCL_VER}|" \
 		${WRKSRC}/Makefile
 
-.include "${.CURDIR}/../../lang/pure/bsd.pure.mk"
+NO_STAGE=	yes
+
+PORTDOCS=	README
+
+PORTEXAMPLES=	*
+
+.include <bsd.port.options.mk>
+
+post-install:
+.if ${PORT_OPTIONS:MDOCS}
+	@${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+	@${MKDIR} ${EXAMPLESDIR}
+	@(cd ${WRKSRC}/examples/ && ${COPYTREE_SHARE} . ${EXAMPLESDIR})
+.endif
+
 .include <bsd.port.mk>
Index: x11-toolkits/pure-tk/distinfo
===================================================================
--- x11-toolkits/pure-tk/distinfo	(revision 331285)
+++ x11-toolkits/pure-tk/distinfo	(working copy)
@@ -1,2 +1,2 @@
-SHA256 (pure/pure-tk-0.3.tar.gz) = a1807441b4784b590b1fcd287d7750b66dd68f9e91bcddf710ccb3a4e9506a32
-SIZE (pure/pure-tk-0.3.tar.gz) = 31547
+SHA256 (pure/pure-tk-0.4.tar.gz) = 4d254af183974e307aaef73587e93e5f31df548a8f6824ef2db40bb5c46eede6
+SIZE (pure/pure-tk-0.4.tar.gz) = 33208
