Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-18 Thread Ali Akcaagac
On Fri, 2007-05-18 at 07:21 +0200, Stephan Hegel wrote:
 ncftpget ftp.vim.org . '/pub/editors/vim/patches/7.1/7.1.*'
 fetches all patches to the local directory in one go.
 
 And it does it in a smart way, see the second try:
 ncftpget ftp.vim.org . '/pub/editors/vim/patches/7.1/7.1.*'
 ncftpget /pub/editors/vim/patches/7.1/7.1.*: local file appears
to be the same as the remote file, download is not necessary.

Hi,

A lot of the readers here als prefer lftp as good choice for ftp'ing.
Your two lines of getting the patches is indeed nice. Can also be done
with wget only. Please allow me to remind the people here on the
getvim script that I once wrote. It collect all patches and made one
huge patchfile out of it. Quite trivial to use.

http://www.akcaagac.com/tools/files/shell/getvim.sh

Greetings,

Ali Akcaagac



Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-18 Thread Stephan Hegel

Hi,

Ali Akcaagac wrote:
A lot of the readers here als prefer lftp as good choice for 
ftp'ing.

Well, since I do use ncftp anyway on several platforms I've
got ncftpget for free and so the posted approach is perfectly
fine for me. I don't speak for others, of course, just trying
to show and share a neat solution.

Your two lines of getting the patches is indeed nice. 

It is only one line ;). Similar like your wget approach in
getvim.sh:
   ncftpget ftp.vim.org . '/pub/editors/vim/patches/7.1/7.1.*'

So my fully-automatic build - this has been my goal - looks
now like this (snippet from the Makefile):

all:
tar xfj vim-7.1.tar.bz2
tar xfz vim-7.1-lang.tar.gz
tar xfz vim-7.1-extra.tar.gz
(cd vim-7.1.patches ; ncftpget ftp.vim.org . 
'/pub/editors/vim/patches/7.1/7.1.*')
cat vim-7.1.patches/7.1.*  patchfile
(cd vim71 ; patch -p0  ../patchfile)
(cd vim71 ; ./configure --prefix=$(PREFIX) --with-x
--enable-gui=gtk2 --enable-multibyte --enable-xim --enable-fontset
--enable-perlinterp --enable-cscope  make)



Can also be done with wget only. Please allow me to remind the people
here on the getvim script that I once wrote. It collect all patches 
and made one huge patchfile out of it. Quite trivial to use.

Using one huge patchfile is also my approach as you can see
above and on Unix/Linux systems this can be done with a simple
cat 7.1.*  patchfile 'cause the right sorting order is already
built-in. If somebody has got another experience with, e.g.
different locale settings, I would appreciate to know.

As Tony has pointed out already, this doesn't work on Dos /
Windows as the sorting order seems to be different there,
unfortunately.


http://www.akcaagac.com/tools/files/shell/getvim.sh

I had a look: interesting and new to me is your approach with
seq. I'll remember this when I need a sequence of formatted,
ascending numbers in a shell script. But for creating the vim
patchfile with all patches included it is overdone, IMO. In this
case you even need to edit the script with every new patch (see:
$SUBLEVELEND). Plus you still need to apply the patch and build
manually.

Kind regards,
  Stephan.




Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread Stephan Hegel

Hi,

A.J.Mechelynck wrote:
- Using cat is OK as long as you can be sure that you'll get them in 
numeric order: this is usually the case on Unix but not necessarily on 
Dos, where a wildcarded filename usually gets its results in directory 
order, not sorted by filename.

Well, you are right: I'm on Linux and wasn't aware of the different DOS
sorting order. So, the following below applies to Linux/Unix only ...

- By patching individually, if one of the patches fails horribly you may 
decide not to try the following.
- Usually there aren't more than a handful of _new_ patches anyway, so 
(except when starting from scratch with many patches already published) 
it's hardly worth the trouble going to a cat step.

What you have described even on your Web page, IMHO still too much manual
work. After downloading new patches with ncftp I just type make all
with the following Makefile:

-
PREFIX=/usr/local

help:
@echo Available targets:
@echoall
@echoinstall
@echoclean

all: clean
tar xfj vim-7.1.tar.bz2
tar xfz vim-7.1-lang.tar.gz
tar xfz vim-7.1-extra.tar.gz
cat vim-7.1.patches/7.1.*  patchfile
(cd vim71 ; patch -p0  ../patchfile)
(cd vim71 ; ./configure --prefix=$(PREFIX) --with-x --enable-gui=gtk2
--enable-multibyte --enable-xim --enable-fontset --enable-perlinterp
--enable-cscope  make)

install:
(cd vim71; umask 022; installwatch -o 
/home/steve/install.log/vim-7.1.log make install)
chmod 644 /home/steve/install.log/vim-7.1.log

clean:
rm -rf patchfile
rm -rf vim71

.PHONY: help all install clean
--

... and everything is done in less than 150 sec. Works for me for a long
time and starting from scratch keeps me out of trouble with old objects,
etc. Should not happen with make ... yes, this is what optimists always
say, but there is still Murphy ;).

BTW, make should stop when patch or any other action fails.

Interesting would  be an extension to download the patches automagically.
Comments  ideas ?

Regards,
  Stephan.


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread A.J.Mechelynck

Stephan Hegel wrote:

Hi,

A.J.Mechelynck wrote:
- Using cat is OK as long as you can be sure that you'll get them in 
numeric order: this is usually the case on Unix but not necessarily on 
Dos, where a wildcarded filename usually gets its results in directory 
order, not sorted by filename.

Well, you are right: I'm on Linux and wasn't aware of the different DOS
sorting order. So, the following below applies to Linux/Unix only ...

- By patching individually, if one of the patches fails horribly you 
may decide not to try the following.
- Usually there aren't more than a handful of _new_ patches anyway, so 
(except when starting from scratch with many patches already 
published) it's hardly worth the trouble going to a cat step.

What you have described even on your Web page, IMHO still too much manual
work. After downloading new patches with ncftp I just type make all
with the following Makefile:

-
PREFIX=/usr/local

help:
@echo Available targets:
@echoall
@echoinstall
@echoclean

all: clean
tar xfj vim-7.1.tar.bz2
tar xfz vim-7.1-lang.tar.gz
tar xfz vim-7.1-extra.tar.gz
cat vim-7.1.patches/7.1.*  patchfile
(cd vim71 ; patch -p0  ../patchfile)
(cd vim71 ; ./configure --prefix=$(PREFIX) --with-x 
--enable-gui=gtk2

--enable-multibyte --enable-xim --enable-fontset --enable-perlinterp
--enable-cscope  make)

install:
(cd vim71; umask 022; installwatch -o 
/home/steve/install.log/vim-7.1.log make install)

chmod 644 /home/steve/install.log/vim-7.1.log

clean:
rm -rf patchfile
rm -rf vim71

.PHONY: help all install clean
--

... and everything is done in less than 150 sec. Works for me for a long
time and starting from scratch keeps me out of trouble with old objects,
etc. Should not happen with make ... yes, this is what optimists always
say, but there is still Murphy ;).

BTW, make should stop when patch or any other action fails.

Interesting would  be an extension to download the patches automagically.
Comments  ideas ?

Regards,
  Stephan.



Comments:

- Since on Linux I build only one version of Vim (a full-featured GUI-enabled 
executable which can also run in console mode) I prefer to keep already-built 
objects, doing what the Mozilla guys call a depend build rather than a 
clobber build (which is what you do). I've found that it spares quite a lot 
of time, finishing in a few seconds rather than a few minutes.


- When I really need a clobber build (because my configuration has changed), 
then I do make reconfig in the src subfolder.


- After make clean, make will invoke configure, you don't need to run it 
separately. (I keep my configure options in a separate script, which I 
source in bash to set the required environment variables.)


- What is ncftp? On my openSUSE 10.2 system I have a program called ftp but 
none called ncftp.



Best regards,
Tony.
--
hundred-and-one symptoms of being an internet addict:
241. You try to look for Net Search even when you're in File Manager.


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread Michael Henry

A.J.Mechelynck wrote:
- What is ncftp? On my openSUSE 10.2 system I have a program called 
ftp but none called ncftp.


ncftp (pronounced Nik-F-T-P) is an alternative command-line FTP client. 
 Slackware ships it[1] (or so the link leads me to believe).  You can 
read more at the ncftp[2] web site.


Michael Henry

[1]: http://www.slackbook.org/html/basic-network-commands-ftp.html
[2]: http://www.ncftp.com/


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread Stephan Hegel

A.J.Mechelynck wrote:
- What is ncftp? On my openSUSE 10.2 system I have a program called 
ftp but none called ncftp.

[39]./home/steve: rpm -qi ncftp
Name: ncftpRelocations: (not relocatable)
Version : 3.1.9 Vendor: SUSE LINUX Products 
GmbH, Nuernberg, Germany
Release : 2 Build Date: Fri 09 Sep 2005 
06:15:16 PM CEST
Install date: Sun 16 Oct 2005 06:07:57 AM CEST  Build Host: berlioz.suse.de
Group   : Productivity/Networking/Ftp/Clients   Source RPM: 
ncftp-3.1.9-2.src.rpm
Size: 1038391  License: Artistic License
Signature   : DSA/SHA1, Fri 09 Sep 2005 06:52:45 PM CEST, Key ID 
a84edae89c800aca
Packager: http://www.suse.de/feedback
URL : http://www.ncftp.com/
Summary : A Comfortable FTP Program
Description :
This program has been in service on UNIX systems since 1991 and is a
popular alternative to the standard FTP program, /usr/bin/ftp. NcFTP
offers many ease-of-use and performance enhancements over the stock FTP
client, and runs on a wide variety of UNIX platforms as well as
operating systems such as Microsoft Windows and Apple Mac OS X.



Authors:

Mike Gleason [EMAIL PROTECTED]
Distribution: SUSE LINUX 10.0 (i586)



Regards,
  Stephan.


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread A.J.Mechelynck

Stephan Hegel wrote:

A.J.Mechelynck wrote:
- What is ncftp? On my openSUSE 10.2 system I have a program called 
ftp but none called ncftp.

[39]./home/steve: rpm -qi ncftp
Name: ncftpRelocations: (not relocatable)
Version : 3.1.9 Vendor: SUSE LINUX 
Products GmbH, Nuernberg, Germany
Release : 2 Build Date: Fri 09 Sep 2005 
06:15:16 PM CEST
Install date: Sun 16 Oct 2005 06:07:57 AM CEST  Build Host: 
berlioz.suse.de
Group   : Productivity/Networking/Ftp/Clients   Source RPM: 
ncftp-3.1.9-2.src.rpm

Size: 1038391  License: Artistic License
Signature   : DSA/SHA1, Fri 09 Sep 2005 06:52:45 PM CEST, Key ID 
a84edae89c800aca

Packager: http://www.suse.de/feedback
URL : http://www.ncftp.com/
Summary : A Comfortable FTP Program
Description :
This program has been in service on UNIX systems since 1991 and is a
popular alternative to the standard FTP program, /usr/bin/ftp. NcFTP
offers many ease-of-use and performance enhancements over the stock FTP
client, and runs on a wide variety of UNIX platforms as well as
operating systems such as Microsoft Windows and Apple Mac OS X.



Authors:

Mike Gleason [EMAIL PROTECTED]
Distribution: SUSE LINUX 10.0 (i586)



Regards,
  Stephan.



Well, AFAICT it has disappeared between SuSE 10.0 and 10.2. I have packages 
named lftp and lukemftp (which are installed); YaST also shows, among FTP 
clients, gftp, tftp and yafc; but the only available packages (in category 
zzzAll) whose name starts nc are ncpfs, ncurses and ncurses-devel. 
/usr/bin/ftp is actually a link, /bin/ftp - /etc/alternatives/ftp - 
/usr/bin/pftp where pftp comes from the lukemftp package which is the 
enhanced ftp client in NetBSD



Best regards,
Tony.
--
How do you like the new America?  We've cut the fat out of the
government, and more recently the heart and brain (the backbone was
gone some time ago).  All we seem to have left now is muscle.  We'll be
lucky to escape with our skins!


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread scott
On Thursday 17 May 2007 13:32, A.J.Mechelynck wrote:
  A.J.Mechelynck wrote:
  - What is ncftp? On my openSUSE 10.2 system I have a program
  called ftp but none called ncftp.
 Well, AFAICT it has disappeared between SuSE 10.0 and 10.2. I have
 packages named lftp and lukemftp (which are installed); YaST also

i think a lot of software that was installed by default in 10.0 was 
left off 10.2, but any of it you want is readily available if you get 
your installation sources correct

i've got suse 10.2 and i got curious after seeing this thread

a visit to yast, software management, searched for ncftp and it 
brought ncftp right to the fore, installed it for me, and i've been 
happily learning features since -- imagine commandline recall that 
works in ftp!  bookmarks!

anyway, i've got the plain jane installation sources:

http://download.opensuse.org/distribution/10.2/repo/oss
http://download.opensuse.org/distribution/10.2/repo/non-oss

ncftp should have popped right up for you -- what do you have 
in Configured Software Catalogs (under installation sources)?

sc


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread A.J.Mechelynck

scott wrote:
[...]
ncftp should have popped right up for you -- what do you have 
in Configured Software Catalogs (under installation sources)?


sc



Status Refresh Name URL
On On  YaST 
iso:///?iso=openSUSE-10.2-GM-DVD-i386.isourl=hd:///?device=/dev/hda2filesystem=auto

On On  YUM  http://gd.tuwien.ac.at/linux/suse.com/suse/update/10.2
On On  YUM 
http://ftp.hosteurope.de/mirror/ftp.suse.com/pub/suse/update/10.2


[x] Synchronize changes with ZENworks



Anyway, ftp (aka pftp from the lukemftp package), and occasionally lftp, are 
good enough for me.



Best regards,
Tony.
--
hundred-and-one symptoms of being an internet addict:
242. You turn down a better-paying job because it doesn't come with
 a free e-mail account.


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread Stephan Hegel

A.J.Mechelynck wrote:
Well, AFAICT it has disappeared between SuSE 10.0 and 10.2. 

No, my copy of Suse 10.2 contains the package:

[18]/media/dvdram/suse/i586: rpm -qip ncftp-3.2.0-17.i586.rpm
Name: ncftp Relocations: (not relocatable)
Version : 3.2.0 Vendor: SUSE LINUX Products GmbH, 
Nuernberg, Germany
Release : 17Build Date: Sun 26 Nov 2006 
03:50:45 AM CET
Install date: (not installed)   Build Host: fix.suse.de
Group   : Productivity/Networking/Ftp/Clients   Source RPM: 
ncftp-3.2.0-17.src.rpm
Size: 1069921   License: Artistic License
Signature   : DSA/SHA1, Sun 26 Nov 2006 03:51:52 AM CET, Key ID a84edae89c800aca
Packager: http://bugs.opensuse.org
URL : http://www.ncftp.com/
Summary : A Comfortable FTP Program
Description :
This program has been in service on UNIX systems since 1991 and is a
popular alternative to the standard FTP program, /usr/bin/ftp. NcFTP
offers many ease-of-use and performance enhancements over the stock FTP
client and runs on a wide variety of UNIX platforms as well as
operating systems like Microsoft Windows and Apple Mac OS X.

Authors:

Mike Gleason [EMAIL PROTECTED]
Distribution: openSUSE 10.2 (i586)


In case you have the six-CD version, the following note at www.opensuse.org
could explain why you don't have it: Due to size limitations of CD images, you
get only a subset of all packaged software for openSUSE.

But then you should be able to fetch the missing packages from ftp.opensuse.org.

Rgds,
  Stephan.




Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-17 Thread Stephan Hegel

scott wrote:
a visit to yast, software management, searched for ncftp and it 
brought ncftp right to the fore, installed it for me, and i've been 
happily learning features since -- imagine commandline recall that 
works in ftp!  bookmarks!

And I just figured out that it comes with an utility called ncftpget:
So
   ncftpget ftp.vim.org . '/pub/editors/vim/patches/7.1/7.1.*'
fetches all patches to the local directory in one go.

And it does it in a smart way, see the second try:
   ncftpget ftp.vim.org . '/pub/editors/vim/patches/7.1/7.1.*'
   ncftpget /pub/editors/vim/patches/7.1/7.1.*: local file appears
  to be the same as the remote file, download is not necessary.

Perfect for running from a build script. That is what I have been
looking for.

One more big plus: besides for almost all sorts of Un*x, ncftp is
available for Windows as well.

Rgds,
  Stephan.


[Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-16 Thread A.J.Mechelynck

Forward to vim-dev list. See my comments at bottom.

 Original Message 
Subject: Re: compiling vim7.1 (huge version) gets build with normal version
Date: Tue, 15 May 2007 08:14:28 -0700
From: Tushar Desai [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: A.J.Mechelynck [EMAIL PROTECTED]
References: [EMAIL PROTECTED]	 
[EMAIL PROTECTED]


HI Tony,

I tried what you suggested, but now I'm getting this really weird
compile error (I'm compiling on ubuntu 7.04 with gnome 2.0)

gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK
-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include
-I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/freetype2 -I/usr/include/libpng12   -DORBIT2=1 -pthread
-I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0
-I/usr/include/libgnomecanvas-2.0 -I/usr/include/gtk-2.0
-I/usr/include/libart-2.0 -I/usr/include/gconf/2
-I/usr/include/libbonoboui-2.0 -I/usr/include/gnome-vfs-2.0
-I/usr/lib/gnome-vfs-2.0/include -I/usr/include/gnome-keyring-1
-I/usr/include/orbit-2.0 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -I/usr/include/libbonobo-2.0
-I/usr/include/bonobo-activation-2.0 -I/usr/include/pango-1.0
-I/usr/include/freetype2 -I/usr/lib/gtk-2.0/include
-I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/libpng12
-I/usr/include/libxml2 -O2 -fno-strength-reduce -Wall
-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/lib/perl/5.8/CORE  -I/usr/include/python2.5 -pthread
-I/usr/include/tcl8.4  -D_REENTRANT=1  -D_THREAD_SAFE=1
-D_LARGEFILE64_SOURCE=1  -I/usr/lib/ruby/1.8/i486-linux  -o
objects/gui_gtk.o gui_gtk.c
In file included from /usr/include/glib-2.0/glib/gi18n.h:23,
from /usr/include/libbonobo-2.0/bonobo/bonobo-i18n.h:37,
from /usr/include/libgnome-2.0/libgnome/gnome-i18n.h:41,
from /usr/include/libgnome-2.0/libgnome/libgnome.h:30,
from /usr/include/libgnomeui-2.0/gnome.h:5,
from gui_gtk.c:62:
/usr/include/libintl.h:92: error: expected identifier or '(' before ';' token
make[1]: *** [objects/gui_gtk.o] Error 1
make[1]: Leaving directory `/home/tushar/vim/vim71/src'
make: *** [myself] Error 2

Regards,
-tushar.
- End Original Message -

This may be the problem addressed by patch 7.1.001, see 
http://ftp.vim.org/pub/vim/patches/7.1/


So, try the following:

cd ~/vim/vim71
mkdir -pv patches
cd patches
ftp ftp.vim.org
Name: ftp
Password: ftp
cd pub/vim/patches/7.1
mget *
a
bye
cd ..
patch -p0 patches/7.1.001
patch -p0 patches/7.1.002
# beware of beautifying mailers! Here comes a long line starting rsync
# followed by a line starting vim
rsync -avzcP --delete --exclude=/dos/ ftp.nluug.nl::Vim/runtime/ ./runtime/ 
21 | tee rsync.log

vim -es -u NONE -c '%s/^.*\r//' -cx rsync.log
echo $CONF_OPT_FEAT
(if the reply is not --with-features=huge):
source myconfig
make 21 |tee make.log

etc. If you still get the same error, someone else will have to help you.


Best regards,
Tony.
--
*** NEWSFLASH ***
Russian tanks steamrolling through New Jersey  Details at eleven!


Re: [Fwd: Re: compiling vim7.1 (huge version) gets build with normal version]

2007-05-16 Thread A.J.Mechelynck

Stephan Hegel wrote:

A.J.Mechelynck wrote:

patch -p0 patches/7.1.001
patch -p0 patches/7.1.002

As long as you have two patches this can be done easily. But what
if you have 100+ ?

Then try this:
  cat patches/7.1.*  patchfile
  patch -p0  patchfile
  rm patchfile
Done.

Rgds,
   Stephan.



If you have more than a hundred, Bram sets up recapitulative patches for one 
hundred patchlevels at a time, so if you want to patch plain-vanilla 7.0 to 
compile 7.0.233 you would do


gunzip -c patches/7.0.001-100.gz |patch -p0
gunzip -c patches/7.0.101-200.gz |patch -p0
patch -p0 patches/7.0.201
patch -p0 patches/7.0.202
patch -p0 patches/7.0.203

etc.

With command-line editing, you can recall the latest command and change only 
the last (or the last two) digit(s) every time.


But normally you would download and implement the patches a few at a time as 
they are published, and there would never be many of them at any one time, 
except maybe the first time you compile Vim; so now (that there aren't many 
patches to the latest version) is a good time to start.


- Using cat is OK as long as you can be sure that you'll get them in numeric 
order: this is usually the case on Unix but not necessarily on Dos, where a 
wildcarded filename usually gets its results in directory order, not sorted by 
filename.
- By patching individually, if one of the patches fails horribly you may 
decide not to try the following.
- Usually there aren't more than a handful of _new_ patches anyway, so (except 
when starting from scratch with many patches already published) it's hardly 
worth the trouble going to a cat step.



Best regards,
Tony.
--
Justice, n.:
A decision in your favor.