Ignore:
Timestamp:
Dec 11, 2004, 9:03:40 PM (14 years ago)
Author:
rshaw
Message:

Fixed problem that caused archive to crash on Jaguar due to 'ditto' on Jaguar
not supporting archive creation. Properly ignores ditto on Jaguar now, and
checks only for cpio.

Added note to ports.conf about Jaguar only having resource fork support
when using xar, since ditto on Jaguar does not support archive creation.

Submitted by: Simon Cotsworth, Mark Brethen

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/base/src/port1.0/portutil.tcl

    r9720 r9723  
    22# portutil.tcl
    33#
     4# Copyright (c) 2004 Robert Shaw <rshaw@opendarwin.org>
    45# Copyright (c) 2002 Apple Computer, Inc.
    56# All rights reserved.
     
    11971198# returns an error code if it is not
    11981199proc archiveTypeIsSupported {type} {
     1200    global os.platform os.version
    11991201        set errmsg ""
    12001202        switch -regex $type {
    12011203                cp(io|gz) {
    1202                         set ditto "ditto"
    1203                         if {[catch {set ditto [binaryInPath $ditto]} errmsg] == 0} {
    1204                                 return 0
    1205                         } else {
     1204                        # don't use ditto on non-darwin OS's or on Jaguar
     1205                        if {${os.platform} != "darwin" || \
     1206                                (${os.platform} == "darwin" && [regexp {^6[.]} ${os.version}])} {
    12061207                                set cpio "cpio"
    12071208                                if {[catch {set cpio [binaryInPath $cpio]} errmsg] == 0} {
    12081209                                        return 0
     1210                                }
     1211                        } else {
     1212                                set ditto "ditto"
     1213                                if {[catch {set ditto [binaryInPath $ditto]} errmsg] == 0} {
     1214                                        return 0
     1215                                } else {
     1216                                        set cpio "cpio"
     1217                                        if {[catch {set cpio [binaryInPath $cpio]} errmsg] == 0} {
     1218                                                return 0
     1219                                        }
    12091220                                }
    12101221                        }
Note: See TracChangeset for help on using the changeset viewer.