I suspect your final question was directed primarily to other developers, not to
me, so I'm CCing vim_dev without trimming to give others a chance to read and respond.
On 13/02/11 12:53 AM, Bram Moolenaar wrote:
Ben -
This is really driving me nuts. Having config.mk in the repository just
causes operations to fail, leads to mistakes, hampers collaboration with
other developers, etc.. I've tried exclude patterns to various hg
commands as defaults and things like that, but it's far from
comprehensive, and there are bunches of edge cases that still cause
problems. So I'm desperately trying to find a solution that will work
and that you will find acceptable. I hope you don't mind me emailing you
individually about it.
I wonder whether the patch below would be an acceptable way to solve it?
Since only src/Makefile requires src/auto/config.mk, config.mk can be
moved into place by Makefile (outside src). This means we can remove
config.mk from the repository and it will stop hampering, well,
everything, but Vim will still compile out-of-the-box using just make if
someone gets the sources from the repository.
(BTW, my make doesn't mind if config.mk is even missing; it simply emits
a warning and continues, which results in configure running and creating
it, so maybe it isn't too important to have config.mk there anyway. I
guess other versions of make may behave differently. But even so, the
patch below means make will work if run outside of src, and at least in
some cases, it will work when run inside src, too, even without
config.mk there.)
What do you think?
When auto/config.mk is missing I get more errors:
5 src/Makefile:296: auto/config.mk: No such file or directory
6 src/Makefile:2134: warning: overriding commands for target `/'
7 src/Makefile:2131: warning: ignoring old commands for target `/'
8 src/Makefile:2140: warning: overriding commands for target `/g'
9 src/Makefile:2137: warning: ignoring old commands for target `/g'
10 src/Makefile:2146: warning: overriding commands for target `/r'
11 src/Makefile:2143: warning: ignoring old commands for target `/r'
12 src/Makefile:2152: warning: overriding commands for target `/rg'
13 src/Makefile:2149: warning: ignoring old commands for target `/rg'
14 src/Makefile:2164: warning: overriding commands for target `/e'
15 src/Makefile:2161: warning: ignoring old commands for target `/e'
The same thing happens from the top directory, but I can fix that by
adding the lines you gave to copy config.mk from config.mk.dist. Then it
works.
So, the solution would be to rename src/Makefile to src/Makefile2 and
write a src/Makefile that is similar to the one in the top directory.
How about that? Would that fail for anybody?
- Bram
As for me, I think that sounds great, Bram, and I think it should work across the
board.
Ben.
--
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