Re: [PATCH v4] tags: much faster, parallel "make tags"

From: Michal Marek
Date: Wed Aug 19 2015 - 09:25:50 EST


On 2015-05-11 22:25, Alexey Dobriyan wrote:
> ctags is single-threaded program. Split list of files to be tagged into
> almost equal parts, process them on every CPU and merge the results.

Sorry, I missed the v4 of the patch.


> + # Remove headers.
> + for i in .make-tags.t*; do
> + sed -i -e '/^!/d' $i
> + done
> +
> + # Write final header.
> + $1 -f $2 /dev/null
> +
> + # Append sorted results.
> + sort .make-tags.t* >>$2
> + rm -f .make-tags.t*

This still breaks Exuberant ctags in emacs mode:
$ ln -s /usr/bin/ctags ~/bin/etags
$ make TAGS
GEN TAGS
etags: "TAGS" doesn't look like a tag file; I refuse to overwrite it.
etags: "TAGS" doesn't look like a tag file; I refuse to overwrite it.

The TAGS file is corrupted because of the sorting.

Michal
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/