[54236] trunk/base/src/port1.0
jmr at macports.org
jmr at macports.org
Thu Jul 23 08:31:11 PDT 2009
Revision: 54236
http://trac.macports.org/changeset/54236
Author: jmr at macports.org
Date: 2009-07-23 08:31:10 -0700 (Thu, 23 Jul 2009)
Log Message:
-----------
Don't pass -arch to fortran compilers (none support it), and add archflags to the *FLAGS env vars in configure_main instead of appending to the configure.*flags options earlier, which could clash with these being changed in the portfile. (#20361)
Modified Paths:
--------------
trunk/base/src/port1.0/portconfigure.tcl
trunk/base/src/port1.0/portutil.tcl
Modified: trunk/base/src/port1.0/portconfigure.tcl
===================================================================
--- trunk/base/src/port1.0/portconfigure.tcl 2009-07-23 14:53:49 UTC (rev 54235)
+++ trunk/base/src/port1.0/portconfigure.tcl 2009-07-23 15:31:10 UTC (rev 54236)
@@ -109,9 +109,12 @@
default configure.pkg_config {}
default configure.pkg_config_path {}
-options configure.build_arch configure.archflags
+options configure.build_arch
default configure.build_arch {${build_arch}}
-default configure.archflags {[portconfigure::configure_get_archflags]}
+foreach tool {cc cxx objc f77 f90 fc} {
+ options configure.${tool}_archflags
+ default configure.${tool}_archflags "\[portconfigure::configure_get_archflags $tool\]"
+}
options configure.universal_archs configure.universal_args configure.universal_cflags configure.universal_cppflags configure.universal_cxxflags configure.universal_ldflags
default configure.universal_archs {${universal_archs}}
@@ -167,7 +170,7 @@
}
# internal function to determine the compiler flags to select an arch
-proc portconfigure::configure_get_archflags {args} {
+proc portconfigure::configure_get_archflags {tool} {
global configure.build_arch configure.m32 configure.m64 configure.compiler
set flags ""
if {[tbool configure.m64]} {
@@ -175,7 +178,7 @@
} elseif {[tbool configure.m32]} {
set flags "-m32"
} elseif {${configure.build_arch} != ""} {
- if {[arch_flag_supported]} {
+ if {[arch_flag_supported] && $tool == "cc" || $tool == "cxx" || $tool == "objc"} {
set flags "-arch ${configure.build_arch}"
} elseif {${configure.build_arch} == "x86_64" || ${configure.build_arch} == "ppc64"} {
set flags "-m64"
@@ -410,9 +413,15 @@
proc portconfigure::configure_main {args} {
global [info globals]
global worksrcpath use_configure use_autoreconf use_autoconf use_automake use_xmkmf
- global configure.env configure.pipe configure.cflags configure.cppflags configure.cxxflags configure.objcflags configure.ldflags configure.libs configure.fflags configure.f90flags configure.fcflags configure.classpath
+ global configure.env configure.pipe configure.libs configure.classpath configure.universal_args
global configure.perl configure.python configure.ruby configure.install configure.awk configure.bison configure.pkg_config configure.pkg_config_path
- global configure.ccache configure.distcc configure.cc configure.cxx configure.cpp configure.objc configure.f77 configure.f90 configure.fc configure.javac
+ global configure.ccache configure.distcc configure.cpp configure.javac configure.march configure.mtune
+ foreach tool {cc cxx objc f77 f90 fc} {
+ global configure.${tool} configure.${tool}_archflags
+ }
+ foreach flags {cflags cppflags cxxflags objcflags ldflags fflags f90flags fcflags} {
+ global configure.${flags} configure.universal_${flags}
+ }
if {[tbool use_autoreconf]} {
if {[catch {command_exec autoreconf} result]} {
@@ -490,6 +499,27 @@
append_list_to_environment_value configure "BISON" ${configure.bison}
append_list_to_environment_value configure "PKG_CONFIG" ${configure.pkg_config}
append_list_to_environment_value configure "PKG_CONFIG_PATH" ${configure.pkg_config_path}
+
+ # add extra flags that are conditional on whether we're building universal
+ if {[variant_exists universal] && [variant_isset universal]} {
+ foreach flags {CFLAGS OBJCFLAGS} {
+ append_list_to_environment_value configure $flags ${configure.universal_cflags}
+ }
+ append_list_to_environment_value configure "CXXFLAGS" ${configure.universal_cxxflags}
+ append_list_to_environment_value configure "CPPFLAGS" ${configure.universal_cppflags}
+ append_list_to_environment_value configure "LDFLAGS" ${configure.universal_ldflags}
+ eval configure.pre_args-append ${configure.universal_args}
+ } else {
+ foreach {tool flags} {cc CFLAGS cxx CXXFLAGS objc OBJCFLAGS f77 FFLAGS f90 F90FLAGS fc FCFLAGS} {
+ append_list_to_environment_value configure $flags [set configure.${tool}_archflags]
+ if {${configure.march} != {}} {
+ append_list_to_environment_value configure $flags "-march=${configure.march}"
+ }
+ if {${configure.mtune} != {}} {
+ append_list_to_environment_value configure $flags "-mtune=${configure.mtune}"
+ }
+ }
+ }
# Execute the command (with the new environment).
if {[catch {command_exec configure} result]} {
Modified: trunk/base/src/port1.0/portutil.tcl
===================================================================
--- trunk/base/src/port1.0/portutil.tcl 2009-07-23 14:53:49 UTC (rev 54235)
+++ trunk/base/src/port1.0/portutil.tcl 2009-07-23 15:31:10 UTC (rev 54236)
@@ -1870,11 +1870,6 @@
# add the default universal variant if appropriate, and set up flags that are
# conditional on whether universal is set
proc universal_setup {args} {
- global configure.archflags
- global configure.march configure.mtune configure.universal_cflags
- global configure.universal_cxxflags configure.universal_cppflags
- global configure.universal_ldflags configure.universal_args
-
if {[variant_exists universal]} {
ui_debug "universal variant already exists, so not adding the default one"
} elseif {[exists universal_variant] && ![option universal_variant]} {
@@ -1890,28 +1885,6 @@
ui_debug "adding the default universal variant"
variant universal {}
}
-
- # add in extra CFLAGS etc
- if {[variant_exists universal] && [variant_isset universal]} {
- foreach flag {cflags objcflags fflags f90flags fcflags} {
- eval configure.${flag}-append ${configure.universal_cflags}
- }
- eval configure.cxxflags-append ${configure.universal_cxxflags}
- eval configure.cppflags-append ${configure.universal_cppflags}
- eval configure.ldflags-append ${configure.universal_ldflags}
- eval configure.pre_args-append ${configure.universal_args}
- } else {
- foreach flag {cflags cxxflags objcflags fflags f90flags fcflags} {
- eval configure.${flag}-append ${configure.archflags}
- if {${configure.march} != {}} {
- configure.${flag}-append "-march=${configure.march}"
- }
- if {${configure.mtune} != {}} {
- configure.${flag}-append "-mtune=${configure.mtune}"
- }
- }
- eval configure.ldflags-append ${configure.archflags}
- }
}
# Target class definition.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20090723/332eb4b4/attachment.html>
More information about the macports-changes
mailing list