Index: Makefile
===================================================================
--- Makefile	(revision 423302)
+++ Makefile	(working copy)
@@ -2,16 +2,11 @@
 # $FreeBSD$
 
 PORTNAME=	opencl
-PORTVERSION=	2.0
+PORTVERSION=	2.1
 CATEGORIES=	devel
-MASTER_SITES=	http://www.khronos.org/registry/cl/api/${PORTVERSION}/
-DISTFILES=	opencl.h cl_platform.h cl.h cl_ext.h cl_dx9_media_sharing.h \
-		cl_d3d10.h cl_d3d11.h  cl_gl.h cl_gl_ext.h cl.hpp
-DIST_SUBDIR=	${PORTNAME}
-EXTRACT_ONLY=
 
 MAINTAINER=	ohartman@zedat.fu-berlin.de
-COMMENT=	Open Computing Language (OpenCL) specifications V2.0 (header files)
+COMMENT=	Open Computing Language (OpenCL) specifications V2.1 (header files)
 
 LICENSE=	unknown
 LICENSE_NAME=	BSD-esque license agreement
@@ -18,24 +13,33 @@
 LICENSE_TEXT=	License is included in each of the header files of this port
 LICENSE_PERMS=	dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
 
+USE_GITHUB=	yes
+GH_ACCOUNT=	KhronosGroup
+GH_PROJECT=	OpenCL-Headers:DEFAULT OpenCL-CLHPP:clhpp
+GH_TAGNAME=	${PORTNAME}${PORTVERSION:S/.//}
+
+USES=		python:build
+
 CONFLICTS=	opencl-1.[0-1]
 
-NO_BUILD=	yes
+INSTALLFILES=	opencl.h cl_platform.h cl.h cl_ext.h cl_dx9_media_sharing.h \
+		cl_d3d10.h cl_d3d11.h cl_gl.h cl_gl_ext.h
 
-.for f in ${DISTFILES}
+.for f in ${INSTALLFILES}
 PLIST_FILES+=include/CL/$f
 .endfor
 
-pre-patch:
-		@${MKDIR} ${WRKSRC}
-.for f in ${DISTFILES}
-		${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/$f ${WRKSRC}/
-.endfor
+PLIST_FILES+=	include/CL/cl.hpp include/CL/cl2.hpp
 
+do-build:
+	@(cd ${WRKSRC_clhpp} ; ${PYTHON_CMD} gen_cl_hpp.py)
+
 do-install:
 		@${MKDIR} ${STAGEDIR}${PREFIX}/include/CL
-.for f in ${DISTFILES}
+.for f in ${INSTALLFILES}
 		${INSTALL_DATA} ${WRKSRC}/$f ${STAGEDIR}${PREFIX}/include/CL
 .endfor
+		${INSTALL_DATA} ${WRKSRC_clhpp}/cl.hpp ${STAGEDIR}${PREFIX}/include/CL/cl.hpp
+		${INSTALL_DATA} ${WRKSRC_clhpp}/input_cl2.hpp ${STAGEDIR}${PREFIX}/include/CL/cl2.hpp
 
 .include <bsd.port.mk>
Index: distinfo
===================================================================
--- distinfo	(revision 423302)
+++ distinfo	(working copy)
@@ -1,20 +1,5 @@
-SHA256 (opencl/opencl.h) = fceb7e76d81159caab6308a05ff05d18fbd84718eff4263473ecd148c458987c
-SIZE (opencl/opencl.h) = 1754
-SHA256 (opencl/cl_platform.h) = 042877b8091bfeeb489018505ce36c37cd3295e691856461b1c0a8fbb6b2cc21
-SIZE (opencl/cl_platform.h) = 42192
-SHA256 (opencl/cl.h) = 5c39e93d4492cd3005ae806a91b7dd3cad28f4e69036208be21e37f8a4395717
-SIZE (opencl/cl.h) = 70803
-SHA256 (opencl/cl_ext.h) = be1ff04c63b678383828ab1e69ecf3bec54eec4cf4ae33e210b4a16eff47d809
-SIZE (opencl/cl_ext.h) = 14002
-SHA256 (opencl/cl_dx9_media_sharing.h) = 41968538b82523ef8fb642a1a4da20a6262ce0448f71541db080f8ccc03971b6
-SIZE (opencl/cl_dx9_media_sharing.h) = 5181
-SHA256 (opencl/cl_d3d10.h) = 14b00ef68a2d7f471c7ef5b4576bc103888da70fc525b263b49ff7fff150e188
-SIZE (opencl/cl_d3d10.h) = 4883
-SHA256 (opencl/cl_d3d11.h) = 707709a73b6b43b96c55e813efb2d655efcc82eb103da4b8aea191231df7e1fd
-SIZE (opencl/cl_d3d11.h) = 4877
-SHA256 (opencl/cl_gl.h) = 40375d991f4e847c94ad56c6c14400e3e7d72620117b49636518a96d57f30647
-SIZE (opencl/cl_gl.h) = 7346
-SHA256 (opencl/cl_gl_ext.h) = dccb3b45e53bfe0219bb48e6dbe9591bbe6a090a8b0d93a3b8580f526abc4616
-SIZE (opencl/cl_gl_ext.h) = 2630
-SHA256 (opencl/cl.hpp) = eeacf0fefc51d618dda67d52e2bbff7dc9a67e90bc38166b3fad26d44800013a
-SIZE (opencl/cl.hpp) = 915453
+TIMESTAMP = 1475618354
+SHA256 (KhronosGroup-OpenCL-Headers-2.1-opencl21_GH0.tar.gz) = 29f076b8d89a2514966ebf172e56bcc06c1a583aabdc1e9012c05f0976b3d3ce
+SIZE (KhronosGroup-OpenCL-Headers-2.1-opencl21_GH0.tar.gz) = 26094
+SHA256 (KhronosGroup-OpenCL-CLHPP-opencl21_GH0.tar.gz) = 6d0f1e336cf2e3ef479d01fe4d2eacb031a5903d48d94eb7c1c8a67fd0d30d46
+SIZE (KhronosGroup-OpenCL-CLHPP-opencl21_GH0.tar.gz) = 104788
Index: pkg-descr
===================================================================
--- pkg-descr	(revision 423302)
+++ pkg-descr	(working copy)
@@ -3,4 +3,4 @@
 other processors, giving software developers portable and efficient
 access to the power of these heterogeneous processing platforms.
 
-This is OpenCL 2.0
+This is OpenCL 2.1