Christian wrote:

> On Mi, 28 Aug 2019, Bram Moolenaar wrote:
> 
> > 
> > > Recently you've been proposing (and Bram has accepted) to create a lot
> > > of new source files to make the existing source easier to understand.
> > > The notion is laudable but it doesn't work well with my shadow
> > > directories: every time there is a new .c source (or .h; .pro sources
> > > are taken care of automatically by virtue of their being in a special
> > > src/proto directory for which a symlink has ben creted once and for
> > > all in the shadow directory), I have to manually create a symlink
> > > newsourcename.c -> ../newsourcename.c in each shadow directory,
> > > otherwise the "make" step ends in error with "No rule to make
> > > newsourcename.c. Stop.".
> > > 
> > > Do you think the following rule (added to the src/Makefile which is
> > > soft-linked from every shadow directory) could take care of my problem
> > > without undesired side-effects?
> > > 
> > > *: ../$@
> > >         ln -sv ../$@
> > > 
> > > The idea is to create a link if a needed file exist inthe parent (src)
> > > directory but not in the current (shadow) directory. Maybe the target
> > > sould be made less general to avoid using this rule out of turn.
> > 
> > What happens with "make foo"?  Doesn't it execute "ln -sv ../foo" then?
> > Or say "../foo" does not exist"?  Both are very confusing.
> > 
> > Perhaps we can the "ln" line from "make shadow" and add it with a
> > "shadowupdate" target:
> > 
> > shadowupdate:
> >     ln -s ../*.[chm] ../*.in ../*.sh ../*.xs ../*.xbm ../gui_gtk_res.xml 
> > ../toolcheck ../proto ../libvterm ../vimtutor ../gvimtutor ../install-sh 
> > ../Make_all.mak .
> > 
> > Probably reports a lot of error for already existing links.
> 
> using -f should force (re-creation) of the link and should not error.

Assuming that the user hasn't replaced the link with something else, I
suppose it's not a problem to overwrite the link.  I would prefer to
skip the existing files, but I don't see a flag for "ln" for that.

I can add the shadowupdate rule, but I do wonder how you keep Makefile
up-to-date, since that also needs to be changed.

-- 
All true wisdom is found on T-shirts.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/201908291859.x7TIx2Zt026572%40masaka.moolenaar.net.

Raspunde prin e-mail lui