vim on windows mobile

183 views
Skip to first unread message

mobi phil

unread,
Jul 9, 2009, 10:35:28 AM7/9/09
to reply-t...@googlegroups.com, vim...@vim.org
Hello,
 
I successfully built vim72 on windows mobile, and would be happy if I would be able to propagate my changes upstream. Before doing that I still need to fix some small bugs, and prepare a decent status of files. However first I have a few questions/comments:
 
1. vim for windows mobile is built with cegcc
2. the configure should be updated for this platform (some extra macros need to be added)
3. the os_mswin, gui_w32 etc family of files should flow into the linux distro
 
All the changes in the os_mswin and family are protected by the WINCE macro, so they should not brake the normal windows build.
 
I would not put any effort in preparing a "checkin" unless I get green light.
 
Any opinion/comment?
 

--
rgrds,
mobi phil

being mobile, but including technology
http://mobiphil.com

Bram Moolenaar

unread,
Jul 9, 2009, 12:36:50 PM7/9/09
to mobi phil, reply-t...@googlegroups.com, vim...@vim.org

Mobi Phil wrote:

> I successfully built vim72 on windows mobile, and would be happy if I would
> be able to propagate my changes upstream. Before doing that I still need to
> fix some small bugs, and prepare a decent status of files. However first I
> have a few questions/comments:
>
> 1. vim for windows mobile is built with cegcc
> 2. the configure should be updated for this platform (some extra macros need
> to be added)
> 3. the os_mswin, gui_w32 etc family of files should flow into the linux
> distro
>
> All the changes in the os_mswin and family are protected by the WINCE macro,
> so they should not brake the normal windows build.
>
> I would not put any effort in preparing a "checkin" unless I get green
> light.
>
> Any opinion/comment?

Support for more platforms is always welcome.

I wonder how you manage to run congifure on a windows system. You
probably need to write a src/README*.txt file to explain the procedure
and what tools are needed.

Is Windows CE the same thing as Windows mobile?

Next thing to do would be to make a diff available, so that we can have
an idea of what the change looks like.

--
hundred-and-one symptoms of being an internet addict:
79. All of your most erotic dreams have a scrollbar at the right side.

/// Bram Moolenaar -- Br...@Moolenaar.net -- 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 ///

mobi phil

unread,
Jul 9, 2009, 4:05:23 PM7/9/09
to Bram Moolenaar, vim...@googlegroups.com, vim...@vim.org, markus.h...@web.de
Hello,


Thanks for the positive answer...




some clarifications:

1. windows ce and windows mobile are more or less the same what concerns the API. Windows ce is more history, windows mobile is running on pda's and several mobile phones. ... You should keep a try... you world in pocket with vim .)  (http://www.pdashop.nl for people in Nederlands :) )

2. The CeGCC (http://cegcc.sourceforge.net) project implements a cross compiler for Windows CE. You can develop on linux, and create apps that run on a PDA or a WinCE cell phone

3. therefore the configure will run on linux or other platform where cegcc is built

4. I am not very good in configure (autoconf family) macros, what is needed that configure tests for windows ce platform for gui instead of checking for ncurses/terminal libs, when run with target host cegcc.

I will do some more tests and fixes, and then will prepare a decent diff, however the question is are you ready to include the os_mswin.c family files in the linux distro?


P.S.
I have just found now the answer of Markus Heidelberg, to my prev. email (http://www.mail-archive.com/vim...@googlegroups.com/msg06855.html), thanks Markus!

regards
mobiphil
http://mobiphil.com

Tony Mechelynck

unread,
Jul 11, 2009, 11:03:46 AM7/11/09
to Vim Developers
On 09/07/09 16:35, mobi phil wrote:
> Hello,
> I successfully built vim72 on windows mobile, and would be happy if I
> would be able to propagate my changes upstream. Before doing that I
> still need to fix some small bugs, and prepare a decent status of files.
> However first I have a few questions/comments:
> 1. vim for windows mobile is built with cegcc
> 2. the configure should be updated for this platform (some extra macros
> need to be added)
> 3. the os_mswin, gui_w32 etc family of files should flow into the linux
> distro
> All the changes in the os_mswin and family are protected by the WINCE
> macro, so they should not brake the normal windows build.
> I would not put any effort in preparing a "checkin" unless I get green
> light.
> Any opinion/comment?

I see you've already got Bram's, who has the final say about what goes
or doesn't go into "mainstream" Vim, but he replied in very few words,
so I'll allow myself a somewhat longer comment.

Note that the preferred posting disposition on these lists is
bottom-posting: put your reply below what you're replying to, and cut
away what is not relevant to your reply.

As Bram said, Vim versions for additional platforms are always welcome,
but of course, everything that already compiles must keep going in
identically the same way: this means that any differences in the source
MUST be within #ifdef, #ifndef, #if defined(...) or #if !defined(...). I
suppose that's what you mean above by "protected by the WINCE macro".


The usual way to compile Vim is to use a configure script on Unix-like
platforms (run by vim76/src/Makefile which is invoked by vim76/Makefile)
and ad-hoc makefiles (named vim72/src/*.mak) for each compiler used to
make a Windows-like Vim (Make_cyg.mak for Cygwin gcc when making a Vim
version which can run without Cygwin installed, Make_ming.mak for MinGW
gcc, Make_mvc.mak for Microsoft Visual C, Make_bc5.mak for the Borland
BCC32 compiler version 5, etc.)

The Unix configure script produces test programs, tries to compile, link
and run them, to see what happens, and sets a lot of defines according
to the results It also checks if the software libraries required for the
--enable-* and --with-* configure arguments are both present and
accompanied by appropriate header files, and if if one of them isn't, it
disables the corresponding compile-time feature in Vim. All this
wouldn't work very easily for cross-compiling, I think.

OTOH, the ad-hoc makefiles get their configuration variables (possibly
including the paths where some libraries are installed) from the user,
either as defines on the make command-line or as environment variables
set before running make. See my HowTo pages for examples:
http://users.skynet.be/antoine.mechelynck/vim/compunix.htm for a
detailed example of how I compile Vim on Linux, and
http://users.skynet.be/antoine.mechelynck/vim/compile.htm for an equally
detailed example of how I used to compile Vim when I was on Windows.
This is faster than the configure method, and easier for the make
utility, but of course if you declare that you have, let's say, MzScheme
installed at such-and-such a place on the disk, there's no check that it
can actually be found and used.


In any case (again, as Bram said), if you hope to get your changes
accepted, you should prepare a context diff based on the latest bugfixed
sources (currently 7.2.228, NOT the 7.2.000 sources available in archive
form at ftp.vim.org) and taken from the top vim72 directory, so that the
patches could be applied by running, maybe, "patch -p0 < winmobile.diff"
(without the quotes of course) from that same directory on the other
guy's computer. Then send that patch either to Bram or to the vim_dev
list (or both). To avoid corruption in transit, I recommend sending it
as an attachment to an email rather than as part of the text.

One possible way of taking such a diff would be to have the Vim 7.2.228
distribution at, let's say, d:\devel\vim\vim72 and below and your
modified sources at, let's say, d:\devel\vim72mobile and below, no
extraneous files in either of these trees, then run (in Cygwin or similar)

cd /cygdrive/d/devel/vim/vim72mobile
diff -c -r ../vim72 . > ../vim72mobile.diff

You may need to change the above lines depending on the shell used to
run diff, but I hope you understand what I mean.


Best regards,
Tony.
--
Your conscience never stops you from doing anything. It just stops you
from enjoying it.

mobi phil

unread,
Jul 11, 2009, 11:20:27 AM7/11/09
to vim...@googlegroups.com
Thank you Tony,


>Note that the preferred posting disposition on these lists is
>bottom-posting: put your reply below what you're replying to, and cut
>away what is not relevant to your reply.

This at least keeps a bit of order...

I will probably not bother with configure scripts, I will provide a Makefile, and do diff against the dir of the version mentioned by you.
Reply all
Reply to author
Forward
0 new messages