Re: [PATCH] Add --with-tcltk and --without-tcltk to configure.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Eygene Ryabinkin <rea-git@xxxxxxxxxxx> writes:

> --with-tcltk enables the search of the Tcl/Tk interpreter. If no
> interpreter is found then Tcl/Tk dependend parts are disabled.
>
> --without-tcltk unconditionally disables Tcl/Tk dependent parts.
>
> The original behaviour is not changed: bare './configure' just
> installs the Tcl/Tk part doing no checks for the interpreter.
>
> Makefile knob named NO_TCLTK was introduced. It prevents the build
> and installation of the Tcl/Tk dependent parts.
>
> Signed-off-by: Eygene Ryabinkin <rea-git@xxxxxxxxxxx>
> ---

Thanks.

Is this supposed to be the first in the series?  I thought you
said you were going to do NO_TCLTK without anything else at all
first, and then TCLTK_PATH patch.  I am a bit lost here.

> +# Define NO_TCLTK if you do not want Tcl/Tk GUI.
> +#
> +# The TCLTK_PATH variable governs the location of the Tck/Tk interpreter.
> +# If not set it defaults to the bare 'wish'. If it is set to the empty
> +# string then NO_TCLTK will be forced (this is used by configure script).
> +#

Grumble.  If you are doing this, then there is not much point to
have two separate patches, is it?

> @@ -684,7 +696,9 @@ ifneq (,$X)
>  endif
>  
>  all::
> +ifndef NO_TCLTK
>  	$(QUIET_SUBDIR0)git-gui $(QUIET_SUBDIR1) all
> +endif
>  	$(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' all
>  	$(QUIET_SUBDIR0)templates $(QUIET_SUBDIR1)

Although you were not supposed to be talking about paths, since
you've already introduced TCLTK_PATH, it should be passed down
to git-gui here, I think.

> @@ -955,11 +974,17 @@ dist: git.spec git-archive
>  	@mkdir -p $(GIT_TARNAME)
>  	@cp git.spec $(GIT_TARNAME)
>  	@echo $(GIT_VERSION) > $(GIT_TARNAME)/version
> +ifndef NO_TCLTK
>  	@$(MAKE) -C git-gui TARDIR=../$(GIT_TARNAME)/git-gui dist-version
>  	$(TAR) rf $(GIT_TARNAME).tar \
>  		$(GIT_TARNAME)/git.spec \
>  		$(GIT_TARNAME)/version \
>  		$(GIT_TARNAME)/git-gui/version
> +else
> +	$(TAR) rf $(GIT_TARNAME).tar \
> +		$(GIT_TARNAME)/git.spec \
> +		$(GIT_TARNAME)/version
> +endif
>  	@rm -rf $(GIT_TARNAME)
>  	gzip -f -9 $(GIT_TARNAME).tar
>  

Why should a source distribution exclude git-gui/ directory?  I
think it is sensible to ship a source that contains all.  You
are shipping gitk even without NO_TCLTK anyway, too.

And from the part 2:

> @@ -705,6 +709,12 @@ endif
>  strip: $(PROGRAMS) git$X
>  	$(STRIP) $(STRIP_OPTS) $(PROGRAMS) git$X
>  
> +gitk-wish: gitk GIT-GUI-VARS
> +	$(QUIET_GEN)rm -f $@ $@+ && \
> +	sed -e'1,3s|^exec .* "$$0"|exec $(subst |,'\|',$(TCLTK_PATH_SQ)) "$$0"|' < gitk > $@+ && \
> +	chmod +x $@+ && \
> +	mv -f $@+ $@
> +

This subst() is a nice attention to the detail.  I like it,
although in practice I do not think anybody is insane enough to
have a pipe character in the directory name that leads to wish.

I separated your two patches into three with minor modifications
and parked them in 'pu'.  We need to arrange with Shawn when to
apply the git-gui/ parts of the patch to his tree, but we are
not in a rush.

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]