Added
Link Here
|
1 |
PORTNAME= uiCA |
2 |
PORTVERSION= g20220630+${INSTRVERSION} |
3 |
CATEGORIES= benchmarks devel |
4 |
MASTER_SITES= https://uops.info/instructions.xml?dummy=/:instructions \ |
5 |
https://uops.info/:instructions |
6 |
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} |
7 |
DISTFILES= ${INSTRUCTIONS}:instructions |
8 |
EXTRACT_ONLY= ${DISTFILES:C,:[^:]*$,,:N*.xml} |
9 |
|
10 |
MAINTAINER= fuz@fuz.su |
11 |
COMMENT= uops.info Code Analyzer |
12 |
|
13 |
LICENSE= AGPLv3 APACHE20 |
14 |
LICENSE_COMB= multi |
15 |
|
16 |
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR} |
17 |
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}plotly>0:graphics/py-plotly@${PY_FLAVOR} |
18 |
|
19 |
USES= compiler python shebangfix |
20 |
USE_GITHUB= yes |
21 |
GH_ACCOUNT= andreas-abel |
22 |
GH_TAGNAME= ba6ad5557ebd96a10fa0d0e076c9961ec5024574 |
23 |
GH_TUPLE= andreas-abel:XED-to-XML:c71679ee893ae91db677056d542f305fcc433cb1:xed/XED-to-XML \ |
24 |
intelxed:mbuild:09b6654be0c52bf1df44e88c88b411a67b624cbd:mbuild/mbuild |
25 |
USE_PYTHON= concurrent flavors |
26 |
|
27 |
# manually build a file name like instructions_Apr2022.xml from |
28 |
# the machine-sortable INSTRVERSION. Use := to have date run only once |
29 |
INSTRVERSION= 2022.04 |
30 |
INSTRUCTIONS:= instructions_${LC_ALL=C date -j -f %Y.%m ${INSTRVERSION} +%b%Y:L:sh}.xml |
31 |
|
32 |
MFLAGS= --compiler=${COMPILER_TYPE:S/gcc/gnu/} \ |
33 |
--cc=${CC} \ |
34 |
--cxx=${CXX} \ |
35 |
--strip=${STRIP_CMD} \ |
36 |
--extra-ccflags='${CFLAGS}' \ |
37 |
--extra-cxxflags='${CXXFLAGS}' \ |
38 |
--extra-linkflags='${LDFLAGS}' |
39 |
|
40 |
SHEBANG_FILES= uiCA.py |
41 |
|
42 |
do-configure: |
43 |
${REINPLACE_CMD} -e 's,%%DATADIR%%,${DATADIR},' ${WRKSRC}/uiCA.py |
44 |
|
45 |
do-build: |
46 |
(cd ${WRKSRC}/XED-to-XML && ${PYTHON_CMD} mfile.py ${MFLAGS} --no-encoder pymodule) |
47 |
${LN} -f ${WRKSRC}/XED-to-XML/xed.* ${WRKSRC}/ |
48 |
(cd ${WRKSRC} && ${PYTHON_CMD} convertXML.py ${DISTDIR}/${INSTRUCTIONS}) |
49 |
${RM} -r ${WRKSRC}/__pycache__ |
50 |
.for f in microArchConfigs.py uiCA.py x64_lib.py instrData |
51 |
${PYTHON_CMD} -m compileall ${WRKSRC}/$f |
52 |
.endfor |
53 |
|
54 |
do-install: |
55 |
${MKDIR} ${STAGEDIR}${DATADIR} ${STAGEDIR}${PYTHON_LIBDIR}/lib-dynload/ |
56 |
${INSTALL_DATA} ${WRKSRC}/traceTemplate.html ${STAGEDIR}${DATADIR}/ |
57 |
${INSTALL_LIB} ${WRKSRC}/xed${PYTHON_EXT_SUFFIX}.so ${STAGEDIR}${PYTHON_LIBDIR}/lib-dynload/ |
58 |
(cd ${WRKSRC} && ${COPYTREE_SHARE} '__pycache__ instrData microArchConfigs.py x64_lib.py' ${STAGEDIR}${PYTHON_LIBDIR}) |
59 |
${INSTALL_SCRIPT} ${WRKSRC}/uiCA.py ${STAGEDIR}${PREFIX}/bin/uiCA |
60 |
|
61 |
.include <bsd.port.mk> |