mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-26 05:02:18 +00:00
Update to 3.7.24.
This commit is contained in:
parent
025b5d4bf4
commit
1beab63002
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=180896
@ -9,7 +9,7 @@
|
||||
# Program and compiler flags are finetuned to gcc.
|
||||
|
||||
PORTNAME= atlas
|
||||
PORTVERSION= 3.7.11
|
||||
PORTVERSION= 3.7.24
|
||||
CATEGORIES= math
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
|
||||
MASTER_SITE_SUBDIR= math-atlas
|
||||
@ -29,8 +29,14 @@ INSTALLS_SHLIB= yes
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if ${OSVERSION} < 501000 && ${ARCH} == "alpha"
|
||||
USE_GCC=3.4
|
||||
NOT_FOR_ARCHS= alpha
|
||||
#GCC4 produces slower code...
|
||||
USE_GCC= 3.2+
|
||||
|
||||
.if ${ARCH} == "sparc64"
|
||||
PICFLAG?= -fPIC
|
||||
.else
|
||||
PICFLAG?= -fpic
|
||||
.endif
|
||||
|
||||
# only affects for lapack sub project
|
||||
@ -42,96 +48,35 @@ FFLAGS+= -pipe -O2 -ffast-math -fomit-frame-pointer
|
||||
.endif
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
.if !defined(WITH_OPTIMIZED_FLAGS)
|
||||
@${ECHO_CMD} "You can optimize lapack sub project by setting WITH_OPTIMIZED_FLAGS=yes."
|
||||
.endif
|
||||
@${REINPLACE_CMD} -e 's+%%PTHREAD_CFLAGS%%+${PTHREAD_CFLAGS}+g' \
|
||||
-e 's+%%PTHREAD_LIBS%%+${PTHREAD_LIBS}+g' \
|
||||
${WRKSRC}/config.c
|
||||
.if defined(PORTS_ARCH)
|
||||
@${REINPLACE_CMD} -e 's+%%PORTS_ARCH%%+${PORTS_ARCH}+g' \
|
||||
-e 's+%%HAVE_ARCH%%+1+g' ${WRKSRC}/config.c
|
||||
.else
|
||||
@${REINPLACE_CMD} -e 's+%%PORTS_ARCH%%+0+g' \
|
||||
-e 's+%%HAVE_ARCH%%+0+g' ${WRKSRC}/config.c
|
||||
.endif
|
||||
.if (${MACHINE_ARCH} == "alpha")
|
||||
EXTRA_PATCHES+= ${FILESDIR}/alpha-patch
|
||||
.endif
|
||||
|
||||
.if ${MACHINE_ARCH} == "sparc64"
|
||||
PICFLAG?= -fPIC
|
||||
.else
|
||||
PICFLAG?= -fpic
|
||||
.endif
|
||||
|
||||
ANSWER_i386?= ${PRINTF} "\n\n\n\n\n\n\n\n\n\n"
|
||||
ANSWER_ia64?= ${PRINTF} "\n\n\n2\n\n\n\n\nf77\n-O2 -static\n\n"
|
||||
|
||||
.if defined(PACKAGE_BUILDING) && (${MACHINE_ARCH} == "i386")
|
||||
PORTS_ARCH=IntP5
|
||||
.endif
|
||||
|
||||
.if !defined(ANSWER_${ARCH})
|
||||
ANSWER= ${ANSWER_i386}
|
||||
.else
|
||||
ANSWER= ${ANSWER_${ARCH}}
|
||||
.endif
|
||||
|
||||
.if defined(TIMING_TOLERANCE)
|
||||
EXTRA_PATCHES+= ${FILESDIR}/timing_tolerance-patch
|
||||
.endif
|
||||
|
||||
.if defined(WITH_STATICLIB)
|
||||
PLIST_SUB= WITH_STATICLIB=""
|
||||
.else
|
||||
PLIST_SUB= WITH_STATICLIB="@comment "
|
||||
.endif
|
||||
|
||||
pre-configure:
|
||||
@${ECHO_MSG} "Warning:"
|
||||
@${ECHO_MSG} "Building this port can take long time"
|
||||
@${ECHO_MSG} "for slow computers (over 1 day)."
|
||||
@${ECHO_MSG} "And sometimes stop building for Athlon."
|
||||
@${ECHO_MSG} "In this case please retype make or rebuild whole atlas."
|
||||
@${ECHO_MSG}
|
||||
pre-build:
|
||||
.if !defined(PORTS_ARCH)
|
||||
@${ECHO_MSG} "Warning:"
|
||||
@${ECHO_MSG} "If your arch is not correctly detected, you can specify"
|
||||
@${ECHO_MSG} "by yourself."
|
||||
@${ECHO_MSG} "for example : make PORTS_ARCH=P5Int"
|
||||
@${ECHO_MSG} "Available architectures for x86 are:"
|
||||
@${ECHO_MSG} "IntP5, IntP5MMX, IntPPRO, IntPII, IntPIII, IntP4, IntP4E"
|
||||
@${ECHO_MSG} "IntP4E64, TMEff, AmdAthlon,AmdHammer32, AmdHammer64"
|
||||
@${ECHO_MSG}
|
||||
.endif
|
||||
.if !defined(TIMING_TOLERANCE)
|
||||
@${ECHO_MSG} "If your install dies with unable to get timings in tolerance"
|
||||
@${ECHO_MSG} "First please refer http://math-atlas.sourceforge.net/errata.html#tol"
|
||||
@${ECHO_MSG} "and you can build with"
|
||||
@${ECHO_MSG} "make clean; make -DTIMING_TOLERANCE"
|
||||
@${ECHO_MSG} "if your build still dies, you can type make again, (and again...)"
|
||||
@${ECHO_MSG}
|
||||
.endif
|
||||
post-extract:
|
||||
.if !defined(WITH_STATICLIB)
|
||||
@${ECHO_MSG} "You can build static libraries with"
|
||||
@${ECHO_MSG} "make -DWITH_STATICLIB"
|
||||
@${ECHO_MSG}
|
||||
.endif
|
||||
|
||||
do-configure:
|
||||
@(cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} xconfig && \
|
||||
${ANSWER} | ./xconfig -N 1 -c ${CC} -f ${FC} -m ${CC} -g ${CC} -x ${CC} -a NON_THREADED && \
|
||||
${ANSWER} | ./xconfig -N 1 -c ${CC} -f ${FC} -m ${CC} -g ${CC} -x ${CC} -a NON_THREADED_PIC -C '${PICFLAG} -DPIC' -F f '${PICFLAG} -DPIC -O' )
|
||||
@(cd ${WRKSRC}; ${PATCH} < ${FILESDIR}/thread-patch && \
|
||||
${MAKE_ENV} ${MAKE} xconfig && \
|
||||
${ANSWER} | ./xconfig -c ${CC} -f ${FC} -m ${CC} -g ${CC} -x ${CC} -a THREADED && \
|
||||
${ANSWER} | ./xconfig -c ${CC} -f ${FC} -m ${CC} -g ${CC} -x ${CC} -a THREADED_PIC -C '${PICFLAG} -DPIC' -F f '${PICFLAG} -DPIC -O' )
|
||||
pre-configure:
|
||||
@${REINPLACE_CMD} -e "s|%%CC%%|${CC}|g" \
|
||||
-e "s|%%FC%%|${FC}|g" ${WRKSRC}/CONFIG/src/atlcomp.txt
|
||||
@${REINPLACE_CMD} -e "s|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|g" \
|
||||
${WRKSRC}/CONFIG/src/SpewMakeInc.c
|
||||
|
||||
do-configure:
|
||||
${MKDIR} ${WRKSRC}/NON_THREADED ; cd ${WRKSRC}/NON_THREADED ; \
|
||||
../configure -t 0
|
||||
${MKDIR} ${WRKSRC}/THREADED ; cd ${WRKSRC}/THREADED ; \
|
||||
../configure -t 0 -Fa al '${PTHREAD_CFLAGS} '
|
||||
${MKDIR} ${WRKSRC}/NON_THREADED_PIC ; cd ${WRKSRC}/NON_THREADED_PIC ; \
|
||||
../configure -t -1 -Fa al '${PICFLAG} -DPIC'
|
||||
${MKDIR} ${WRKSRC}/THREADED_PIC ; cd ${WRKSRC}/THREADED_PIC ; \
|
||||
../configure -t -1 -Fa al '${PTHREAD_CFLAGS} ${PICFLAG} -DPIC'
|
||||
|
||||
ATLAS_LIBS1=libalapack libatlas libcblas libf77blas libtstatlas
|
||||
ATLAS_LIBS2=libptcblas libptf77blas
|
||||
do-build:
|
||||
# make lapack
|
||||
.if ! exists(${WRKDIR}/lapack/Makefile)
|
||||
@ -144,12 +89,14 @@ do-build:
|
||||
@${CP} ${PORTSDIR}/math/lapack/pkg-descr ${WRKDIR}/lapack
|
||||
@cd ${WRKDIR}/lapack ; ${MAKE} "FFLAGS=${FFLAGS}" FC="${FC}" build WRKDIRPREFIX=""
|
||||
.endif
|
||||
@(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=NON_THREADED_PIC" install arch=NON_THREADED_PIC)
|
||||
@(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=THREADED_PIC" install arch=THREADED_PIC)
|
||||
.if defined(WITH_STATICLIB)
|
||||
@(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=NON_THREADED" install arch=NON_THREADED)
|
||||
@(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=THREADED" install arch=THREADED)
|
||||
(cd ${WRKSRC}/NON_THREADED ; ${MAKE})
|
||||
(cd ${WRKSRC}/THREADED ; ${MAKE})
|
||||
.endif
|
||||
(cd ${WRKSRC}/NON_THREADED_PIC ; ${MAKE})
|
||||
(cd ${WRKSRC}/THREADED_PIC ; ${MAKE})
|
||||
|
||||
ATLAS_LIBS=libalapack libatlas libcblas libf77blas libtstatlas
|
||||
|
||||
post-build:
|
||||
.if defined(WITH_STATICLIB)
|
||||
@ -158,17 +105,17 @@ post-build:
|
||||
${CP} ${WRKDIR}/lapack/work/LAPACK/SRC/liblapack.a tmp1 ;\
|
||||
cd tmp1 ;\
|
||||
ar x liblapack.a ;\
|
||||
ar x ../lib/NON_THREADED/liblapack.a ;\
|
||||
ar r ../lib/NON_THREADED/libalapack.a *.o ;\
|
||||
ranlib ../lib/NON_THREADED/libalapack.a )
|
||||
ar x ../NON_THREADED/lib/liblapack.a ;\
|
||||
ar r ../NON_THREADED/lib/libalapack.a *.o ;\
|
||||
ranlib ../NON_THREADED/lib/libalapack.a )
|
||||
# make atlas enhanced lapack (static and thread safe ver)
|
||||
(cd ${WRKSRC}; ${MKDIR} tmp2 ; \
|
||||
${CP} ${WRKDIR}/lapack/work/LAPACK/SRC/liblapack.a tmp2 ;\
|
||||
cd tmp2 ;\
|
||||
ar x liblapack.a ;\
|
||||
ar x ../lib/THREADED/liblapack.a ;\
|
||||
ar r ../lib/THREADED/libalapack.a *.o ;\
|
||||
ranlib ../lib/THREADED/libalapack.a )
|
||||
ar x ../THREADED/lib/liblapack.a ;\
|
||||
ar r ../THREADED/lib/libalapack.a *.o ;\
|
||||
ranlib ../THREADED/lib/libalapack.a )
|
||||
.endif
|
||||
# make atlas enhanced lapack (shared ver)
|
||||
( cd ${WRKSRC}; ${MKDIR} tmp3 ;\
|
||||
@ -178,9 +125,9 @@ post-build:
|
||||
${MV} $$n.So $$n.o ; \
|
||||
done ; \
|
||||
cd tmp3 ;\
|
||||
ar x ../lib/NON_THREADED_PIC/liblapack.a ;\
|
||||
ar r ../lib/NON_THREADED_PIC/libalapack.a *.o ;\
|
||||
ranlib ../lib/NON_THREADED_PIC/libalapack.a )
|
||||
ar x ../NON_THREADED_PIC/lib/liblapack.a ;\
|
||||
ar r ../NON_THREADED_PIC/lib/libalapack.a *.o ;\
|
||||
ranlib ../NON_THREADED_PIC/lib/libalapack.a )
|
||||
# make atlas enhanced lapack (shared and thread safe ver)
|
||||
( cd ${WRKSRC}; ${MKDIR} tmp4 ;\
|
||||
${TAR} --exclude "*.f" --exclude "*.po" --exclude "*.o" -cf - -C ${WRKDIR}/lapack/work/LAPACK/SRC . | ${TAR} xf - -C tmp4 ;\
|
||||
@ -189,47 +136,36 @@ post-build:
|
||||
${MV} $$n.So $$n.o ; \
|
||||
done ; \
|
||||
cd tmp4 ;\
|
||||
ar x ../lib/THREADED_PIC/liblapack.a ;\
|
||||
ar r ../lib/THREADED_PIC/libalapack.a *.o ;\
|
||||
ranlib ../lib/THREADED_PIC/libalapack.a )
|
||||
ar x ../THREADED_PIC/lib/liblapack.a ;\
|
||||
ar r ../THREADED_PIC/lib/libalapack.a *.o ;\
|
||||
ranlib ../THREADED_PIC/lib/libalapack.a )
|
||||
|
||||
# make atlas shared library
|
||||
.for i in ${ATLAS_LIBS1}
|
||||
( cd ${WRKSRC}/lib/NON_THREADED_PIC/ ; \
|
||||
ld -Bshareable -o ${i}.so.1 -x -soname ${i}.so.1 --whole-archive ${i}.a )
|
||||
.for i in ${ATLAS_LIBS}
|
||||
( cd ${WRKSRC}/NON_THREADED_PIC/lib ; \
|
||||
ld -Bshareable -o ${i}.so.1 -x -soname ${i}.so.1 ${i}.a )
|
||||
.endfor
|
||||
|
||||
# make atlas shared (thread safe) library
|
||||
.for i in ${ATLAS_LIBS1}
|
||||
( cd ${WRKSRC}/lib/THREADED_PIC/ ; \
|
||||
ld -Bshareable -o ${i}_r.so.1 -x -soname ${i}_r.so.1 --whole-archive ${i}.a )
|
||||
.endfor
|
||||
.for i in ${ATLAS_LIBS2}
|
||||
( cd ${WRKSRC}/lib/THREADED_PIC/ ; \
|
||||
ld -Bshareable -o ${i}.so.1 -x -soname ${i}.so.1 --whole-archive ${i}.a )
|
||||
.for i in ${ATLAS_LIBS}
|
||||
( cd ${WRKSRC}/THREADED_PIC/lib ; \
|
||||
ld -Bshareable -o ${i}_r.so.1 -x -soname ${i}_r.so.1 ${i}.a )
|
||||
.endfor
|
||||
|
||||
do-install:
|
||||
.for i in ${ATLAS_LIBS1}
|
||||
.for i in ${ATLAS_LIBS}
|
||||
.if defined(WITH_STATICLIB)
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/NON_THREADED/${i}.a ${PREFIX}/lib
|
||||
@${INSTALL_DATA} ${WRKSRC}/NON_THREADED/lib/${i}.a ${PREFIX}/lib
|
||||
.endif
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/NON_THREADED_PIC/${i}.so.1 ${PREFIX}/lib
|
||||
@${INSTALL_DATA} ${WRKSRC}/NON_THREADED_PIC/lib/${i}.so.1 ${PREFIX}/lib
|
||||
@${LN} -sf ${i}.so.1 ${PREFIX}/lib/${i}.so
|
||||
.endfor
|
||||
.for i in ${ATLAS_LIBS1}
|
||||
.for i in ${ATLAS_LIBS}
|
||||
.if defined(WITH_STATICLIB)
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/THREADED/${i}.a ${PREFIX}/lib/${i}_r.a
|
||||
@${INSTALL_DATA} ${WRKSRC}/THREADED/lib/${i}.a ${PREFIX}/lib/${i}_r.a
|
||||
.endif
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/THREADED_PIC/${i}_r.so.1 ${PREFIX}/lib/${i}_r.so.1
|
||||
@${INSTALL_DATA} ${WRKSRC}/THREADED_PIC/lib/${i}_r.so.1 ${PREFIX}/lib/${i}_r.so.1
|
||||
@${LN} -sf ${i}_r.so.1 ${PREFIX}/lib/${i}_r.so
|
||||
.endfor
|
||||
.for i in ${ATLAS_LIBS2}
|
||||
.if defined(WITH_STATICLIB)
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/THREADED/${i}.a ${PREFIX}/lib
|
||||
.endif
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/THREADED_PIC/${i}.so.1 ${PREFIX}/lib
|
||||
@${LN} -sf ${i}.so.1 ${PREFIX}/lib/${i}.so
|
||||
.endfor
|
||||
@${INSTALL_DATA} ${WRKSRC}/include/cblas.h ${PREFIX}/include
|
||||
@${INSTALL_DATA} ${WRKSRC}/include/clapack.h ${PREFIX}/include
|
||||
|
@ -1,3 +1,3 @@
|
||||
MD5 (atlas3.7.11.tar.bz2) = ccde41dd4f41c47e16ebfa8e6dfd1117
|
||||
SHA256 (atlas3.7.11.tar.bz2) = 558b9f3f0dc8f63306f99f75d6e6fa762ea3d9d0dea88053e3e8b6f0e6364109
|
||||
SIZE (atlas3.7.11.tar.bz2) = 2032724
|
||||
MD5 (atlas3.7.24.tar.bz2) = c9e54c65714afab0007102245860bbf5
|
||||
SHA256 (atlas3.7.24.tar.bz2) = 10436b1aa642d0bd041170db683c119a9581ee5325fed2dc8113f34a2f11f8e4
|
||||
SIZE (atlas3.7.24.tar.bz2) = 1776317
|
||||
|
11
math/atlas-devel/files/patch-CONFIG+src+SpewMakeInc.c
Normal file
11
math/atlas-devel/files/patch-CONFIG+src+SpewMakeInc.c
Normal file
@ -0,0 +1,11 @@
|
||||
--- CONFIG/src/SpewMakeInc.c~ Tue Dec 19 06:47:11 2006
|
||||
+++ CONFIG/src/SpewMakeInc.c Wed Dec 27 17:05:12 2006
|
||||
@@ -588,7 +588,7 @@
|
||||
if (flapack) fprintf(fpout, "%s", flapack);
|
||||
fprintf(fpout, "\n");
|
||||
if (THREADS)
|
||||
- fprintf(fpout, " LIBS = -lpthread -lm\n\n");
|
||||
+ fprintf(fpout, " LIBS = %%PTHREAD_LIBS%% -lm\n\n");
|
||||
else
|
||||
fprintf(fpout, " LIBS = -lm\n\n");
|
||||
|
38
math/atlas-devel/files/patch-CONFIG+src+atlcomp.txt
Normal file
38
math/atlas-devel/files/patch-CONFIG+src+atlcomp.txt
Normal file
@ -0,0 +1,38 @@
|
||||
--- CONFIG/src/atlcomp.txt.org Wed Dec 27 12:33:29 2006
|
||||
+++ CONFIG/src/atlcomp.txt Wed Dec 27 12:34:12 2006
|
||||
@@ -40,18 +40,18 @@
|
||||
#
|
||||
# Core2Solo and Core2Duo
|
||||
MACH=14,15 OS=0 LVL=1000 COMPS=smc,dmc,skc,dkc,icc
|
||||
- 'gcc' '-fomit-frame-pointer -mfpmath=sse -msse3 -O2'
|
||||
+ '%%CC%%' '-fomit-frame-pointer -mfpmath=sse -msse3 -O2'
|
||||
# PPRO,PII,PIII,P4,P4E,K7,HAMMER
|
||||
MACH=8,9,10,16,17,19,20 OS=0 LVL=2000 COMPS=smc,dmc,skc,dkc
|
||||
- 'gcc32' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
|
||||
+ '%%CC%%' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
|
||||
# PPRO,PII,PIII,P4,P4E,K7,HAMMER
|
||||
MACH=8,9,10,16,17,19,20 OS=0 LVL=1000 COMPS=smc,dmc,skc,dkc
|
||||
- 'gcc' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
|
||||
+ '%%CC%%' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
|
||||
MACH=8,9,10,16,17,19,20 OS=0 LVL=1000 COMPS=icc
|
||||
- 'gcc' '-fomit-frame-pointer -mfpmath=387 -O'
|
||||
+ '%%CC%%' '-fomit-frame-pointer -mfpmath=387 -O'
|
||||
# CoreSolo,CoreDuo
|
||||
MACH=12,13 OS=0 LVL=1000 COMPS=smc,dmc,skc,dkc,icc
|
||||
- 'gcc' '-fomit-frame-pointer -O3 -mfpmath=387'
|
||||
+ '%%CC%%' '-fomit-frame-pointer -O3 -mfpmath=387'
|
||||
# UltraSPARC III & IV
|
||||
MACH=26,27 OS=0 LVL=1000 COMPS=smc,dmc,skc,dkc
|
||||
'gcc' '-mcpu=ultrasparc3 -mtune=ultrasparc3 -O3 -funroll-all-loops'
|
||||
@@ -82,9 +82,9 @@
|
||||
# Generic defaults
|
||||
#
|
||||
MACH=0 OS=0 LVL=0 COMPS=icc,smc,dmc,skc,dkc,xcc
|
||||
- 'gcc' '-O -fomit-frame-pointer'
|
||||
+ '%%CC%%' '-O -fomit-frame-pointer'
|
||||
MACH=0 OS=0 LVL=2 COMPS=f77
|
||||
- 'gfortran' '-O'
|
||||
+ '%%FC%%' '-O'
|
||||
MACH=0 OS=0 LVL=1 COMPS=f77
|
||||
'g77' '-O'
|
||||
MACH=0 OS=0 LVL=0 COMPS=f77
|
@ -0,0 +1,102 @@
|
||||
--- CONFIG/src/backend/archinfo_freebsd.c.orig Tue Dec 19 06:47:11 2006
|
||||
+++ CONFIG/src/backend/archinfo_freebsd.c Wed Dec 27 11:29:26 2006
|
||||
@@ -73,15 +73,26 @@
|
||||
}
|
||||
break;
|
||||
case AFSPARC: /* don't know */
|
||||
+ if (!CmndOneLine(NULL, "sysctl hw.model", res))
|
||||
+ {
|
||||
+ if (strstr(res, "UltraSparc-IV")) mach = SunUSIV;
|
||||
+ if (strstr(res, "UltraSparc-II")) mach = SunUSII;
|
||||
+ if (strstr(res, "UltraSparc-I")) mach = SunUSI;
|
||||
+ if (strstr(res, "UltraSparc")) mach = SunUSI;
|
||||
+ else mach = SunUSI;
|
||||
+ }
|
||||
break;
|
||||
case AFALPHA:
|
||||
- #if 0
|
||||
if (!CmndOneLine(NULL, "sysctl hw.model", res))
|
||||
{
|
||||
+#if 0
|
||||
if (strstr(res, "433au")) mach = Dec21164;
|
||||
+ else if (strstr(res, "500au")) mach = Dec21164;
|
||||
+ else if (strstr(res, "AlphaPC 164")) mach = Dec21164;
|
||||
else if (strstr(res, "XP1000")) mach = Dec21264;
|
||||
+ else mach = Dec21264;
|
||||
+#endif
|
||||
}
|
||||
- #endif
|
||||
break;
|
||||
case AFIA64: /* don't know */
|
||||
break;
|
||||
@@ -89,15 +100,33 @@
|
||||
if (!CmndOneLine(NULL, "sysctl hw.model", res))
|
||||
{
|
||||
if (strstr(res, "Pentium Pro")) mach = IntPPRO;
|
||||
+ else if (strstr(res, "Pentium(R) D")) mach = IntP4E;
|
||||
+ else if (strstr(res, "Pentium(R) Pro")) mach = IntPPRO;
|
||||
+ else if (strstr(res, "Pentium 4")) mach = IntP4;
|
||||
+ else if (strstr(res, "Pentium(R) 4")) mach = IntP4;
|
||||
+ else if (strstr(res, "Pentium(R) M")) mach = IntP4;
|
||||
else if (strstr(res, "Pentium III")) mach = IntPIII;
|
||||
else if (strstr(res, "Pentium II ")) mach = IntPII;
|
||||
else if (strstr(res, "Athlon")) mach = AmdAthlon;
|
||||
+ else if (strstr(res, "Pentium III/Pentium III")) mach = IntPIII;
|
||||
+ else if (strstr(res, "Pentium(R) III")) mach = IntPIII;
|
||||
+ else if (strstr(res, "Pentium II")) mach = IntPII;
|
||||
+ else if (strstr(res, "Pentium II/PentiumII")) mach = IntPII;
|
||||
+ else if (strstr(res, "Pentium(R) II ")) mach = IntPII;
|
||||
+ else if (strstr(res, "Celeron")) mach = IntPII;
|
||||
+ else if (strstr(res, "Celeron(R)")) mach = IntPII;
|
||||
+ else if (strstr(res, "Opteron(tm)")) mach = AmdHammer;
|
||||
+ else if (strstr(res, "AMD Athlon(tm) 64")) mach = AmdHammer;
|
||||
else if (strstr(res, "AMD-K7")) mach = AmdAthlon;
|
||||
- else if (strstr(res, "32 bit Hammer")) mach = AmdHammer;
|
||||
- else if (strstr(res, "64 bit Hammer")) mach = AmdHammer;
|
||||
- else if (strstr(res, "Pentium/P55C")) mach = IntP5MMX; /* sent by */
|
||||
- else if (strstr(res, "Pentium")) mach=IntP5; /* Nakata Maho */
|
||||
else if (strstr(res, "iMac4,1")) mach=IntCoreDuo;
|
||||
+ else if (strstr(res, "Sempron(tm)")) mach = AmdAthlon;
|
||||
+ else if (strstr(res, "AMD-K6(tm)")) mach = IntP5MMX;
|
||||
+ else if (strstr(res, "Pentium/P55C")) mach = IntP5MMX;
|
||||
+ else if (strstr(res, "Pentium/P54C")) mach=IntP5;
|
||||
+ else if (strstr(res, "Pentium")) mach=IntP5;
|
||||
+ else if (strstr(res, "VIA")) mach=IntP5MMX;
|
||||
+ else if (strstr(res, "Crusoe(tm)")) mach=IntP5MMX;
|
||||
+ else mach = IntP5;
|
||||
}
|
||||
break;
|
||||
default:;
|
||||
@@ -156,8 +185,8 @@
|
||||
{
|
||||
int mhz=0;
|
||||
char res[1024];
|
||||
- if (!CmndOneLine(NULL, "sysctl hw.cpufrequency", res) )
|
||||
- mhz = GetFirstLong(res) / 1000000;
|
||||
+ if (!CmndOneLine(NULL, "sysctl kern.timecounter.choice dev.cpu.0.freq | grep dev", res) ) //requires cpufreq.ko
|
||||
+ mhz = GetLastInt(res);
|
||||
return(mhz);
|
||||
}
|
||||
|
||||
@@ -166,20 +195,7 @@
|
||||
* RETURNS: 1 if cpu throttling is detected, 0 otherwise
|
||||
*/
|
||||
{
|
||||
- int iret=0;
|
||||
- int imax=0, imin=0, icur=0;
|
||||
- char res[1024];
|
||||
-
|
||||
- if (!CmndOneLine(NULL, "sysctl hw.cpufrequency_max", res) )
|
||||
- imax = GetFirstInt(res);
|
||||
- if (!CmndOneLine(NULL, "sysctl hw.cpufrequency_min", res) )
|
||||
- imin = GetFirstInt(res);
|
||||
- if (imax)
|
||||
- {
|
||||
- if (imax != imin)
|
||||
- iret = 1;
|
||||
- }
|
||||
- return(iret);
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
main(int nargs, char **args)
|
@ -0,0 +1,10 @@
|
||||
--- CONFIG/src/backend/archinfo_x86.c~ Tue Dec 19 06:47:11 2006
|
||||
+++ CONFIG/src/backend/archinfo_x86.c Wed Dec 27 12:05:00 2006
|
||||
@@ -281,6 +281,7 @@
|
||||
case 9:
|
||||
case 13:
|
||||
iret = IntPM;
|
||||
+ break;
|
||||
case 14:
|
||||
iret = IntCoreDuo;
|
||||
break;
|
@ -1,180 +0,0 @@
|
||||
--- config.c.orig Sun Aug 21 22:30:17 2005
|
||||
+++ config.c Thu Jan 5 18:49:36 2006
|
||||
@@ -686,7 +686,10 @@
|
||||
{
|
||||
if (strstr(ln2, "Apple Computer"))
|
||||
*comp = 3;
|
||||
- *major = GetIntVers(ln2, &j);
|
||||
+
|
||||
+ j=0;if(isalpha(ln2[0])){for(i=0;!isspace(ln2[i]);i++)j++;} /*skip gccXXX ; XXX is number*/
|
||||
+ for (i=j; !isdigit(ln2[i]); i++) j++;
|
||||
+ *major = GetIntVers(ln2+j, &i); j += i;
|
||||
if (*major != -1)
|
||||
{
|
||||
*minor = GetIntVers(ln2+j, &i); j += i;
|
||||
@@ -1041,6 +1044,8 @@
|
||||
{
|
||||
if (strstr(ln, "x86_64"))
|
||||
iret = 1;
|
||||
+ if (strstr(ln, "amd64"))
|
||||
+ iret = 1;
|
||||
else if (strstr(ln, "ppc64"))
|
||||
iret = 2;
|
||||
}
|
||||
@@ -1240,7 +1245,9 @@
|
||||
switch(OS)
|
||||
{
|
||||
case OSOSX: /* don't know answer */
|
||||
- case OSFreeBSD: /* don't know answer */
|
||||
+ case OSFreeBSD:
|
||||
+ if (THREADS) strcpy(LIBS, "%%PTHREAD_LIBS%% -lm");
|
||||
+ break;
|
||||
case OSLinux:
|
||||
break;
|
||||
case OSSunOS:
|
||||
@@ -1505,9 +1512,9 @@
|
||||
if (THREADS && OS == OSFreeBSD)
|
||||
{
|
||||
if (which == CPF77)
|
||||
- strcat(flag, " -pthread");
|
||||
+ strcat(flag, " %%PTHREAD_LIBS%%");
|
||||
else
|
||||
- strcat(flag, " -pthread -D_REENTRANT -D_THREAD_SAFE");
|
||||
+ strcat(flag, " %%PTHREAD_LIBS%% %%PTHREAD_CFLAGS%%");
|
||||
}
|
||||
break;
|
||||
case OSSunOS4:
|
||||
@@ -2124,8 +2131,8 @@
|
||||
if (OS == OSFreeBSD)
|
||||
{
|
||||
if (strstr(comp, "cc"))
|
||||
- strcat(flag, " -pthread -D_REENTRANT -D_THREAD_SAFE");
|
||||
- else strcat(flag, " -pthread");
|
||||
+ strcat(flag, " %%PTHREAD_LIBS%% %%PTHREAD_CFLAGS%%");
|
||||
+ else strcat(flag, " %%PTHREAD_LIBS%%");
|
||||
}
|
||||
}
|
||||
return(*comp ? comp : NULL);
|
||||
@@ -2767,7 +2774,7 @@
|
||||
break;
|
||||
case IntP4:
|
||||
lf1 = l1 = 64;
|
||||
- lf2 = l2 = 512;
|
||||
+ lf2 = l2 = 4096;
|
||||
s1 = 0;
|
||||
s2 = 0;
|
||||
break;
|
||||
@@ -2871,6 +2878,7 @@
|
||||
l1 = l2 = s1 = s2 = 0;
|
||||
lf2 = 4096;
|
||||
}
|
||||
+ s1 = 0; // XXX always calculate L1 cache size
|
||||
if (lvl == 1)
|
||||
{
|
||||
if (AmSure) *AmSure = s1;
|
||||
@@ -2988,7 +2996,7 @@
|
||||
else if (strstr(ln, "ia64")) la = LAIA64;
|
||||
else if ( strstr(ln, "i686") || strstr(ln, "i586") ||
|
||||
strstr(ln, "i486") || strstr(ln, "i386") ||
|
||||
- strstr(ln, "x86_64") ) la = LAX86;
|
||||
+ strstr(ln, "x86_64") || strstr(ln, "amd64") ) la = LAX86;
|
||||
}
|
||||
return(la);
|
||||
}
|
||||
@@ -3017,6 +3025,9 @@
|
||||
else
|
||||
sprintf(ln2,
|
||||
"cd CONFIG ; make IRunx86Info mydir=%s/CONFIG | fgrep cpu", TOPdir);
|
||||
+
|
||||
+ if (%%HAVE_ARCH%%) {mach = %%PORTS_ARCH%%; return(mach); }
|
||||
+
|
||||
if ( !CmndOneLine(NULL, ln2, ln) )
|
||||
{
|
||||
if (strstr(ln, "Pentium 4E64"))
|
||||
@@ -3058,12 +3069,22 @@
|
||||
}
|
||||
break;
|
||||
case LASPARC: /* don't know */
|
||||
+ if (!CmndOneLine(targ, "sysctl hw.model", ln))
|
||||
+ {
|
||||
+ if (strstr(ln, "UltraSparc-II")) mach = SunUS2;
|
||||
+ if (strstr(ln, "UltraSparc-I")) mach = SunUS1;
|
||||
+ if (strstr(ln, "UltraSparc")) mach = SunUSX;
|
||||
+ else mach = SunUSX;
|
||||
+ }
|
||||
break;
|
||||
case LAALPHA:
|
||||
if (!CmndOneLine(targ, "sysctl hw.model", ln))
|
||||
{
|
||||
if (strstr(ln, "433au")) mach = Dec21164;
|
||||
+ else if (strstr(ln, "500au")) mach = Dec21164;
|
||||
+ else if (strstr(ln, "AlphaPC 164")) mach = Dec21164;
|
||||
else if (strstr(ln, "XP1000")) mach = Dec21264;
|
||||
+ else mach = Dec21264;
|
||||
}
|
||||
break;
|
||||
case LAIA64: /* don't know */
|
||||
@@ -3071,15 +3092,38 @@
|
||||
case LAX86:
|
||||
if (!CmndOneLine(targ, "sysctl hw.model", ln))
|
||||
{
|
||||
+// mach = Use64Bits ? IntP4E64 : IntP4E; #EM64T
|
||||
+// mach = IntP4E; #prescott
|
||||
if (strstr(ln, "Pentium Pro")) mach = IntPPRO;
|
||||
+ else if (strstr(ln, "Pentium(R) D") && sizeof(void *)==4) mach = IntP4E;
|
||||
+ else if (strstr(ln, "Pentium(R) D") && sizeof(void *)==8) mach = IntP4E64;
|
||||
+ else if (strstr(ln, "Pentium(R) Pro")) mach = IntPPRO;
|
||||
+ else if (strstr(ln, "Pentium 4")) mach = IntP4;
|
||||
+ else if (strstr(ln, "Pentium(R) 4")) mach = IntP4;
|
||||
+ else if (strstr(ln, "Pentium(R) M")) mach = IntP4;
|
||||
else if (strstr(ln, "Pentium III")) mach = IntPIII;
|
||||
- else if (strstr(ln, "Pentium II ")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Pentium III/Pentium III")) mach = IntPIII;
|
||||
+ else if (strstr(ln, "Pentium(R) III")) mach = IntPIII;
|
||||
+ else if (strstr(ln, "Pentium II")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Pentium II/PentiumII")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Pentium(R) II ")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Celeron")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Celeron(R)")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Opteron(tm)") && sizeof(void *)==4) mach = AmdHammer32;
|
||||
+ else if (strstr(ln, "Opteron(tm)") && sizeof(void *)==8) mach = AmdHammer64;
|
||||
+ else if (strstr(ln, "AMD Athlon(tm) 64") && sizeof(void *)==4) mach = AmdHammer32;
|
||||
+ else if (strstr(ln, "AMD Athlon(tm) 64") && sizeof(void *)==8) mach = AmdHammer64;
|
||||
+ else if (strstr(ln, "Athlon(tm)")) mach = AmdAthlon;
|
||||
else if (strstr(ln, "Athlon")) mach = AmdAthlon;
|
||||
else if (strstr(ln, "AMD-K7")) mach = AmdAthlon;
|
||||
- else if (strstr(ln, "32 bit Hammer")) mach = AmdHammer32;
|
||||
- else if (strstr(ln, "64 bit Hammer")) mach = AmdHammer64;
|
||||
- else if (strstr(ln, "Pentium/P55C")) mach = IntP5MMX; /* sent by */
|
||||
- else if (strstr(ln, "Pentium")) mach=IntP5; /* Nakata Maho */
|
||||
+ else if (strstr(ln, "Sempron(tm)")) mach = AmdAthlon;
|
||||
+ else if (strstr(ln, "AMD-K6(tm)")) mach = IntP5MMX;
|
||||
+ else if (strstr(ln, "Pentium/P55C")) mach = IntP5MMX;
|
||||
+ else if (strstr(ln, "Pentium/P54C")) mach=IntP5;
|
||||
+ else if (strstr(ln, "Pentium")) mach=IntP5;
|
||||
+ else if (strstr(ln, "VIA")) mach=IntP5MMX;
|
||||
+ else if (strstr(ln, "Crusoe(tm)")) mach=IntP5MMX;
|
||||
+ else mach = IntP5;
|
||||
}
|
||||
break;
|
||||
default:;
|
||||
@@ -3933,8 +3977,8 @@
|
||||
}
|
||||
if (THREADS) /* add ncpu to ARCH */
|
||||
{
|
||||
- for (i=0; ARCH[i]; i++);
|
||||
- sprintf(ARCH+i, "_%d", ncpu);
|
||||
+// for (i=0; ARCH[i]; i++); // do not add number of cpu for ARCHNAME
|
||||
+// sprintf(ARCH+i, "_%d", ncpu); // #cpu can be different in general
|
||||
}
|
||||
do
|
||||
{
|
||||
@@ -4382,7 +4426,7 @@
|
||||
if (THREADS)
|
||||
{
|
||||
fprintf(fpout, " -DATL_NCPU=%d", ncpu);
|
||||
- if (OS == OSFreeBSD) fprintf(fpout, " -D_THREAD_SAFE -D_REENTRANT");
|
||||
+ if (OS == OSFreeBSD) fprintf(fpout, " %%PTHREAD_CFLAGS%%");
|
||||
if (OS == OSAIX) fprintf(fpout, " -DIBM_PT_ERROR");
|
||||
if (OS == OSIRIX) fprintf(fpout, " -D_POSIX_C_SOURCE=199506L");
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
--- tune/sysinfo/L1CacheSize.c Mon Dec 22 23:11:53 2003
|
||||
+++ ../../L1CacheSize.c Tue Jun 28 13:37:10 2005
|
||||
--- tune/sysinfo/L1CacheSize.c.orig Tue Dec 19 06:48:02 2006
|
||||
+++ tune/sysinfo/L1CacheSize.c Wed Dec 27 12:43:59 2006
|
||||
@@ -31,7 +31,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
@ -9,12 +9,12 @@
|
||||
|
||||
#ifndef time00
|
||||
#define time00 ATL_cputime
|
||||
@@ -134,7 +134,7 @@
|
||||
@@ -267,7 +267,7 @@
|
||||
|
||||
main(int nargs, char *args[])
|
||||
{
|
||||
- int L1Size, tmp, MaxSize=64, correct=1;
|
||||
+ int L1Size, tmp, MaxSize=256, correct=1;
|
||||
- int L1Size, MaxSize=64, correct=1;
|
||||
+ int L1Size, MaxSize=256, correct=1;
|
||||
FILE *L1f;
|
||||
|
||||
if (nargs > 2)
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- config.c.orig Tue Jul 1 12:35:09 2003
|
||||
+++ config.c Tue Jul 1 12:35:44 2003
|
||||
@@ -79,7 +79,7 @@
|
||||
char *usermmnam[2] = {"", "GOTO"};
|
||||
enum USERGEMM {UG_None=0, UG_GOTO};
|
||||
|
||||
-int XCOMP=0, THREADS=0, USEWINF77=0, NLINES=0, ISWIN=0;
|
||||
+int XCOMP=0, THREADS=1, USEWINF77=0, NLINES=0, ISWIN=0; // force threading for single processor
|
||||
char TARGNAM[512];
|
||||
enum MACHTYPE mach=MACHOther;
|
||||
|
@ -1,12 +0,0 @@
|
||||
http://math-atlas.sourceforge.net/errata.html#tol
|
||||
--- tune/sysinfo/GetSysSum.c~ Sat Jul 24 20:40:05 2004
|
||||
+++ tune/sysinfo/GetSysSum.c Sun Jun 26 07:52:43 2005
|
||||
@@ -116,7 +116,7 @@
|
||||
fprintf(fpout, "#define ATL_fplat %d\n", lat);
|
||||
fprintf(fpout, "#define ATL_lbnreg %d\n", lbnreg);
|
||||
fprintf(fpout, "#define ATL_mmnreg %d\n", mmnreg);
|
||||
- fprintf(fpout, "#define ATL_nkflop %d\n", nkflop);
|
||||
+ fprintf(fpout, "#define ATL_nkflop %d\n", nkflop*5);
|
||||
fprintf(fpout, "\n#endif\n");
|
||||
fclose(fpout);
|
||||
}
|
@ -26,12 +26,6 @@ lib/libf77blas.so
|
||||
%%WITH_STATICLIB%%lib/libf77blas_r.a
|
||||
lib/libf77blas_r.so.1
|
||||
lib/libf77blas_r.so
|
||||
%%WITH_STATICLIB%%lib/libptcblas.a
|
||||
lib/libptcblas.so.1
|
||||
lib/libptcblas.so
|
||||
%%WITH_STATICLIB%%lib/libptf77blas.a
|
||||
lib/libptf77blas.so.1
|
||||
lib/libptf77blas.so
|
||||
%%WITH_STATICLIB%%lib/libtstatlas.a
|
||||
lib/libtstatlas.so.1
|
||||
lib/libtstatlas.so
|
||||
|
Loading…
Reference in New Issue
Block a user