At 2:51 AM -0500 12/20/04, Michael G Schwern wrote: >So one could say... > >INST_LIBDIR = [.blib.lib.Some] > >INST_LIBDIR_DIR = [.blib.lib]Some.dir > >$(INST_LIBDIR) : $(INST_LIBDIR_DIR) > $(NOOP) > >$(INST_LIBDIR_DIR) > $(MKDIR) $@ > >$(INST_LIBDIR) is still useful in the Makefile like always >(ie. "$(INST_LIBDIR)file" which is like "$(INST_LIBDIR)/file" on Unix) >and $(INST_LIBDIR_DIR) can be used to ensure the directory is created. > >I think this will work out. The previously deprecated dir_target() method >can be reinstated to generate these targets. > >So. Thoughts?
That should work, depending on the value of $(MKDIR). Using the native method, you have to use the directory-as-directory syntax rather than the directory-as-file syntax: $ create/directory/log foo.dir %CREATE-E-DIRNOTCRE, FOO.DIR directory file not created -LIB-F-INVFILSPE, invalid file specification $ create/directory/log [.foo] %CREATE-I-CREATED, DISK1:[MYDIR.FOO] created $ Perl's mkdir seems to allow either syntax, though I don't know whether that's true for all versions of Perl and VMS. >[1] For those who don't know, VMS file paths basically work like this. > >Unix Windows VMS >/usr/local/bin/perl \usr\local\bin\perl [usr.local.bin]perl I think that would actually be usr:[local.bin]perl >./dir/dir/dir dir\dir\dir [.dir.dir.dir] >./dir/dir/file .\dir\dir\file [.dir.dir]file >../dir/dir/file ..\dir\dir\file [-dir.dir]file >../../dir/dir/file ..\..\dir\dir\file [--dir.dir]file You've got some dots missing -- that would be [-.dir.dir]file and [--.dir.dir]file. >N/A C:\dir\dir\file C:[dir.dir]file -- ________________________________________ Craig A. Berry mailto:[EMAIL PROTECTED] "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser