Skip to content

Commit 906525f

Browse files
committed
mportsync: rsync files to a subdir
1 parent b43912e commit 906525f

1 file changed

Lines changed: 18 additions & 9 deletions

File tree

src/macports1.0/macports.tcl

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3285,8 +3285,17 @@ proc mportsync {{options {}}} {
32853285
}
32863286
set include_option "--include=/${filename} --include=/${filename}.rmd160"
32873287
# need to do a few things before replacing the ports tree in this case
3288-
set destdir [file dirname $destdir]
3288+
set extractdir [file dirname $destdir]
3289+
set destdir [file join $extractdir remote]
3290+
file mkdir $destdir
32893291
set srcstr $rooturl
3292+
set old_tarball_path [file join $extractdir $filename]
3293+
if {[file isfile $old_tarball_path]} {
3294+
file rename -force $old_tarball_path $destdir
3295+
}
3296+
set old_PortIndex_path [file join $extractdir PortIndex]
3297+
file delete -force {*}[glob -nocomplain -directory $extractdir [file rootname $filename]*] \
3298+
${old_PortIndex_path} ${old_PortIndex_path}.rmd160
32903299
} else {
32913300
# Keep rsync happy with a trailing slash
32923301
if {[string index $source end] ne "/"} {
@@ -3359,9 +3368,9 @@ proc mportsync {{options {}}} {
33593368
set tar [macports::findBinary tar $tar_path]
33603369
}
33613370
# extract tarball and move into place
3362-
file mkdir ${destdir}/tmp
3371+
file mkdir ${extractdir}/tmp
33633372
set zflag [expr {[file extension $tarball] eq ".gz" ? "z" : ""}]
3364-
set tar_cmd "$tar -C ${destdir}/tmp -x${zflag}f $tarball"
3373+
set tar_cmd "$tar -C ${extractdir}/tmp -x${zflag}f $tarball"
33653374
macports_try -pass_signal {
33663375
system $tar_cmd
33673376
} on error {eMessage} {
@@ -3372,14 +3381,14 @@ proc mportsync {{options {}}} {
33723381
# save the local PortIndex data
33733382
if {[file isfile $indexfile]} {
33743383
file copy -force $indexfile ${destdir}/
3375-
file rename -force $indexfile ${destdir}/tmp/ports/
3384+
file rename -force $indexfile ${extractdir}/tmp/ports/
33763385
if {[file isfile ${indexfile}.quick]} {
3377-
file rename -force ${indexfile}.quick ${destdir}/tmp/ports/
3386+
file rename -force ${indexfile}.quick ${extractdir}/tmp/ports/
33783387
}
33793388
}
3380-
file delete -force ${destdir}/ports
3381-
file rename ${destdir}/tmp/ports ${destdir}/ports
3382-
file delete -force ${destdir}/tmp
3389+
file delete -force ${extractdir}/ports
3390+
file rename ${extractdir}/tmp/ports ${extractdir}/ports
3391+
file delete -force ${extractdir}/tmp
33833392
# delete any old uncompressed tarball
33843393
if {[file extension $tarball] eq ".gz"} {
33853394
file delete -force [file rootname $tarball] [file rootname $tarball].rmd160
@@ -3423,7 +3432,7 @@ proc mportsync {{options {}}} {
34233432
}
34243433
if {$ok} {
34253434
# move PortIndex into place
3426-
file rename -force ${destdir}/PortIndex ${destdir}/ports/
3435+
file rename -force ${destdir}/PortIndex ${extractdir}/ports/
34273436
}
34283437
}
34293438
if {$ok} {

0 commit comments

Comments
 (0)