On Feb 14, 2007, at 2:00 AM, Mark Duling wrote:
Like I said, file copy (or just copy, after my commit) will in
fact copy
directories.
I'm sorry to be so dull. You seem to be saying this:
copy ${sourcedir} ${destdir}
is equivalent to this:
system "cp -R ${sourcedir} ${destdir}"
But doesn't 'eval xinstall [glob ${source}/* ${dest}' fail if there
are
nested directories? So I thought perhaps your new copy command
would have
the same problem. I'm sorry we're talking by each other, but I
have some
preconceptions that I'm having trouble getting beyond at the moment.
xinstall and file copy are different - xinstall is implemented in
pextlib, and apparently doesn't recursively copy directories. It's a
shame.
So yeah, while xinstall won't handle directories, copy will do it
just fine. The difference is that copy won't handle file permissions,
but xinstall does.
find basedir {filter_expression} {do stuff with $filename}
Because if filter_expression = "*", then is there a tcl command I
can use
in {do stuff with ..} that doesn't care if something is a file or
directory? Because I thought that the TCL extensions I've learned
so far
require me to know in advance whether I'm copying files or
directories, so
I wonder if it is possible for {filter_expression} to be "*".
Actually, filter_expression isn't a glob, it's a tcl expression. In
the current incarnation of find, you want to use something like {expr
1}. That will make it work on everything. That said, it will recurse
into directories, so if you want the equivalent of the above xinstall
command you'd simply do
eval file copy [list [glob -directory ${source} *]] ${dest}
Of course, this does have the problem where glob won't find dot-
files. and if you use * .* instead of the *, it will, but it'll
find . and .. as well. It's annoying.
--
Kevin Ballard
http://kevin.sb.org
[EMAIL PROTECTED]
http://www.tildesoft.com
_______________________________________________
macports-dev mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo/macports-dev