#22379 closed defect (fixed)
atlas-3.8.3 doesn't build on darwin-ppc
Reported by: | carsten@… | Owned by: | jameskyle@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.8.1 |
Keywords: | ppc | Cc: | giampaolo.bozzali@… |
Port: | atlas |
Description (last modified by jmroot (Joshua Root))
When trying to install gimp-2 with quartz enabledment I stumbled over the problem that the atlas-package doesn't build. Due to some preprocessor definitions the build process activates x86 inline assemblies:
/opt/local/bin/gcc-mp-4.3 -c -DL2SIZE=4194304 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/work/atlas-3.8.3/build/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/work/atlas-3.8.3/build/..//include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/work/atlas-3.8.3/build/..//include/contrib -DAdd_ -DF77_INTEGER=int -DStringSunStyle -DATL_OS_OSX -DATL_ARCH_PPCG5 -DATL_CPUMHZ=2000 -DATL_AltiVec -DATL_GAS_PPC -DPentiumCPS=2000 -DATL_NCPU=2 -mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -faltivec -force_cpusubtype_ALL -O3 -fno-schedule-insns -fno-rerun-loop-opt -fPIC -m32 ATL_walltime.c ATL_walltime.c: In function 'ATL_walltime': ATL_walltime.c:43: error: unknown register name 'edx' in 'asm' ATL_walltime.c:43: error: unknown register name 'eax' in 'asm' ATL_walltime.c:43: error: unknown register name 'edx' in 'asm' ATL_walltime.c:43: error: unknown register name 'eax' in 'asm' make[5]: *** [ATL_walltime.o] Error 1 make[4]: *** [/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/work/atlas-3.8.3/build/tune/sysinfo/ATL_Xwalltime.o] Error 2 make[3]: *** [/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_atlas/work/atlas-3.8.3/build/bin/xatlas_waitfile] Error 2 make[2]: *** [IStage1] Error 2
My first assumption is that defining the variable PentiumCPS is causing this hassle. I'll try this patch first:
--- build/Make.inc.orig 2009-11-04 23:03:40.000000000 +0100 +++ build/Make.inc 2009-11-05 10:08:03.000000000 +0100 @@ -102,7 +102,7 @@ # Note that if you specify no F77 compiler, F77 will be set to a C compiler # to aid in linking. # --------------------------------------------------------------------------- - CDEFS = $(L2SIZE) $(INCLUDES) $(F2CDEFS) $(ARCHDEFS) -DPentiumCPS=2000 -DATL_NCPU=2 + CDEFS = $(L2SIZE) $(INCLUDES) $(F2CDEFS) $(ARCHDEFS) -DATL_NCPU=2 ICC = /opt/local/bin/gcc-mp-4.3 ICCFLAGS = $(CDEFS) -mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -faltivec -force_cpusubtype_ALL -O3 -fno-schedule-insns -fno-rerun-loop-opt -fPIC -m32
Will make updates as soon as I know more.
Attachments (3)
Change History (7)
Changed 15 years ago by carsten@…
Attachment: | Stage1.log added |
---|
Changed 15 years ago by carsten@…
Attachment: | atlas_portfile.diff added |
---|
This patch to the package portfile makes atlas build on darwin-ppc
comment:1 Changed 15 years ago by carsten@…
Ok, atlas now builds on my darwin-ppc system. I didn't use the patch to Make.inc as proposed but patched the atlas package Portfile instead (the patch is attached). The patch actually takes care that the preprocessor variable PentiumCPS is only set for x86-architectures. I still don't know whether the built atlas package actually works .... I'll see.
comment:2 Changed 15 years ago by jmroot (Joshua Root)
Description: | modified (diff) |
---|---|
Owner: | changed from macports-tickets@… to jameskyle@… |
Please remember to preview, use WikiFormatting, and cc the maintainer.
comment:3 Changed 15 years ago by jameskyle@…
Resolution: | → fixed |
---|---|
Status: | new → closed |
Looked over the patch, thank you for catching this.
I removed the -D c -DPentium declaration from the pre-configure and added two additional targets. One to set Pentium cpufreq and another to set the clock to WALL time as suggested in the ATLAS installation guide section 3.4 for all non-intel cpu's.
Complete Stage1.log of the build process