[59880] trunk/base/src/package1.0
jmr at macports.org
jmr at macports.org
Sun Oct 25 00:32:20 PDT 2009
Revision: 59880
http://trac.macports.org/changeset/59880
Author: jmr at macports.org
Date: 2009-10-25 00:32:16 -0700 (Sun, 25 Oct 2009)
Log Message:
-----------
try to do something sensible with universal archives
Modified Paths:
--------------
trunk/base/src/package1.0/portarchive.tcl
trunk/base/src/package1.0/portunarchive.tcl
Modified: trunk/base/src/package1.0/portarchive.tcl
===================================================================
--- trunk/base/src/package1.0/portarchive.tcl 2009-10-25 06:52:20 UTC (rev 59879)
+++ trunk/base/src/package1.0/portarchive.tcl 2009-10-25 07:32:16 UTC (rev 59880)
@@ -70,7 +70,7 @@
global name version revision portvariants
global archive.destpath archive.type archive.meta
global archive.file archive.path archive.fulldestpath
- global configure.build_arch
+ global configure.build_arch configure.universal_archs
# Check mode in case archive called directly by user
if {[option portarchivemode] != "yes"} {
@@ -91,7 +91,11 @@
# Define archive destination directory and target filename
if {![string equal ${archive.destpath} ${workpath}] && ![string equal ${archive.destpath} ""]} {
- set archive.fulldestpath [file join ${archive.destpath} [option os.platform] ${configure.build_arch}]
+ if {[variant_exists universal] && [variant_isset universal]} {
+ set archive.fulldestpath [file join ${archive.destpath} [option os.platform] "universal"]
+ } else {
+ set archive.fulldestpath [file join ${archive.destpath} [option os.platform] ${configure.build_arch}]
+ }
} else {
set archive.fulldestpath ${archive.destpath}
}
@@ -111,7 +115,12 @@
set any_missing no
foreach archive.type [option portarchivetype] {
if {[catch {archiveTypeIsSupported ${archive.type}} errmsg] == 0} {
- set archive.file "${name}-${version}_${revision}${portvariants}.${configure.build_arch}.${archive.type}"
+ if {[variant_exists universal] && [variant_isset universal]} {
+ set archstring [join [lsort -ascii ${configure.universal_archs}] -]
+ } else {
+ set archstring ${configure.build_arch}
+ }
+ set archive.file "${name}-${version}_${revision}${portvariants}.${archstring}.${archive.type}"
set archive.path "[file join ${archive.fulldestpath} ${archive.file}]"
if {![file exists ${archive.path}]} {
set any_missing yes
@@ -300,7 +309,7 @@
global name epoch version revision portvariants
global archive.fulldestpath archive.type archive.file archive.path
global archive.meta archive.metaname archive.metapath
- global os.platform os.arch configure.build_arch
+ global os.platform os.arch configure.build_arch configure.universal_archs
# Create archive destination path (if needed)
if {![file isdirectory ${archive.fulldestpath}]} {
@@ -354,6 +363,11 @@
puts $fd "@portepoch ${epoch}"
puts $fd "@portversion ${version}"
puts $fd "@portrevision ${revision}"
+ if {[variant_exists universal] && [variant_isset universal]} {
+ puts $fd "@archs ${configure.universal_archs}"
+ } else {
+ puts $fd "@archs ${configure.build_arch}"
+ }
set vlist [lsort -ascii [array names variations]]
foreach v $vlist {
if {![string equal $v [option os.platform]] && ![string equal $v [option os.arch]]} {
@@ -400,7 +414,11 @@
putel $sd minor 0
putel $sd platform ${os.platform}
- putel $sd arch ${os.arch}
+ if {[variant_exists universal] && [variant_isset universal]} {
+ putlist $sd archs arch [lsort -ascii ${configure.universal_archs}]
+ } else {
+ putel $sd arch ${configure.build_arch}
+ }
set vlist [lsort -ascii [array names variations]]
putlist $sd variants variant $vlist
@@ -459,12 +477,17 @@
close $sd
}
+ if {[variant_exists universal] && [variant_isset universal]} {
+ set archstring [join [lsort -ascii ${configure.universal_archs}] -]
+ } else {
+ set archstring ${configure.build_arch}
+ }
# Now create the archive(s)
# Loop through archive types
foreach archive.type [option portarchivetype] {
if {[catch {archiveTypeIsSupported ${archive.type}} errmsg] == 0} {
# Define archive file/path
- set archive.file "${name}-${version}_${revision}${portvariants}.${configure.build_arch}.${archive.type}"
+ set archive.file "${name}-${version}_${revision}${portvariants}.${archstring}.${archive.type}"
set archive.path "[file join ${archive.fulldestpath} ${archive.file}]"
# Setup archive command
Modified: trunk/base/src/package1.0/portunarchive.tcl
===================================================================
--- trunk/base/src/package1.0/portunarchive.tcl 2009-10-25 06:52:20 UTC (rev 59879)
+++ trunk/base/src/package1.0/portunarchive.tcl 2009-10-25 07:32:16 UTC (rev 59880)
@@ -65,7 +65,7 @@
global ports_force ports_source_only ports_binary_only
global name version revision portvariants portpath
global unarchive.srcpath unarchive.type unarchive.file unarchive.path unarchive.fullsrcpath
- global configure.build_arch
+ global configure.build_arch configure.universal_archs
# Check mode in case archive called directly by user
if {[option portarchivemode] != "yes"} {
@@ -86,7 +86,11 @@
# Define archive directory, file, and path
if {![string equal ${unarchive.srcpath} ${workpath}] && ![string equal ${unarchive.srcpath} ""]} {
- set unarchive.fullsrcpath [file join ${unarchive.srcpath} [option os.platform] ${configure.build_arch}]
+ if {[variant_exists universal] && [variant_isset universal]} {
+ set unarchive.fullsrcpath [file join ${unarchive.srcpath} [option os.platform] "universal"]
+ } else {
+ set unarchive.fullsrcpath [file join ${unarchive.srcpath} [option os.platform] ${configure.build_arch}]
+ }
} else {
set unarchive.fullsrcpath ${unarchive.srcpath}
}
@@ -109,7 +113,12 @@
set unsupported 0
foreach unarchive.type [option portarchivetype] {
if {[catch {archiveTypeIsSupported ${unarchive.type}} errmsg] == 0} {
- set unarchive.file "${name}-${version}_${revision}${portvariants}.${configure.build_arch}.${unarchive.type}"
+ if {[variant_exists universal] && [variant_isset universal]} {
+ set archstring [join [lsort -ascii ${configure.universal_archs}] -]
+ } else {
+ set archstring ${configure.build_arch}
+ }
+ set unarchive.file "${name}-${version}_${revision}${portvariants}.${archstring}.${unarchive.type}"
set unarchive.path "[file join ${unarchive.fullsrcpath} ${unarchive.file}]"
if {[file exist ${unarchive.path}]} {
set found 1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20091025/4b04bb97/attachment.html>
More information about the macports-changes
mailing list