Re: Patch: problems with filename contains '~' in file-marks
On Sun 23-Sep-07 8:34pm -0600, Dasn wrote: > I've posted on vim_use some days before: > >>$ vim -c "q" 'foo ~ foo' >>$ vim -c "normal '0" >>E20: Mark not set > > Filename contains '~' character which is around with path separators > (i.e. ' ' and ',') has such problem. > > And the patch: > > Index: mark.c With Windows (using XP) the problem is far nastier. Simply opening a file with that name: gvim "foo ~ foo" causes problems. Specifically, I receive the following message: E303: Unable to open swap file for "foo C:\Documents and Settings\Bill foo", recovery impossible Notice how the '~' is expanded. In my environment: HOMEDRIVE=C: HOMEPATH=\Documents and Settings\Bill -- Best regards, Bill --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: how to regenerate runtime/syntax/vim.vim
ap wrote: > >On Sep 21, 2:53 pm, "björn" <[EMAIL PROTECTED]> wrote: > > >>Hi, >> >>I have added new commands to Vim (i.e. to ex_cmds.h) and I would like >>them to be properly highlighted when I edit .vim files (e.g. .gvimrc). >> I looked at runtime/syntax/vim.vim and from a comment therein I >>gather that this file is automatically generated, so I don't dare to >>add my commands "manually". My question is how do I generate this >>file? Or can I just add my new commands directly to it? >> >>Thanks, >>Björn >> >> > >One line vim syntax/vim.vim suggests, that it is generated by >something >called 'mkvimvim'. I am shure the author of the syntax file knows >more about this. > > mkvimvim is a script which extracts a number of functions, commands, and whatnot from the vim documentation and generates about half of syntax/vim.vim. You should place any syntax highlighting additions into ~/.vim/after/syntax/vim.vim . Regards, Chip Campbell --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Fwd: Which versiosn of ZSH of WS instead of NUL as result seperator (wrt: Patch: filename with spaces around ~ (tilde))
-- Forwarded message -- From: Bart Schaefer <[EMAIL PROTECTED]> Date: 23 Sep 2007 20:58 Subject: Re: Which versiosn of ZSH of WS instead of NUL as result seperator To: [EMAIL PROTECTED] On Sep 23, 8:06pm, Richard Hartmann wrote: } } Sorry, should have posted this [1] right away.. } } [1] http://www.google.com/codesearch?hl=en&q=+%22Some+versions+of+zsh+use+spaces+instead+of+NULs+to+separate%22+show:7brZGF5oKIU:mnXLpU4y0PU:6p3TOUN40_w&sa=N&cd=1&ct=rc&cs_p=http://www.minix3.org/software/vim-6.3.tar.bz2&cs_f=vim-6.3/src/os_unix.c#a0 }-- End of excerpt from Richard Hartmann So if I read this correctly, the question is: Which versions of zsh fail to use NUL between words in the output of "print -N"? As far as I know, the answer is: Versions of zsh so old that they don't support "print -N" in the first place. I don't know of any circumstances in which that comment in the vim source is meaningful. Either "print -N" will fail with "bad option" or it'll output words separated by NULs. My only conjecture is that the comment predates the code earlier in the file, that uses the STYLE_PRINT flag. --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: No use of 'el' (clear to end of line) ?
Yakov Lerner wrote: >I work on 60 lines x 120 columns miniterm over 9600 baud. > The speed is satisfactory except one case: when vim draws '~' > in every line on the init screen. This drawing is very slow, > takes several seconds to fill the screen. > > I took the vim output log and noticed that vim fills every > line with spaces and does not make use of 'el' escape > sequence (clear to end of line). > > 'infocmp xterm|grep el' shows that 'el' is defined. (TERM is xterm). > I think the speed can be improved here, the more that the whole > screen was cleared just prior to this ? Make sure no screen attributes are set for the "~" lines. -- BEDEVERE: Oh! LAUNCELOT: No "Arrggghhh ... " at the back of the throat. BEDEVERE: No! "Oh!" in surprise and alarm! "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net \\\ ///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\download, build and distribute -- http://www.A-A-P.org/// \\\help me help AIDS victims -- http://ICCF-Holland.org/// --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: [PATCH] Enable cross-compiling
> I've got a few questions: > > First of all, it seems I don't need to fiddle with the GTK check in > configure.in because it already assumes GTK is working when > cross-compiling. Are you sure? It might just pick up whatever GTK libraries you have on your build system, and then it may fail to run on the target when these GTK libraries aren't there. You can do something like --enable-gui=gtk2 --disable-gtktest . > Next, I wanted to write the installation instructions when > cross-compiling. In the file INSTALL a few non-existing files are > mentioned (INSTALL{ami,mac,pc,vms}.txt). Are they just missing in my > copy of vim71 or are they gone for good altogether ? These are in the "extra" archive. Look in ftp://ftp.vim.org/pub/vim/extra > I'd like to write the instructions into a new file, I'd name that > file "src/INSTALL.cross". Is that okay, should it be named differently > or put in a different directory ? INSTALLcross.txt is better. -- Compilation process failed successfully. /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net \\\ ///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\download, build and distribute -- http://www.A-A-P.org/// \\\help me help AIDS victims -- http://ICCF-Holland.org/// --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
[PATCH] Cross-compiling, second try.
Hi folks, here's the cross-compiling patch again. This time including the INSTALLcross.txt. Comments/suggestions/flames ? Marc -- Marc Haisenko Comdasys AG Rüdesheimer Straße 7 D-80686 München Tel: +49 (0)89 - 548 433 321 e-mail: [EMAIL PROTECTED] http://www.comdasys.com --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~--- diff -Nur vim71.orig/src/configure.in vim71/src/configure.in --- vim71.orig/src/configure.in 2007-05-12 11:19:27.0 +0200 +++ vim71/src/configure.in 2007-09-21 14:58:23.0 +0200 @@ -47,13 +47,6 @@ fi fi -dnl If configure thinks we are cross compiling, there is probably something -dnl wrong with the CC or CFLAGS settings, give an understandable error message -if test "$cross_compiling" = yes; then - AC_MSG_ERROR([cannot compile a simple program, check CC and CFLAGS - (cross compiling doesn't work)]) -fi - dnl gcc-cpp has the wonderful -MM option to produce nicer dependencies. dnl But gcc 3.1 changed the meaning! See near the end. test "$GCC" = yes && CPP_MM=M; AC_SUBST(CPP_MM) @@ -1986,11 +1979,24 @@ dnl Checks for libraries and include files. -AC_MSG_CHECKING(quality of toupper) -AC_TRY_RUN([#include -main() { exit(toupper('A') == 'A' && tolower('z') == 'z'); }], - AC_DEFINE(BROKEN_TOUPPER) AC_MSG_RESULT(bad), - AC_MSG_RESULT(good), AC_MSG_ERROR(failed to compile test program)) +AC_CACHE_CHECK([toupper is broken],[vim_cv_toupper_broken], + [ +AC_RUN_IFELSE([ +#include +main() { exit(toupper('A') == 'A' && tolower('z') == 'z'); } + ],[ +vim_cv_toupper_broken=yes +AC_MSG_RESULT(yes) + ],[ +vim_cv_toupper_broken=no +AC_MSG_RESULT(no) + ],[ +AC_MSG_ERROR(cross-compiling: please set 'vim_cv_toupper_broken') + ])]) + +if test "x$vim_cv_toupper_broken" = "xyes" ; then + AC_DEFINE(BROKEN_TOUPPER) +fi AC_MSG_CHECKING(whether __DATE__ and __TIME__ work) AC_TRY_COMPILE(, [printf("(" __DATE__ " " __TIME__ ")");], @@ -2202,28 +2208,52 @@ Or specify the name of the library with --with-tlib.])) fi -AC_MSG_CHECKING(whether we talk terminfo) -AC_TRY_RUN([ +AC_CACHE_CHECK([whether we talk terminfo], [vim_cv_terminfo], + [ +AC_RUN_IFELSE([ #ifdef HAVE_TERMCAP_H # include #endif main() -{char *s; s=(char *)tgoto("%p1%d", 0, 1); exit(!strcmp(s==0 ? "" : s, "1")); }], - AC_MSG_RESULT([no -- we are in termcap land]), - AC_MSG_RESULT([yes -- terminfo spoken here]); AC_DEFINE(TERMINFO), - AC_MSG_ERROR(failed to compile test program.)) +{char *s; s=(char *)tgoto("%p1%d", 0, 1); exit(!strcmp(s==0 ? "" : s, "1")); } +],[ + vim_cv_terminfo=no + AC_MSG_RESULT([no -- we are in termcap land]) +],[ + vim_cv_terminfo=yes + AC_MSG_RESULT([yes -- terminfo spoken here]) +],[ + AC_MSG_ERROR(cross-compiling: please set 'vim_cv_terminfo') +]) + ]) + +if test "x$vim_cv_terminfo" = "xyes" ; then + AC_DEFINE(TERMINFO) +fi if test "x$olibs" != "x$LIBS"; then - AC_MSG_CHECKING(what tgetent() returns for an unknown terminal) - AC_TRY_RUN([ + AC_CACHE_CHECK([what tgetent() returns for an unknown terminal], [vim_cv_tgent], +[ + AC_RUN_IFELSE([ #ifdef HAVE_TERMCAP_H # include #endif main() -{char s[1]; int res = tgetent(s, "thisterminaldoesnotexist"); exit(res != 0); }], - AC_MSG_RESULT(zero); AC_DEFINE(TGETENT_ZERO_ERR, 0), - AC_MSG_RESULT(non-zero), - AC_MSG_ERROR(failed to compile test program.)) +{char s[1]; int res = tgetent(s, "thisterminaldoesnotexist"); exit(res != 0); } + ],[ + vim_cv_tgent=zero + AC_MSG_RESULT(zero) + ],[ + vim_cv_tgent=non-zero + AC_MSG_RESULT(non-zero) + ],[ + AC_MSG_ERROR(failed to compile test program.) + ]) +]) + + if test "x$vim_cv_tgent" = "xzero" ; then +AC_DEFINE(TGETENT_ZERO_ERR, 0) + fi fi AC_MSG_CHECKING(whether termcap.h contains ospeed) @@ -2333,9 +2363,10 @@ dnl pty mode/group handling dnl dnl support provided by Luke Mewburn <[EMAIL PROTECTED]>, 931222 -AC_MSG_CHECKING(default tty permissions/group) rm -f conftest_grp -AC_TRY_RUN([ +AC_CACHE_CHECK([default tty permissions/group], [vim_cv_tty_group], + [ +AC_RUN_IFELSE([ #include #include #include @@ -2363,20 +2394,35 @@ fclose(fp); exit(0); } -],[ -if test -f conftest_grp; then - ptygrp=`cat conftest_grp` - AC_MSG_RESULT([pty mode: 0620, group: $ptygrp]) - AC_DEFINE(PTYMODE, 0620) - AC_DEFINE_UNQUOTED(PTYGROUP,$ptygrp) -else +],[ + if test -f conftest_grp; then + vim_cv_tty_group=`cat conftest_grp` + if test "x$vim_cv_tty_mode" = "x" ; then + vim_cv_tty_mode=0620 + fi + AC_MSG_RESULT([pty mode: $vim_cv_tty_mode, group: $vim_cv_tty_group]) + else + vim_cv_tty_group=world AC_MSG_RESULT([ptys are world accessable]) -fi -], -AC_MSG_RESULT([can't determine - assume ptys are world accessable]), -
Re: Fix for VC8 compiler warning
Mike Williams wrote: > The diff is against 7.1.116 - the warning appeared after patch 106. The > warning is: > > ops.c(2608) : warning C4018: '>' : signed/unsigned mismatch I'll include it, thanks. -- An indication you must be a manager: You feel sorry for Dilbert's boss. /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net \\\ ///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\download, build and distribute -- http://www.A-A-P.org/// \\\help me help AIDS victims -- http://ICCF-Holland.org/// --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: :catch value of a variable
On 9/21/07, Nikolai Weibull <[EMAIL PROTECTED]> wrote: > > On 9/21/07, Ben Schmidt <[EMAIL PROTECTED]> wrote: > > > Most commands do not take > > variables/expressions as input directly but need to be constructed using the > > :exe command. I don't see any good reason why :catch should differ. > > For one thing, :catch can't be :execute'd. Yes, separate catch can't. But you can 'exe'cute the whole try...endtry block -- as a workaround for you: exe "try | echo nosuchvar | catch // | echo 'Caught' | endtry" There in such a construct, you can use variable in place of catch regex. Regarding your pursuit of the modification of catch -- my opinion is that vimscript would gain if it had general mechanism to substitute vars and expressions in any part of command. Like $VAR workd in shell or [...] in tcl or Ctrl-R= in vim's own commandline mode. Such extension would cover any command not only catch. Maybe existing {...} can be extended to expand in any part of the command and contain any expression ? At the very least, Ctrl-R= could be made to work for script lines, too. Yakov --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: Patch: problems with filename contains '~' in file-marks
On 24/09/07 09:34 +0800, Dasn wrote: > >Hi, guys. >I've posted on vim_use some days before: > >>$ vim -c "q" 'foo ~ foo' >>$ vim -c "normal '0" >>E20: Mark not set > >Filename contains '~' character which is around with path separators >(i.e. ' ' and ',') has such problem. > >And the patch: > >Index: mark.c >=== >RCS file: /cvsroot/vim/vim7/src/mark.c,v >retrieving revision 1.13 >diff -u -p -r1.13 mark.c >--- mark.c 10 May 2007 16:48:03 - 1.13 >+++ mark.c 24 Sep 2007 01:06:36 - >@@ -499,7 +499,8 @@ getnextmark(startpos, dir, begin_line) > fname2fnum(fm) > xfmark_T *fm; > { >-char_u*p; >+char_u*p; >+char_u*ep; /* escaped string pointer */ > > if (fm->fname != NULL) > { >@@ -507,7 +508,32 @@ fname2fnum(fm) >* First expand "~/" in the file name to the home directory. >* Try to shorten the file name. >*/ >- expand_env(fm->fname, NameBuff, MAXPATHL); >+ >+ int escaped = FALSE; >+ /* expand_env use ',' and ' ' as separators. >+ * if filename contains them, escape. >+ */ >+ if (vim_strpbrk(fm->fname, ", ")) { >+ ep = vim_strsave_escaped(fm->fname, ", "); >+ escaped = True; >+ } >+ expand_env(ep, NameBuff, MAXPATHL); >+ >+ /* Unescape ',' and ' ' should be save, since "\\, " are >+ * not valid in username >+ */ >+ if ( escaped ) { >+ >+ char_u *uep = NameBuff; >+ char_u *uend = uep + STRLEN(NameBuff); >+ >+ while (*uep) { >+ if ( uep[0] == '\\' && ( uep[1] == ' ' || uep[1] == ',' ) ) >+ mch_memmove(uep, uep + 1, uend - uep); >+ uep++; >+ } >+ } >+ > mch_dirname(IObuff, IOSIZE); > p = shorten_fname(NameBuff, IObuff); > This crap aren't happy with users whose $HOME directory contain strings like "\," or "\ ". The following patch is better: Index: mark.c === RCS file: /cvsroot/vim/vim7/src/mark.c,v retrieving revision 1.13 diff -u -p -r1.13 mark.c --- mark.c 10 May 2007 16:48:03 - 1.13 +++ mark.c 24 Sep 2007 13:56:44 - @@ -507,7 +507,49 @@ fname2fnum(fm) * First expand "~/" in the file name to the home directory. * Try to shorten the file name. */ - expand_env(fm->fname, NameBuff, MAXPATHL); + + /* expand_env use ',' and ' ' as separators. +* if filename contains them, escape. +*/ + + int e_counter = 0; + char_u *ep; /* escaped string pointer */ + char_u *tp1, *tp2; /* temp pointers */ + + tp2 = fm->fname; + + while ((tp1 = vim_strpbrk(tp2, ", ")) != NULL) { + e_counter++; + tp2 = ++tp1; + } + + if (e_counter > 0) { + ep = vim_strsave_escaped(fm->fname, ", "); + expand_env(ep, NameBuff, MAXPATHL); + } else { + expand_env(fm->fname, NameBuff, MAXPATHL); + } + + /* Unescape ',' and ' ' of the filename */ + if (e_counter > 0) { + + char_u *begin, *end; + + begin = NameBuff; + end = begin + STRLEN(NameBuff); + + tp2 = end; + tp2--; + + while (tp2 > begin && e_counter > 0) { + if ( tp2[0] == '\\' && ( tp2[1] == ' ' || tp2[1] == ',')) { + mch_memmove(tp2, tp2 + sizeof(char_u), end - tp2); + e_counter--; + } + tp2--; + } + } + mch_dirname(IObuff, IOSIZE); p = shorten_fname(NameBuff, IObuff); -- Dasn --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
No use of 'el' (clear to end of line) ?
I work on 60 lines x 120 columns miniterm over 9600 baud. The speed is satisfactory except one case: when vim draws '~' in every line on the init screen. This drawing is very slow, takes several seconds to fill the screen. I took the vim output log and noticed that vim fills every line with spaces and does not make use of 'el' escape sequence (clear to end of line). 'infocmp xterm|grep el' shows that 'el' is defined. (TERM is xterm). I think the speed can be improved here, the more that the whole screen was cleared just prior to this ? Yakov --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Fix for VC8 compiler warning
Hi, The diff is against 7.1.116 - the warning appeared after patch 106. The warning is: ops.c(2608) : warning C4018: '>' : signed/unsigned mismatch Enjoy. Mike -- Ohgreat,nowthedamspacebardoesn'twork... --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~--- diff -r b63b0121c1cb src/ops.c --- a/src/ops.c Mon Sep 24 14:19:22 2007 +0100 +++ b/src/ops.c Mon Sep 24 14:22:33 2007 +0100 @@ -2605,7 +2605,7 @@ op_change(oap) /* Auto-indenting may have changed the indent. If the cursor was past * the indent, exclude that indent change from the inserted text. */ firstline = ml_get(oap->start.lnum); - if (bd.textcol > pre_indent) + if (bd.textcol > (colnr_T)pre_indent) { long new_indent = (long)(skipwhite(firstline) - firstline);
Re: how to regenerate runtime/syntax/vim.vim
On Sep 21, 2:53 pm, "björn" <[EMAIL PROTECTED]> wrote: > Hi, > > I have added new commands to Vim (i.e. to ex_cmds.h) and I would like > them to be properly highlighted when I edit .vim files (e.g. .gvimrc). > I looked at runtime/syntax/vim.vim and from a comment therein I > gather that this file is automatically generated, so I don't dare to > add my commands "manually". My question is how do I generate this > file? Or can I just add my new commands directly to it? > > Thanks, > Björn One line vim syntax/vim.vim suggests, that it is generated by something called 'mkvimvim'. I am shure the author of the syntax file knows more about this. -ap --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: [PATCH] Enable cross-compiling
On Monday 24 September 2007 13:31, Tony Mechelynck wrote: > vim-7.1.tar.bz2 contains only Unix files. I guess they are in the "extra" > archive. I have them in src/ but I installed all three archives (i.e., "extra" > and "lang" in addition to that one). > > Best regards, > Tony. Okay, I'll name it INSTALLcross.txt. So I'll post a patch later containing the changes in configure.in, a note in INSTALL and the file INSTALLcross.txt. Marc -- Marc Haisenko Comdasys AG Rüdesheimer Straße 7 D-80686 München Tel: +49 (0)89 - 548 433 321 e-mail: [EMAIL PROTECTED] http://www.comdasys.com --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: [PATCH] Enable cross-compiling
Marc Haisenko wrote: > On Monday 24 September 2007 12:52, Tony Mechelynck wrote: >> Marc Haisenko wrote: >>> Hi folks, >>> I've finished the INSTALL.cross file. Comments ? >>> Marc >>> >>> >> If you want consistency with the other files, shouldn't this be named >> INSTALLcross.txt instead? >> >> Best regards, >> Tony. > > Maybe, yes... I saw these INSTALL*.txt files mentioned in the INSTALL file > but > there are none in my vim-7.1.tar.bz2 ? Do you know why ? > Marc > vim-7.1.tar.bz2 contains only Unix files. I guess they are in the "extra" archive. I have them in src/ but I installed all three archives (i.e., "extra" and "lang" in addition to that one). Best regards, Tony. -- Reality is a cop-out for people who can't handle drugs. --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: [PATCH] Enable cross-compiling
On Monday 24 September 2007 12:52, Tony Mechelynck wrote: > > Marc Haisenko wrote: > > Hi folks, > > I've finished the INSTALL.cross file. Comments ? > > Marc > > > > > > If you want consistency with the other files, shouldn't this be named > INSTALLcross.txt instead? > > Best regards, > Tony. Maybe, yes... I saw these INSTALL*.txt files mentioned in the INSTALL file but there are none in my vim-7.1.tar.bz2 ? Do you know why ? Marc -- Marc Haisenko Comdasys AG Rüdesheimer Straße 7 D-80686 München Tel: +49 (0)89 - 548 433 321 e-mail: [EMAIL PROTECTED] http://www.comdasys.com --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: [PATCH] Enable cross-compiling
Marc Haisenko wrote: > Hi folks, > I've finished the INSTALL.cross file. Comments ? > Marc > > If you want consistency with the other files, shouldn't this be named INSTALLcross.txt instead? Best regards, Tony. -- hundred-and-one symptoms of being an internet addict: 17. You turn on your intercom when leaving the room so you can hear if new e-mail arrives. --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~---
Re: [PATCH] Enable cross-compiling
Hi folks, I've finished the INSTALL.cross file. Comments ? Marc -- Marc Haisenko Comdasys AG Rüdesheimer Straße 7 D-80686 München Tel: +49 (0)89 - 548 433 321 e-mail: [EMAIL PROTECTED] http://www.comdasys.com --~--~-~--~~~---~--~~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~--~~~~--~~--~--~--- Content: 1. Introduction 2. Necessary arguments for "configure" 3. Necessary environment variables for "configure" 4. Example 1. INTRODUCTION === This document discusses cross-compiling VIM on Unix-like systems. We assume you are already familiar with cross-compiling and have a working cross-compile environment with at least the following components: * a cross-compiler * a libc to link against * ncurses library to link against Discussing how to set up a cross-compile environment would go beyond the scope of this document. See http://www.kegel.com/crosstool/ for more information and a script that aids in setting up such an environment. The problem is that "configure" needs to compile and run small test programs to check for certain features. Running these test programs can't be done when cross-compiling so we need to pass the results these checks would produce via environment variables. See the list of variables and the examples at the end of this document. 2. NECESSARY ARGUMENTS FOR "configure" == You need to set the following "configure" command line switches: --build=... : The build system (i.e. the platform name of the system you compile on right now). For example, "i586-linux". --host=... : The system on which VIM will be run. Quite often this the name of your cross-compiler without the "-gcc". For example, "powerpc-603-linux-gnu". --target=... : Only relevant for compiling compilers. Set this to the same value as --host. --with-tlib=... : Which terminal library to. For example, "ncurses". 3. NECESSARY ENVIRONMENT VARIABLES FOR "configure" == Additionally to the variables listed here you might want to set the CPPFLAGS environment variable to enable optimization for your target system (e.g. "CPPFLAGS=-march=arm5te"). The following variables need to be set: ac_cv_sizeof_int: The size of an "int" C type in bytes. Should be "4" on all 32bit machines. vi_cv_path_python_conf: If Python support is enabled, set this variables to the path for Python's library implementation. This is a path like "/usr/lib/pythonX.Y/config" (the directory contains a file "config.c"). vi_cv_var_python_epfx: If Python support is enabled, set this variables to the execution prefix of your Python interpreter (that is, where it thinks it is running). This is the output of the following Python script: import sys; print sys.exec_prefix vi_cv_var_python_pfx: If Python support is enabled, set this variables to the prefix of your Python interpreter (that is, where was installed). This is the output of the following Python script: import sys; print sys.prefix vi_cv_var_python_version: If Python support is enabled, set this variables to the version of the Python interpreter that will be used. This is the output of the following Python script: import sys; print sys.version[:3] vim_cv_bcopy_handles_overlap: Whether the "memmove" C library call is able to copy overlapping memory regions. Set to "yes" if it does or "no" if it does not. You only need to set this if vim_cv_memmove_handles_overlap is set to "no". vim_cv_getcwd_broken: Whether the "getcwd" C library call is broken. Set to "yes" if you know that "getcwd" is implemented as 'system("sh -c pwd")', set to "no" otherwise. vim_cv_memcpy_handles_overlap: Whether the "memcpy" C library call is able to copy overlapping memory regions. Set to "yes" if it does or "no" if it does not. You only need to set this if both vim_cv_memmove_handles_overlap and vim_cv_bcopy_handles_overlap are set to "no". vim_cv_memmove_handles_overlap: Whether the "memmove" C library call is able to copy overlapping memory regions. Set to "yes" if it does or "no" if it does not. vim_cv_stat_ignores_slash: Whether the "stat" C library call ignores trailing slashes in the path name. Set to "yes" if it ignores them or "no" if it does not ignore them. vim_cv_tgetent: Whether the "tgetent" terminal library call returns a zero or non-zero value when it encounters an unknown terminal. Set to either the string "zero" or "non-zero", corresponding. vim_cv_term