Robert Hicks wrote:
A.J.Mechelynck wrote:
Robert Hicks wrote:
Georg Dahn wrote:
Hi!

--- Robert Hicks <[EMAIL PROTECTED]> wrote:
I see in the configure file that --with-features takes "tiny, small, normal, big or huge (default: normal).

Is there some place I can look to see what those options provide?

Try

:h :version

Best wishes,
Georg


Cool, exactly what I was looking for.  : )

Robert




Basically:
- the "tiny" version has nothing that can be omitted -- not even online help, visual mode, or expression evaluation; - the "small" version has visual mode and split windows (and online help) but it still lacks expression evaluation; - the "normal" version has a lot more, but it still lacks some important (to me) features, including support for multi-byte encodings (such as Chinese or Unicode) and for right-to-left writing systems (such as Hebrew, Arabic or Farsi);
- the "big" version has everything except the "profiling" feature;
- the "huge" version has it all.
- There are still some features (such as MzScheme, Perl, Python, Tcl, and, on X11 systems, GNOME, which requires a GTK+ GUI) which have to be included manually.

I would recommend to stay away from the "tiny" and "small" versions, unless you're running on a system with very limited memory like 16-bit Dos. Personally, since I like the big all-bells-and-whistles package, I source (not run) the following bash script just before running "make":

-----8<-----
#!/bin/bash
#
# this file must be sourced, not run
#
# set environment variables
export CONF_OPT_GUI='--enable-gnome-check'
export CONF_OPT_PERL='--enable-perlinterp'
export CONF_OPT_PYTHON='--enable-pythoninterp'
export CONF_OPT_TCL='--enable-tclinterp --with-tcl=tclsh8.4'
export CONF_OPT_RUBY='--enable-rubyinterp'
export CONF_OPT_MZSCHEME='--enable-mzschemeinterp'
export CONF_OPT_CSCOPE='--enable-cscope'
export CONF_OPT_MULTIBYTE='--enable-multibyte'
export CONF_OPT_OUTPUT='--enable-fontset'
export CONF_OPT_FEAT='--with-features=huge'
export CONF_OPT_COMPBY='"[EMAIL PROTECTED]"'
----->8-----

(if your browser, or mine, "beautified" the last line by breaking it between export and CONF_OPT_COMPBY, well, it shouldn't have.) You can use this script, changing anything you want, including of course at least the "compiled-by" line. If you lack the "development" packages required for one or other of the configured-in options, configure will turn it off.



A couple of questions if I may...

#1 How do I "source"? I have never done that prior to a make before...

In bash:

        source myconfig

or

        . myconfig

(assuming that you've copied the script as "myconfig" in the top directory of your build hierarchy, which has src/ runtime/ etc. subdirectories, and that you have made that directory current). Doing just "myconfig" won't work, because bash will run it in a temporary environment and restore the environment afterwards. It may sound strange but I've tried.

The advantage of this approach (setting environment variables) is that you don't need to make _any_ change in the Makefile, and yet "make" will invoke "configure" with _your_ preferred settings.


#2 If I do this:

export CONF_OPT_TCL='--enable-tclinterp --with-tcl=tclsh8.4'

do I have to pass anything else to point it to libs or anything? I have ActiveTcl installed on my HP/UX boxes.

You pass he TCL version as above; if your distribution of TCL is "properly" installed, "configure" (run by "make" the first time, or whenever you run "make reconfig" in the src/ directory) will find it and "make" will set up the compiler and linker command-lines to include the proper header files and libraries. For perl, python, etc. you don't even need to pass the interpreter version. If your TCL distribution is _not_ properly installed, or if you _don't_ have the tcl-devel package (or whatever it is called on your flavour of Linux), configure will exclude it and you'll end up with "-tcl" in the ":version" listing of your Vim executable, regardless of the presence of --enable-tclinterp


#3 If you are passing:

export CONF_OPT_FEAT='--with-features=huge'

and the huge version "has it all" why pass the multibyte, etc.?

At the moment I wrote this script, it wasn't clear to me that "multibyte" and "cscope" didn't need to be included manually. Also, if you want to *exclude* them, the presence of these lines makes it obvious that, e.g., to exclude +multi_byte (I don't recommend it, but it's your funeral not mine) you export "CONF_OPT_MULTIBYTE='--disable-multibyte'". The five "interpreted languages", the GNOME interface, and of course the "compiled by" line, *must* be configured manually, or they won't be included, not even in a Huge version. As for the "fontset" feature (+xfontset), ":help +feature-list" says that it is "system-dependent", and it seems that my system hasn't got what it takes, since my Vim executable ends up with -xfontset.


:Robert




Best regards,
Tony.

Reply via email to