unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Cleaner way to not build the ctags that ships with emacs?
@ 2016-03-09 20:56 Kaushal Modi
  2016-03-09 21:06 ` Eli Zaretskii
  2016-03-10  1:48 ` Paul Eggert
  0 siblings, 2 replies; 13+ messages in thread
From: Kaushal Modi @ 2016-03-09 20:56 UTC (permalink / raw)
  To: Emacs developers

[-- Attachment #1: Type: text/plain, Size: 843 bytes --]

Hi all,

I use the Exuberant ctags (now Universal ctags:
https://github.com/universal-ctags/ctags ) and whenever I build emacs, as
my emacs bin dir is put at a higher precedence (as I want my built emacs
binary to shadow the default emacs binary), the emacs ctags also shadows
the universal ctags binary.

So I have this hack in my emacs build script (csh).

    if ( -e ${MY_EMACS_INSTALL_DIR}/bin/ctags ) then
        \mv ${MY_EMACS_INSTALL_DIR}/bin/ctags
${MY_EMACS_INSTALL_DIR}/bin/ctags_emacs
    endif
    if ( -e ${MY_EMACS_INSTALL_DIR}/share/man/man1/ctags.1.gz ) then
        \mv ${MY_EMACS_INSTALL_DIR}/share/man/man1/ctags.1.gz
${MY_EMACS_INSTALL_DIR}/share/man/man1/ctags_emacs.1.gz
    endif

Is there a clean way to prevent the building of emacs ctags binary and man
pages attogether? May be a configure option?

--
Kaushal Modi

[-- Attachment #2: Type: text/html, Size: 1200 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-09 20:56 Cleaner way to not build the ctags that ships with emacs? Kaushal Modi
@ 2016-03-09 21:06 ` Eli Zaretskii
  2016-03-09 21:29   ` Kaushal Modi
  2016-03-10  1:48 ` Paul Eggert
  1 sibling, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-03-09 21:06 UTC (permalink / raw)
  To: Kaushal Modi; +Cc: emacs-devel

> From: Kaushal Modi <kaushal.modi@gmail.com>
> Date: Wed, 9 Mar 2016 15:56:03 -0500
> 
> Is there a clean way to prevent the building of emacs ctags binary and man pages attogether? May be a
> configure option?

Why not put your Exuberant ctags elsewhere, and use a shell alias to
invoke it?



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-09 21:06 ` Eli Zaretskii
@ 2016-03-09 21:29   ` Kaushal Modi
  2016-03-10  6:10     ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Kaushal Modi @ 2016-03-09 21:29 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Emacs developers

[-- Attachment #1: Type: text/plain, Size: 844 bytes --]

On Wed, Mar 9, 2016 at 4:06 PM, Eli Zaretskii <eliz@gnu.org> wrote:

> Why not put your Exuberant ctags elsewhere, and use a shell alias to
> invoke it?
>

That's definitely an option. But I was looking for a way to declutter my
$PATH and $MANPATH of stuff I am never going to use. Also I prefer to not
hard code aliases to binaries because my binary locations are dynamic (the
$PATH is update based on the RHEL OS version and version of the software
(master/stable/etc)).

Would removing "ctags${EXEEXT}" from this line (using something like sed)
prevent building of ctags and its manpage?

INSTALLABLES = etags${EXEEXT} ctags${EXEEXT} emacsclient${EXEEXT} $(CLIENTW) \
               ebrowse${EXEEXT}


(
http://git.savannah.gnu.org/cgit/emacs.git/tree/lib-src/Makefile.in?id=711ca362e7f8ca7c4f664dc2fe60bc5fa4e4f4fe#n153
)


--
Kaushal Modi

[-- Attachment #2: Type: text/html, Size: 1832 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-09 20:56 Cleaner way to not build the ctags that ships with emacs? Kaushal Modi
  2016-03-09 21:06 ` Eli Zaretskii
@ 2016-03-10  1:48 ` Paul Eggert
  2016-03-10  6:56   ` Eli Zaretskii
  1 sibling, 1 reply; 13+ messages in thread
From: Paul Eggert @ 2016-03-10  1:48 UTC (permalink / raw)
  To: Kaushal Modi, Emacs developers

It should be fairly easy to add an option to 'configure'. Something like 
this, say:

./configure --disable-lib-src=ctags

where the option argument specifies which lib-src programs to build. Is 
that something you'd like to develop?



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-09 21:29   ` Kaushal Modi
@ 2016-03-10  6:10     ` Eli Zaretskii
  0 siblings, 0 replies; 13+ messages in thread
From: Eli Zaretskii @ 2016-03-10  6:10 UTC (permalink / raw)
  To: Kaushal Modi; +Cc: emacs-devel

> From: Kaushal Modi <kaushal.modi@gmail.com>
> Date: Wed, 9 Mar 2016 16:29:28 -0500
> Cc: Emacs developers <emacs-devel@gnu.org>
> 
>  Why not put your Exuberant ctags elsewhere, and use a shell alias to
>  invoke it?
> 
> That's definitely an option. But I was looking for a way to declutter my $PATH and $MANPATH of stuff I am
> never going to use. Also I prefer to not hard code aliases to binaries because my binary locations are dynamic
> (the $PATH is update based on the RHEL OS version and version of the software (master/stable/etc)).

An alias can use any shell construct you want, so it can be dynamic.

> Would removing "ctags${EXEEXT}" from this line (using something like sed) prevent building of ctags and its
> manpage?

Yes.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10  1:48 ` Paul Eggert
@ 2016-03-10  6:56   ` Eli Zaretskii
  2016-03-10 11:47     ` Ulrich Mueller
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-03-10  6:56 UTC (permalink / raw)
  To: Paul Eggert; +Cc: emacs-devel, kaushal.modi

> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Wed, 9 Mar 2016 17:48:46 -0800
> 
> It should be fairly easy to add an option to 'configure'. Something like 
> this, say:
> 
> ./configure --disable-lib-src=ctags
> 
> where the option argument specifies which lib-src programs to build. Is 
> that something you'd like to develop?

Maybe we should even make that the default?  Does anyone still use the
ctags that is distributed with Emacs?



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10  6:56   ` Eli Zaretskii
@ 2016-03-10 11:47     ` Ulrich Mueller
  2016-03-10 12:34       ` Kaushal Modi
                         ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Ulrich Mueller @ 2016-03-10 11:47 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: kaushal.modi, Paul Eggert, emacs-devel

>>>>> On Thu, 10 Mar 2016, Eli Zaretskii wrote:

>> From: Paul Eggert <eggert@cs.ucla.edu>
>> Date: Wed, 9 Mar 2016 17:48:46 -0800
>> 
>> It should be fairly easy to add an option to 'configure'. Something
>> like this, say:
>> 
>> ./configure --disable-lib-src=ctags
>> 
>> where the option argument specifies which lib-src programs to
>> build. Is that something you'd like to develop?

> Maybe we should even make that the default?  Does anyone still use
> the ctags that is distributed with Emacs?

Wouldn't that argument apply to etags as well? Exuberant Ctags has an
etags mode which can be enabled by the -e option, or by invoking the
program under the name etags.

Ulrich



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10 11:47     ` Ulrich Mueller
@ 2016-03-10 12:34       ` Kaushal Modi
  2016-03-10 12:48       ` Dmitry Gutov
  2016-03-10 13:05       ` Eli Zaretskii
  2 siblings, 0 replies; 13+ messages in thread
From: Kaushal Modi @ 2016-03-10 12:34 UTC (permalink / raw)
  To: Ulrich Mueller; +Cc: Eli Zaretskii, Paul Eggert, Emacs developers

[-- Attachment #1: Type: text/plain, Size: 901 bytes --]

>> Paul Eggert
> It should be fairly easy to add an option to 'configure'.
> Something like this, say:
>    ./configure --disable-lib-src=ctags
> where the option argument specifies which lib-src programs to build. Is
that something you'd like to develop?

OK. I've never scripted configure but I will give it a shot. From a brief
reading, it looks like I need to modify configure.ac.

>> Ulrich Mueller
> Wouldn't that argument apply to etags as well? Exuberant Ctags has an
> etags mode which can be enabled by the -e option, or by invoking the
> program under the name etags.

You are correct that the argument applies to etags as well. I have never
used etags but my understanding was that it was used along with xref (which
I could be totally wrong about). I haven't used xref either. If emacs
doesn't need etags internally, then I don't mind an option to prevent its
build too.

--
Kaushal Modi

[-- Attachment #2: Type: text/html, Size: 1136 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10 11:47     ` Ulrich Mueller
  2016-03-10 12:34       ` Kaushal Modi
@ 2016-03-10 12:48       ` Dmitry Gutov
  2016-03-10 13:05       ` Eli Zaretskii
  2 siblings, 0 replies; 13+ messages in thread
From: Dmitry Gutov @ 2016-03-10 12:48 UTC (permalink / raw)
  To: Ulrich Mueller, Eli Zaretskii; +Cc: Paul Eggert, emacs-devel, kaushal.modi

On 03/10/2016 01:47 PM, Ulrich Mueller wrote:

> Wouldn't that argument apply to etags as well? Exuberant Ctags has an
> etags mode which can be enabled by the -e option, or by invoking the
> program under the name etags.

It wouldn't. etags development has been re-invigorated recently, with 
Eli taking over maintainership. And IIUC Debian[-based] packages switch 
to our etags when the emacs package is installed.




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10 11:47     ` Ulrich Mueller
  2016-03-10 12:34       ` Kaushal Modi
  2016-03-10 12:48       ` Dmitry Gutov
@ 2016-03-10 13:05       ` Eli Zaretskii
  2016-03-10 13:48         ` Ulrich Mueller
  2 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2016-03-10 13:05 UTC (permalink / raw)
  To: Ulrich Mueller; +Cc: kaushal.modi, eggert, emacs-devel

> Date: Thu, 10 Mar 2016 12:47:09 +0100
> Cc: Paul Eggert <eggert@cs.ucla.edu>, emacs-devel@gnu.org,
>         kaushal.modi@gmail.com
> From: Ulrich Mueller <ulm@gentoo.org>
> 
> > Maybe we should even make that the default?  Does anyone still use
> > the ctags that is distributed with Emacs?
> 
> Wouldn't that argument apply to etags as well?

No, because the Exuberant program is named "ctags", not "etags".



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10 13:05       ` Eli Zaretskii
@ 2016-03-10 13:48         ` Ulrich Mueller
  2016-03-10 14:20           ` Eli Zaretskii
  2016-03-10 15:05           ` Stefan Monnier
  0 siblings, 2 replies; 13+ messages in thread
From: Ulrich Mueller @ 2016-03-10 13:48 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: kaushal.modi, eggert, emacs-devel

>>>>> On Thu, 10 Mar 2016, Eli Zaretskii wrote:

>> Date: Thu, 10 Mar 2016 12:47:09 +0100
>> Cc: Paul Eggert <eggert@cs.ucla.edu>, emacs-devel@gnu.org,
>> kaushal.modi@gmail.com
>> From: Ulrich Mueller <ulm@gentoo.org>
>> 
>> > Maybe we should even make that the default?  Does anyone still use
>> > the ctags that is distributed with Emacs?
>> 
>> Wouldn't that argument apply to etags as well?

> No, because the Exuberant program is named "ctags", not "etags".

Sorry, but I don't understand. Exuberant installs a ctags binary and
(if configured with the --enable-etags option) an etags symlink
pointing to it.

Why would the argument be different for the case of two separate
binaries, as opposed to one binary and a symlink to it? Either way,
there will be name (and file) collisions.

Ulrich



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10 13:48         ` Ulrich Mueller
@ 2016-03-10 14:20           ` Eli Zaretskii
  2016-03-10 15:05           ` Stefan Monnier
  1 sibling, 0 replies; 13+ messages in thread
From: Eli Zaretskii @ 2016-03-10 14:20 UTC (permalink / raw)
  To: Ulrich Mueller; +Cc: kaushal.modi, eggert, emacs-devel

> Date: Thu, 10 Mar 2016 14:48:41 +0100
> Cc: eggert@cs.ucla.edu, emacs-devel@gnu.org, kaushal.modi@gmail.com
> From: Ulrich Mueller <ulm@gentoo.org>
> 
> >> Wouldn't that argument apply to etags as well?
> 
> > No, because the Exuberant program is named "ctags", not "etags".
> 
> Sorry, but I don't understand. Exuberant installs a ctags binary and
> (if configured with the --enable-etags option) an etags symlink
> pointing to it.
> 
> Why would the argument be different for the case of two separate
> binaries, as opposed to one binary and a symlink to it? Either way,
> there will be name (and file) collisions.

Because I think there's no reason nowadays to invoke ctags that comes
with Emacs, which is not true for etags.  And also because the default
name of Exuberant program is ctags, not etags.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Cleaner way to not build the ctags that ships with emacs?
  2016-03-10 13:48         ` Ulrich Mueller
  2016-03-10 14:20           ` Eli Zaretskii
@ 2016-03-10 15:05           ` Stefan Monnier
  1 sibling, 0 replies; 13+ messages in thread
From: Stefan Monnier @ 2016-03-10 15:05 UTC (permalink / raw)
  To: emacs-devel

> Sorry, but I don't understand. Exuberant installs a ctags binary and
> (if configured with the --enable-etags option) an etags symlink
> pointing to it.

Exactly because of the need for "the --enable-etags option".

IOW it would make sense for Emacs to have an "--enable-ctags" option and
hence behave "symmetrically" to Exuberant Ctags.


        Stefan




^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2016-03-10 15:05 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-09 20:56 Cleaner way to not build the ctags that ships with emacs? Kaushal Modi
2016-03-09 21:06 ` Eli Zaretskii
2016-03-09 21:29   ` Kaushal Modi
2016-03-10  6:10     ` Eli Zaretskii
2016-03-10  1:48 ` Paul Eggert
2016-03-10  6:56   ` Eli Zaretskii
2016-03-10 11:47     ` Ulrich Mueller
2016-03-10 12:34       ` Kaushal Modi
2016-03-10 12:48       ` Dmitry Gutov
2016-03-10 13:05       ` Eli Zaretskii
2016-03-10 13:48         ` Ulrich Mueller
2016-03-10 14:20           ` Eli Zaretskii
2016-03-10 15:05           ` Stefan Monnier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).