Lines 3-10
Link Here
|
3 |
|
3 |
|
4 |
PORTNAME= stockfish |
4 |
PORTNAME= stockfish |
5 |
DISTVERSIONPREFIX= sf_ |
5 |
DISTVERSIONPREFIX= sf_ |
6 |
DISTVERSION= 11 |
6 |
DISTVERSION= 12 |
7 |
CATEGORIES= games |
7 |
CATEGORIES= games |
|
|
8 |
MASTER_SITES= https://tests.stockfishchess.org/api/nn/:nnue |
9 |
DISTFILES= nn-${_NNUE_VER}.nnue:nnue |
10 |
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} |
8 |
|
11 |
|
9 |
MAINTAINER= execve@gmail.com |
12 |
MAINTAINER= execve@gmail.com |
10 |
COMMENT= Open source chess engine |
13 |
COMMENT= Open source chess engine |
Lines 18-40
Link Here
|
18 |
BROKEN_mips64= Fails to build: cannot detect architecture |
21 |
BROKEN_mips64= Fails to build: cannot detect architecture |
19 |
NOT_FOR_ARCHS= sparc64 |
22 |
NOT_FOR_ARCHS= sparc64 |
20 |
|
23 |
|
21 |
USES= compiler:c++11-lang gmake |
24 |
USES= compiler:c++11-lang gmake perl5 |
22 |
USE_GITHUB= yes |
25 |
USE_GITHUB= yes |
23 |
GH_ACCOUNT= official-stockfish |
26 |
GH_ACCOUNT= official-stockfish |
24 |
GH_PROJECT= Stockfish |
27 |
GH_PROJECT= Stockfish |
|
|
28 |
USE_PERL5= build |
25 |
|
29 |
|
|
|
30 |
LDFLAGS+= -fuse-ld=lld |
31 |
|
32 |
_NNUE_VER= 82215d0fd0df |
33 |
|
26 |
WRKSRC_SUBDIR= src |
34 |
WRKSRC_SUBDIR= src |
27 |
MYARCH= ${ARCH} |
35 |
MYARCH= ${ARCH} |
28 |
MYCC= ${CHOSEN_COMPILER_TYPE} |
36 |
MYCC= ${CHOSEN_COMPILER_TYPE} |
29 |
TGTBLD= build |
37 |
TGTBLD= build |
30 |
|
38 |
|
31 |
LDFLAGS+= -fuse-ld=lld |
|
|
32 |
|
33 |
PLIST_FILES= bin/stockfish |
39 |
PLIST_FILES= bin/stockfish |
34 |
PORTDOCS= Readme.md |
40 |
PORTDOCS= README.md |
35 |
|
41 |
|
36 |
OPTIONS_DEFINE= DOCS POPCNT |
42 |
#POPCNT AVX2 BMI2 |
|
|
43 |
OPTIONS_DEFINE= DOCS |
44 |
OPTIONS_RADIO= MACHDEP |
45 |
OPTIONS_RADIO_MACHDEP= POPCNT AVX2 BMI2 |
37 |
|
46 |
|
|
|
47 |
AVX2_DESC= Use the AVX2 instruction set |
48 |
BMI2_DESC= Use the BMI2 instruction set |
38 |
POPCNT_DESC= Use the POPCNT instruction |
49 |
POPCNT_DESC= Use the POPCNT instruction |
39 |
|
50 |
|
40 |
.include <bsd.port.options.mk> |
51 |
.include <bsd.port.options.mk> |
Lines 43-53
Link Here
|
43 |
BROKEN= POPCNT compiles only on amd64 |
54 |
BROKEN= POPCNT compiles only on amd64 |
44 |
.endif |
55 |
.endif |
45 |
|
56 |
|
|
|
57 |
.if ${PORT_OPTIONS:MAVX2} && ${ARCH} != amd64 |
58 |
BROKEN= AVX compiles only on amd64 |
59 |
.endif |
60 |
|
61 |
.if ${PORT_OPTIONS:MBMI2} && ${ARCH} != amd64 |
62 |
BROKEN= BMI compiles only on amd64 |
63 |
.endif |
64 |
|
46 |
# workaround the ARCH usage in the stockfish Makefile |
65 |
# workaround the ARCH usage in the stockfish Makefile |
47 |
.if ${ARCH} == "i386" |
66 |
.if ${ARCH} == "i386" |
48 |
MYARCH= x86-32 |
67 |
MYARCH= x86-32 |
49 |
.elif ${ARCH} == "amd64" |
68 |
.elif ${ARCH} == "amd64" |
50 |
. if ${PORT_OPTIONS:MPOPCNT} |
69 |
. if ${PORT_OPTIONS:MBMI2} |
|
|
70 |
MYARCH= x86-64-bmi2 |
71 |
. elif ${PORT_OPTIONS:MAVX2} |
72 |
MYARCH= x86-64-avx2 |
73 |
. elif ${PORT_OPTIONS:MPOPCNT} |
51 |
MYARCH= x86-64-modern |
74 |
MYARCH= x86-64-modern |
52 |
. else |
75 |
. else |
53 |
MYARCH= x86-64 |
76 |
MYARCH= x86-64 |
Lines 61-66
Link Here
|
61 |
ALL_TARGET= ${TGTBLD} ARCH=${MYARCH} COMP=${MYCC} |
84 |
ALL_TARGET= ${TGTBLD} ARCH=${MYARCH} COMP=${MYCC} |
62 |
|
85 |
|
63 |
post-patch: |
86 |
post-patch: |
|
|
87 |
@${CP} ${_DISTDIR}/nn-${_NNUE_VER}.nnue ${WRKSRC}/. |
64 |
@${REINPLACE_CMD} -e "s/^PREFIX =/PREFIX ?=/" ${WRKSRC}/Makefile |
88 |
@${REINPLACE_CMD} -e "s/^PREFIX =/PREFIX ?=/" ${WRKSRC}/Makefile |
65 |
@${REINPLACE_CMD} -e "s/CXX=g++/CXX=g++${GCC_DEFAULT}/" \ |
89 |
@${REINPLACE_CMD} -e "s/CXX=g++/CXX=g++${GCC_DEFAULT}/" \ |
66 |
${WRKSRC}/Makefile |
90 |
${WRKSRC}/Makefile |
Lines 70-75
Link Here
|
70 |
|
94 |
|
71 |
do-install-DOCS-on: |
95 |
do-install-DOCS-on: |
72 |
@${MKDIR} ${STAGEDIR}${DOCSDIR} |
96 |
@${MKDIR} ${STAGEDIR}${DOCSDIR} |
73 |
${INSTALL_DATA} ${WRKSRC}/../Readme.md ${STAGEDIR}${DOCSDIR} |
97 |
${INSTALL_DATA} ${WRKSRC}/../README.md ${STAGEDIR}${DOCSDIR} |
74 |
|
98 |
|
75 |
.include <bsd.port.mk> |
99 |
.include <bsd.port.mk> |