ports/misc/opennn/Makefile
Piotr Kubaj 72ba479639 misc/opennn: fix build on powerpc64
/usr/bin/c++ -D__Cpp11__ -Dopennn_EXPORTS  -fopenmp=libomp -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -std=gnu++17 -fPIC -MD -MT opennn/CMakeFiles/opennn.dir/adaptive_moment_estimation.cpp.o -MF opennn/CMakeFiles/opennn.dir/adaptive_moment_estimation.cpp.o.d -o opennn/CMakeFiles/opennn.dir/adaptive_moment_estimation.cpp.o -c /wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/adaptive_moment_estimation.cpp
In file included from /wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/adaptive_moment_estimation.cpp:9:
In file included from /wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/adaptive_moment_estimation.h:32:
In file included from /wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/loss_index.h:23:
In file included from /wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/config.h:34:
In file included from /wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/../eigen/unsupported/Eigen/CXX11/Tensor:14:
In file included from /wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/../eigen/unsupported/Eigen/CXX11/../../../Eigen/Core:210:
/wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/../eigen/unsupported/Eigen/CXX11/../../../Eigen/src/Core/arch/AltiVec/PacketMath.h:1345:32: error: use of undeclared identifier 'vec_sqrt'; did you mean 'vec_rsqrt'?
  BF16_TO_F32_UNARY_OP_WRAPPER(vec_sqrt, a);
                               ^~~~~~~~
                               vec_rsqrt
/wrkdirs/usr/ports/misc/opennn/work/opennn-6.0.4/opennn/../eigen/unsupported/Eigen/CXX11/../../../Eigen/src/Core/arch/AltiVec/PacketMath.h:1302:22: note: expanded from macro 'BF16_TO_F32_UNARY_OP_WRAPPER'
  Packet4f op_even = OP(a_even);\
                     ^
/usr/lib/clang/14.0.5/include/altivec.h:8501:34: note: 'vec_rsqrt' declared here
static vector float __ATTRS_o_ai vec_rsqrt(vector float __a) {
2023-09-05 23:46:04 +02:00

46 lines
1.2 KiB
Makefile

PORTNAME= opennn
DISTVERSIONPREFIX= v
DISTVERSION= 6.0.4
CATEGORIES= misc # machine-learning
MAINTAINER= yuri@FreeBSD.org
COMMENT= Open neural networks library
WWW= https://www.opennn.net/
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
USES= cmake:testing dos2unix
USE_LDCONFIG= yes
USE_GITHUB= yes
GH_ACCOUNT= Artelnics
DOS2UNIX_FILES= opennn/CMakeLists.txt
CMAKE_ON= BUILD_SHARED_LIBS
CMAKE_OFF= OpenNN_BUILD_EXAMPLES OpenNN_BUILD_TESTS
CMAKE_TESTING_ON= OpenNN_BUILD_TESTS # some tests fail, see https://github.com/Artelnics/opennn/issues/229
CMAKE_TESTING_TARGET= tests
CXXFLAGS_powerpc64= -mvsx
LDFLAGS+= -pthread
LDFLAGS_powerpc= -latomic
.if !exists(/usr/include/omp.h)
LDFLAGS+= -fopenmp
USES+= compiler:gcc-c++11-lib
.else
LDFLAGS+= -lomp # https://github.com/Artelnics/opennn/issues/182
USES+= compiler:c++11-lang
.endif
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/include/${PORTNAME} && ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}/*.h ${STAGEDIR}${PREFIX}/include/${PORTNAME}
${INSTALL_DATA} ${BUILD_WRKSRC}/${PORTNAME}/libopennn.so ${STAGEDIR}${PREFIX}/lib
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libopennn.so
post-test:
@cd ${TEST_WRKSRC} && (${ECHO} suite | tests/tests)
.include <bsd.port.mk>