3be3e90f93
- Switched to automake 1.11.6, see CVE-2012-3386. - #14669: Fixed extraction of CC from gmp.h. - Fixed case of intermediate zero real or imaginary part in mpc_fma, found by hydra with GMP_CHECK_RANDOMIZE=1346362345. This is on top of the following changes from version 1.0 - Licence change towards LGPLv3+ for the code and GFDLv1.3+ (with no invariant sections) for the documentation. - 100% of all lines are covered by tests - Renamed functions . mpc_mul_2exp to mpc_mul_2ui . mpc_div_2exp to mpc_div_2ui - 0^0, which returned (NaN,NaN) previously, now returns (1,+0). - Removed compatibility with K&R compilers, which was untestable due to lack of such compilers. - New functions . mpc_log10 . mpc_mul_2si, mpc_div_2si - Speed-ups . mpc_fma - Bug fixes . mpc_div and mpc_norm now return a value indicating the effective rounding direction, as the other functions. . mpc_mul, mpc_sqr and mpc_norm now return correct results even if there are over- or underflows during the computation. . mpc_asin, mpc_proj, mpc_sqr: Wrong result when input variable has infinite part and equals output variable is corrected. . mpc_fr_sub: Wrong return value for imaginary part is corrected. Convert to the new LIB_DEPENDS standard and remove hard-coded .so versions from a couple of dependent ports. Bump PORTREVISIONS of all dependent ports. PR: 183141 Approved by: portmgr (bdrewery)
116 lines
4.9 KiB
Makefile
116 lines
4.9 KiB
Makefile
# Created by: NAKATA Maho <maho@FreeBSD.org>
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= himenobench
|
|
PORTVERSION= 2004.08.16
|
|
PORTREVISION= 4
|
|
CATEGORIES= benchmarks
|
|
MASTER_SITES= http://accc.riken.jp/secure/4502/:C http://accc.riken.jp/secure/4503/:C \
|
|
http://accc.riken.jp/secure/4504/:F90 http://accc.riken.jp/secure/4505/:F77
|
|
DISTFILES= himenoBMTxp_xl.lzh:F77 himenoBMTxp_l.lzh:F77 himenoBMTxp_m.lzh:F77 \
|
|
himenoBMTxp_s.lzh:F77 cc_himenoBMTxp_xl.lzh:C cc_himenoBMTxp_l.lzh:C \
|
|
cc_himenoBMTxp_m.lzh:C cc_himenoBMTxp_s.lzh:C f90_xp.lzh:F90 himenobmtxpa.lzh:C
|
|
DIST_SUBDIR= himeno
|
|
|
|
MAINTAINER= maho@FreeBSD.org
|
|
COMMENT= Himeno bench benchmark, solves Poisson eq. with Jacobi's method
|
|
|
|
NO_WRKSUBDIR= yes
|
|
USE_LHA= yes
|
|
|
|
.if defined(WITH_ICC)
|
|
BUILD_DEPENDS= ${LOCALBASE}/intel_cc_80/bin/icc:${PORTSDIR}/lang/icc
|
|
.endif
|
|
|
|
USE_FORTRAN= yes
|
|
.if defined(WITH_IFC)
|
|
USE_FORTRAN= ifort
|
|
.endif
|
|
|
|
NO_STAGE= yes
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if defined(WITH_OPTIMIZED_FLAGS)
|
|
FFLAGS+= -O2 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations
|
|
CFLAGS+= -O2 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations
|
|
.endif
|
|
|
|
.if defined(WITH_ICC)
|
|
CFLAGS_ICC+= -O3 -tpp7 -axN -Vaxlib
|
|
ICC= ${LOCALBASE}/intel_cc_80/bin/icc
|
|
PLIST_SUB+= WITH_ICC=""
|
|
.else
|
|
PLIST_SUB+= WITH_ICC="@comment "
|
|
.endif
|
|
.if ${USE_FORTRAN} == ifort
|
|
FFLAGS_IFC+= -O3 -tpp7 -axN -Vaxlib -ipo
|
|
IFC= ${LOCALBASE}/intel_fc_80/bin/ifort
|
|
PLIST_SUB+= WITH_IFC=""
|
|
.else
|
|
PLIST_SUB+= WITH_IFC="@comment "
|
|
.endif
|
|
|
|
.if ${USE_FORTRAN} != yes
|
|
PLIST_SUB+= WITH_GFORTRAN="@comment "
|
|
.else
|
|
PLIST_SUB+= WITH_GFORTRAN=""
|
|
.endif
|
|
|
|
do-build:
|
|
.if ${USE_FORTRAN} == yes
|
|
cd ${WRKSRC} ; ${FC} ${FFLAGS} -o himenobmtxp himenobmtxp.f90
|
|
.endif
|
|
# cd ${WRKSRC} ; ${FC} ${FFLAGS} -o himenobmtxp_xl himenobmtxp_xl.f #Too large
|
|
cd ${WRKSRC} ; ${FC} ${FFLAGS} -o himenobmtxp_l himenobmtxp_l.f
|
|
cd ${WRKSRC} ; ${FC} ${FFLAGS} -o himenobmtxp_m himenobmtxp_m.f
|
|
cd ${WRKSRC} ; ${FC} ${FFLAGS} -o himenobmtxp_s himenobmtxp_s.f
|
|
# cd ${WRKSRC} ; ${CC} ${CFLAGS} -DELARGE -o himenobmtxps_xl himenobmtxps.c #Too large
|
|
cd ${WRKSRC} ; ${CC} ${CFLAGS} -DLARGE -o himenobmtxps_l himenobmtxps.c
|
|
cd ${WRKSRC} ; ${CC} ${CFLAGS} -DMIDDLE -o himenobmtxps_m himenobmtxps.c
|
|
cd ${WRKSRC} ; ${CC} ${CFLAGS} -DSMALL -o himenobmtxps_s himenobmtxps.c
|
|
cd ${WRKSRC} ; ${CC} ${CFLAGS} -DSSMALL -o himenobmtxps_ss himenobmtxps.c
|
|
cd ${WRKSRC} ; ${CC} ${CFLAGS} -o himenobmtxpa himenobmtxpa.c
|
|
.if defined(WITH_IFC)
|
|
# cd ${WRKSRC} ; ${IFC} ${FFLAGS_IFC} -o himenobmtxp_xl.ifc himenobmtxp_xl.f #Too large
|
|
cd ${WRKSRC} ; ${IFC} ${FFLAGS_IFC} -o himenobmtxp_l.ifc himenobmtxp_l.f
|
|
cd ${WRKSRC} ; ${IFC} ${FFLAGS_IFC} -o himenobmtxp_m.ifc himenobmtxp_m.f
|
|
cd ${WRKSRC} ; ${IFC} ${FFLAGS_IFC} -o himenobmtxp_s.ifc himenobmtxp_s.f
|
|
cd ${WRKSRC} ; ${IFC} ${FFLAGS_IFC} -o himenobmtxp.ifc himenobmtxp.f90
|
|
.endif
|
|
.if defined(WITH_ICC)
|
|
# cd ${WRKSRC} ; ${ICC} ${CFLAGS_ICC} -DELARGE -o himenobmtxps_xl.icc himenobmtxps.c #Too large
|
|
cd ${WRKSRC} ; ${ICC} ${CFLAGS_ICC} -DLARGE -o himenobmtxps_l.icc himenobmtxps.c
|
|
cd ${WRKSRC} ; ${ICC} ${CFLAGS_ICC} -DMIDDLE -o himenobmtxps_m.icc himenobmtxps.c
|
|
cd ${WRKSRC} ; ${ICC} ${CFLAGS_ICC} -DSMALL -o himenobmtxps_s.icc himenobmtxps.c
|
|
cd ${WRKSRC} ; ${ICC} ${CFLAGS_ICC} -DSSMALL -o himenobmtxps_ss.icc himenobmtxps.c
|
|
cd ${WRKSRC} ; ${ICC} ${CFLAGS_ICC} -o himenobmtxpa.icc himenobmtxpa.c
|
|
.endif
|
|
do-install:
|
|
# ${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_xl ${PREFIX}/bin #Too large
|
|
.if ${USE_FORTRAN} == yes
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp ${PREFIX}/bin
|
|
.endif
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_l ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_m ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_s ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxpa ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_l ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_m ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_s ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_ss ${PREFIX}/bin
|
|
.if defined(WITH_IFC)
|
|
# @${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_xl.ifc ${PREFIX}/bin #Too large
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_l.ifc ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_m.ifc ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp_s.ifc ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxp.ifc ${PREFIX}/bin
|
|
.endif
|
|
.if defined(WITH_ICC)
|
|
# @${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_xl.icc ${PREFIX}/bin #Too large
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_l.icc ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_m.icc ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_s.icc ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxps_ss.icc ${PREFIX}/bin
|
|
@${INSTALL_PROGRAM} ${WRKSRC}/himenobmtxpa.icc ${PREFIX}/bin
|
|
.endif
|
|
.include <bsd.port.post.mk>
|