[Bug 217771] lang/beignet: update to 1.3.1

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Mar 14 04:45:16 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=217771

--- Comment #7 from Jan Beich (mail not working) <jbeich at FreeBSD.org> ---
Comment on attachment 180799
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=180799
update lang/beignet to 1.3.1

OpenCL 2.0 requires LLVM >= 3.9 and libdrm >= 2.4.67 (i.e. ports r431463 and
maybe[1] drm-next). I forgot to adjust at least BUILD_DEPENDS in my version.

[1] Whether drm_intel_bo_set_softpin_offset() works on FreeBSD 10.3 or 11.0 or
causes a crash similar to bug 217635 is unknown.
    https://cgit.freedesktop.org/mesa/drm/commit/?id=8b4d57e7  

> +OPTIONS_DEFINE=	FP64 TEST
> +FP64_DESC=	Double precision (experimental)

I don't like this style of grouping as it doesn't scale. If you have many
options having to jump between descriptions and definitions when working on a
port with many can get tiring, see multimedia/ffmpeg.

> +.if ${ARCH} == amd64
> +PLIST_SUB+=	OCL20=""
> +.else # ${ARCH} == i386
> +PLIST_SUB+=	OCL20="@comment "
> +.endif

Conditionals break (mostly) declarative style of makefiles. Try the following
instead

  PLIST_SUB+=   OCL20="${ARCH:Namd64:C/.+/@comment /}"

> +	-@(cd ${TEST_WRKSRC}.utests; . ./setenv.sh; \

Why do you need to introduce typos?

  $ make test WITH=TEST
  ===>  Testing for beignet-1.3.1
  cd: /usr/ports/lang/beignet/work/Beignet-1.3.1-Source.utests: No such file or
directory
  .: cannot open ./setenv.sh: No such file or directory
  *** Error code 2 (ignored)

  $ make test WITH=TEST
  ===>  Testing for beignet-1.3.1
  /bin/sh: ./flataddress_space: not found

> +-  src_data = (uint32_t*)memalign(base_address_alignment, buffer_sz);
> +-  if(!src_data) {
> ++  if(posix_memalign((void**)&src_data, base_address_alignment, buffer_sz)) {

posix_memalign has greater minimal alignment than memalign or aligned_alloc in
jemalloc and glibc. And neither memalign nor posix_memalign are available on
Windows. Or do you have something against using C11/C++17 features without
passing corresponding -std= ?

https://github.com/jemalloc/jemalloc/blob/4.5.0/src/jemalloc.c#L2038
https://github.com/jemalloc/jemalloc/blob/4.5.0/src/jemalloc.c#L1787
https://sourceware.org/git/?p=glibc.git;a=blob;f=malloc/malloc.c;hb=glibc-2.25#l3071
https://sourceware.org/git/?p=glibc.git;a=blob;f=malloc/malloc.c;hb=glibc-2.25#l3136

> @@ -17,7 +17,7 @@
>  
>   # XLib
>   Find_Package(X11)
> -@@ -219,7 +218,7 @@ IF(OCLIcd_FOUND)
> +@@ -217,7 +216,7 @@ IF(OCLIcd_FOUND)
>       "intel-beignet.icd.in"
>       "${ICD_FILE_NAME}"
>     )

Try to avoid excessive noise (e.g. line offsets, timestamps) in patches.

> @@ -29,6 +29,8 @@
>  lib/beignet/include/ocl_vload_20.h
>  lib/beignet/include/ocl_work_group.h
>  lib/beignet/include/ocl_workitem.h
> +%%OCL20%%lib/beignet/beignet_20.bc
> +%%OCL20%%lib/beignet/beignet_20.pch
>  lib/beignet/libcl.so
>  lib/beignet/libgbe.so
>  lib/beignet/libgbeinterp.so

Keep sorting consistent with a version where %% macros are expanded.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-x11 mailing list