aboutsummaryrefslogtreecommitdiff
path: root/graphics/waifu2x-ncnn-vulkan/Makefile
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2019-10-07 12:58:04 +0000
committerJan Beich <jbeich@FreeBSD.org>2019-10-07 12:58:04 +0000
commitae16cb6f1bbc23c65198eb658b849d4c63e12740 (patch)
treef999dfbae41cc7996b2e21b7447fa9752be456b7 /graphics/waifu2x-ncnn-vulkan/Makefile
parent3267f99cb5e7ce84e3684e6cb60c70c5a82c2e47 (diff)
downloadports-ae16cb6f1bbc23c65198eb658b849d4c63e12740.tar.gz
ports-ae16cb6f1bbc23c65198eb658b849d4c63e12740.zip
graphics/waifu2x-ncnn-vulkan: add new port
ncnn implementation of waifu2x converter. Runs fast on Intel / AMD / Nvidia with Vulkan API. https://github.com/nihui/waifu2x-ncnn-vulkan
Notes
Notes: svn path=/head/; revision=513943
Diffstat (limited to 'graphics/waifu2x-ncnn-vulkan/Makefile')
-rw-r--r--graphics/waifu2x-ncnn-vulkan/Makefile48
1 files changed, 48 insertions, 0 deletions
diff --git a/graphics/waifu2x-ncnn-vulkan/Makefile b/graphics/waifu2x-ncnn-vulkan/Makefile
new file mode 100644
index 000000000000..042c5faaa5aa
--- /dev/null
+++ b/graphics/waifu2x-ncnn-vulkan/Makefile
@@ -0,0 +1,48 @@
+# $FreeBSD$
+
+PORTNAME= waifu2x-ncnn-vulkan
+DISTVERSION= 20190712-5
+DISTVERSIONSUFFIX= -g1c705b3
+CATEGORIES= graphics
+
+MAINTAINER= jbeich@FreeBSD.org
+COMMENT= Scale and denoise images using convolutional neural networks
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= glslangValidator:devel/glslang \
+ ${LOCALBASE}/include/vulkan/vulkan.h:devel/vulkan-headers \
+ ${LOCALBASE}/lib/libvulkan.so:graphics/vulkan-loader \
+ ${LOCALBASE}/lib/libncnn.a:science/ncnn
+
+USES= cmake compiler:${OPENMP}c++11-lib
+USE_GITHUB= yes
+GH_ACCOUNT= nihui
+CMAKE_SOURCE_PATH= ${WRKSRC}/src
+LDFLAGS+= -lpthread # XXX Convert ncnn to shared library
+PLIST_FILES= bin/${PORTNAME}
+PORTDATA= *
+
+.if !exists(/usr/include/omp.h)
+# XXX ports/199603 + ports/210337
+OPENMP= gcc-
+.endif
+
+pre-configure:
+ @if ${GREP} -q 'NCNN_VULKAN.*0' ${LOCALBASE}/include/ncnn/platform.h; then \
+ ${ECHO_MSG} "${PKGNAME}: Needs ncnn built with VULKAN enabled."; \
+ return 1; \
+ fi
+
+post-patch:
+ @${REINPLACE_CMD} -e '/PATHSTR/s,models-,${DATADIR}/&,' \
+ ${WRKSRC}/src/main.cpp
+
+do-install:
+ ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/${PORTNAME} \
+ ${STAGEDIR}${PREFIX}/bin
+ (cd ${WRKSRC}/models && ${COPYTREE_SHARE} "${PORTDATA}" \
+ ${STAGEDIR}${DATADIR})
+
+.include <bsd.port.mk>