GNU bug report logs -
#31744
26.1; Improvements to make tags and make -C test
Previous Next
Reported by: Noam Postavsky <npostavs <at> gmail.com>
Date: Thu, 7 Jun 2018 01:51:02 UTC
Severity: wishlist
Tags: fixed, patch
Found in version 26.1
Fixed in version 26.2
Done: Noam Postavsky <npostavs <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> From: Noam Postavsky <npostavs <at> gmail.com>
> Cc: 31744 <at> debbugs.gnu.org
> Date: Fri, 08 Jun 2018 21:12:04 -0400
>
> >>> * src/Makefile.in: Create TAGS files in ${srcdir}, not build dir.
> >>
> >> I'm not sure I agree with this. Other projects I looked at produce
> >> TAGS in the build directory (but reference source files in srcdir, of
> >> course). Why do you think TAGS should go to the source directory?
>
> Oh, hmm. The original reason, is that when looking at a source file in
> Emacs, and then hitting M-. I get a prompt to visit the TAGS table,
> which starts from the source directory. Then I have to go looking for
> the TAGS file in the corresponding build directory.
I have grown a habit a long time ago to "M-x visit-tags-table" before
I issue the first "M-." command.
The default prompt is fine, because what else would you expect Emacs
to do in that case? But no one said that default is correct in every
single use case. E.g., a project could have one TAGS file in a
top-level directory, and you may be visiting a file in a subdirectory.
> especially since every build directory will have identical TAGS
> files anyway
That's what happens currently, but it isn't carved in stone. We
could, for example, have TAGS reflect only the files that are compiled
in on the current platform; other projects (like GDB, for example) do
just that. Then each build will have a different TAGS file.
> > They should not. Source should be able to be mounted read-only, and
> > all build products should be stored elsewhere.
>
> Emacs puts .elc files in the source directory.
*.elc files are generated at bootstrap time; when you build a tarball,
they are already there. By contrast, TAGS is built at build time and
doesn't come with the release tarball.
> I was under the impression that the general principal is that arch &
> config dependent files go in the build directory, and arch & config
> independent ones go in the source directory.
No, I think the principle is that the source tree holds everything
that comes with a release tarball.
This bug report was last modified 7 years and 38 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.