From: UnixOS2 Archive To: "UnixOS2 Archive" Date: Thu, 21 Mar 2002 04:20:08 EST-10EDT,10,-1,0,7200,3,-1,0,7200,3600 Subject: [UnixOS2_Archive] No. 170 ************************************************** Wednesday 20 March 2002 Number 170 ************************************************** Subjects for today 1 Re: TeX : Stefan Neis 2 Re: RAMFS performance patch : Kris Steenhaut 3 Re: RAMFS performance patch : Kris Steenhaut 4 RAMFS performance patch : Andrew Belov" 5 Re: Re: Running ./configure : Henry Sobotka 6 Re: Porting Joe's Own Editor (JOE) : Thomas E. Dickey" 7 Re: Multi-threaded db.lib : Thomas E. Dickey" 8 Re: Perl test time-out : Henry Sobotka 9 Re: Running ./configure : John Poltorak 10 Re: TeX : Mentore Siesto 11 Building Gettext v0.11.1 : John Poltorak 12 Re: Perl test time-out : John Poltorak 13 Re: Re: Running ./configure : csaba.raduly at sophos.com 14 Re: Running ./configure : Masaru Nomiya 15 Multi-threaded db.lib : John Poltorak 16 Re: Perl test time-out : Henry Sobotka 17 Re: Re: Running ./configure : csaba.raduly at sophos.com 18 info dir : John Poltorak 19 Re: Re: Running ./configure : John Poltorak 20 Re: info dir : Stefan Neis 21 Re: Perl test time-out : John Poltorak 22 Re: Using SLANG : Thomas Dickey 23 Re: Perl test time-out : csaba.raduly at sophos.com 24 Re: Perl test time-out : John Poltorak 25 Patch file modifier : John Poltorak 26 GNU Find patch : John Poltorak 27 Using SLANG : John Poltorak 28 Re: info dir : Andreas Buening 29 Re: Re: Running ./configure : Andreas Buening 30 Re: Re: Running ./configure : John Poltorak 31 Re: Re: Running ./configure : Dave and Natalie" 32 Re: Re: Running ./configure : Dave and Natalie" 33 Re: Re: Running ./configure : Andreas Buening **= Email 1 ==========================** Date: Thu, 21 Mar 2002 00:53:06 +0100 (CET) From: Stefan Neis Subject: Re: TeX On Wed, 20 Mar 2002, John Poltorak wrote: > I've just had a look at:- > > http://www2s.biglobe.ne.jp/~vtgf3mpr/tex/web2c.htm > > but don't see how teTeX and web2c are related - I'm not sure if they are > or not. Well, they are not really related. TeX is a typesetting language for writing documents, "web" (IIRC) is a language for writing documented program code ("literate programming") which is handled by preprocessors that on the one hand generate TeX output (for the documentation) and on the other hand C output to be feed to some compiler. Both just happen to be invented by the same person (IIRC), so they are usually distributed together. OK, now let's start the next off-topic discussion: ;-) _IMHO_, "web" has the big disadvantage to mix documentation and source code in a way that makes both parts completely unreadable, but of course it has the advantage of constantly reminding you of the need to document source code. There definitely are fans of that kind of mixture, but I'm most definitely not one of them. If someone doesn't want to write useful documentation, he still succees to not do it with web, and if somebody is willing to do that boring kind of job, it shouldn't really be a problem do to so in a different file. I don't believe the idea behind e.g. quicksort belongs into its source code, explain the idea elsewhere (as detailed as required for the audience) and just put some comments/reminders into the source code. But that's really a matter of personal tastes: On the one hand, there are persons claiming it's impossible to develop and maintain large projects in any other language than web (or some similar thing, there have been new - less strict - implementations of that basic idea which are able to cope e.g. with C++), whereas other persons just do develop large projects in plain C (Holger could comment on how (im)possible it was to find a way across XFree86 and how much easier porting this software to OS/2 would (not) have been if it was implemented using web instead of plain C ;-) ). Regards, Stefan -- Micro$oft is not an answer. It is a question. The answer is 'no'. **= Email 2 ==========================** Date: Thu, 21 Mar 2002 00:59:04 +0100 From: Kris Steenhaut Subject: Re: RAMFS performance patch Andrew Belov schreef: > I have created a Q&D patch that eliminates the performance degradation of RAMFS on > large files, so the processing time is no longer proportional to size_of_file^2, and > RAMFS handles creation of CD-images and archiving quite normally. > > If somebody wants to test it, then download ftp://ftp.unixos2.com/incoming/ramfs64p.zip > and install it over the RAMFS files (there is a pre-built debug version too). The > RAMFS64 fix (to report 64M of free space rather than 1M) is there as well. Not that obvious where that is, unless you mean ramfsd.ifs . See you after the reboot. -- Groeten uit Gent, Kris **= Email 3 ==========================** Date: Thu, 21 Mar 2002 01:19:09 +0100 From: Kris Steenhaut Subject: Re: RAMFS performance patch Andrew Belov schreef: > I have created a Q&D patch that eliminates the performance degradation of RAMFS on > large files, so the processing time is no longer proportional to size_of_file^2, and > RAMFS handles creation of CD-images and archiving quite normally. > > If somebody wants to test it, then download ftp://ftp.unixos2.com/incoming/ramfs64p.zip > and install it over the RAMFS files (there is a pre-built debug version too). After the reboot: OK. The Ramfs.ifs in the archive is the RamFS64 one all right. In order to avoid confusion, I think it would be better to keep the RamFS64.ifs name. I suppose we really don't have to care anymore about the original 1 Mb reporting one. I downloaded a Mozilla Nighty. (done already). And the patch is working excellent. Really excellent. A job well done. Congratulations and a big thank you !!! -- Groeten uit Gent, Kris **= Email 4 ==========================** Date: Thu, 21 Mar 2002 02:23:14 +0300 (MSK) From: "Andrew Belov" Subject: RAMFS performance patch I have created a Q&D patch that eliminates the performance degradation of RAMFS on large files, so the processing time is no longer proportional to size_of_file^2, and RAMFS handles creation of CD-images and archiving quite normally. If somebody wants to test it, then download ftp://ftp.unixos2.com/incoming/ramfs64p.zip and install it over the RAMFS files (there is a pre-built debug version too). The RAMFS64 fix (to report 64M of free space rather than 1M) is there as well. For the heavy-duty operation it should be noted that this solution is still far from perfect - if there is a plenty of relatively small files, two side-effects will be likely observed: (1) memory overhead - 4K per each file for cluster map, i.e. 15000 files now require 60 extra megabytes. (2) the kernel VMM will starve as RAMFS allocates too many separate objects: a 64K file will consume 7 chunks of different size rather than a single 64K piece as before. The "critical mass" for my 14.xxx system is about 15000 files totalling 270M, while the genuine RAMFS allowed for 57000 files. On the other hand, RAMFS becomes pretty well suitable for temporary activities. In long term, it may even be enhanced with a "hard link" feature as it already contains the "inodes" represented by cluster maps, missing only an API. **= Email 5 ==========================** Date: Thu, 21 Mar 2002 02:50:00 -0500 From: Henry Sobotka Subject: Re: Re: Running ./configure Stephen Amadei wrote: > > I still can't get my system type... I tried > > configure --host=os2_emx (and os2, i386-pc-os2_emx, etc.) If you grab any config.guess and config.sub dated later than January 2001 (?), they should have EMX support. h~ **= Email 6 ==========================** Date: Thu, 21 Mar 2002 05:40:02 -0500 (EST) From: "Thomas E. Dickey" Subject: Re: Porting Joe's Own Editor (JOE) On Wed, 20 Mar 2002, Marty wrote: > On Wed, 20 Mar 2002 08:41:37 +0000, John Poltorak wrote: > > > What do the CYGWIN folks do? Do they have TTY support? sort-of (it has bugs) > Here's the termcap entry I'm using: > OS2CMD:\ > :co#80:li#25:bs:pt:bl=^G:le=^H:do=^J:\ > :cl=\E[2J:ce=\E[K:cd=\E[J:\ > :cm=\E[%i%d;%dH:cs=\E[%i%d;%dr:\ > :up=\E[A:do=\E[B:le=\E[C:ri=\E[D:nd=\E[C:\ > :so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\ > :mb=\E[5m:md=\E[1m:mr=\E[7m:me=\E[m:as=^N:ae=^O:\ > :ku=\000H:kd=\000P:kl=\000K:kr=\000M:kb=^H:\ > :kn#4:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\ > :im=\E[4h:ei=\E[4l:dl=\E[M:ic=\E[ at :dc=\E[P: > > As far as key mappings go, it looks like JOE is ignoring the ku/kd/kl/kr settings > and doing its own thing. But I can override it in the JOERC with the following > specified under the "main" section of keymappings: OS/2 is a little odd because of the nulls (\000) in the key bindings. JOE is a little retarded, but may catch on if you change the termcap to use ^ at rather than \000. > > uparw ^ at H > dnarw ^ at P > rtarw ^ at M > ltarw ^ at K -- T.E.Dickey http://invisible-island.net ftp://invisible-island.net **= Email 7 ==========================** Date: Thu, 21 Mar 2002 06:25:47 -0500 (EST) From: "Thomas E. Dickey" Subject: Re: Multi-threaded db.lib On Thu, 21 Mar 2002, John Poltorak wrote: > > Is there a way of testing db.lib to see if it is multi-threaded? probably not. But you can look at the symbols it uses. On other systems, errno is usually redefined to the name of a function - I'd look to see if I could spot that in the .lib file -- T.E.Dickey http://invisible-island.net ftp://invisible-island.net **= Email 8 ==========================** Date: Thu, 21 Mar 2002 07:46:39 -0500 From: Henry Sobotka Subject: Re: Perl test time-out John Poltorak wrote: > > Is there any way this lib/io_sock test could be failing because C: is a > RAMFS disk? No, it's failing because fork() is broken so the client-server setup required for the accept test isn't there; hence the timeout. And for OS/2, the broken fork() should be detected by the conditional on lines 47-48, and the test should end on line 50. h~ **= Email 9 ==========================** Date: Thu, 21 Mar 2002 08:14:39 +0000 From: John Poltorak Subject: Re: Running ./configure On Wed, Mar 20, 2002 at 08:05:53PM -0500, Stephen Amadei wrote: > > Hello... I have most of the unixish tools installed on my OS/2 > system. I am trying to run the configure script in BASH to > try a quick compile of the SDTS libraries... What, and where are the SDTS libraries? > This same package configured and compiled under Cygwin. There's been an army of paid people putting Cygwin together... > ----Steve > Stephen Amadei > Dandy.NET! CTO > Atlantic City, NJ > -- John **= Email 10 ==========================** Date: Thu, 21 Mar 2002 08:26:40 +0100 (CET) From: Mentore Siesto Subject: Re: TeX On Wed, 20 Mar 2002, Christian Hennecke wrote: CH >On Wed, 20 Mar 2002 18:21:18 +0100 (CET), Mentore Siesto wrote: CH > CH >>AFAIK, one year ago or so Jun Sawataishi (who writes on this list) ported CH >>teTeX for Os/2. A discussion on teTeX vs emTeX arose, and seems teTeX CH >>has got no big advantage over emTeX apart from being OpenSource (IIRC) and CH >>more up-to-date. CH > CH >BTW, emTeX/TDS has been updated to 0.56 not that long ago. Great, I'll fetch it soon. BTW, ftp or websites? -- Mentore Siesto Team OS/2 Italia (http://www.teamos2.it) Home page: http://www.geocities.com/mentoruccio/ **= Email 11 ==========================** Date: Thu, 21 Mar 2002 09:36:55 +0000 From: John Poltorak Subject: Building Gettext v0.11.1 Has anyone managed to build this latest version of Gettext? :- ftp://ftp.gnu.org/pub/gnu/gettext/gettext-0.11.1.tar.gz It includes an OS/2 specific Makefile, but it won't work here... -- John **= Email 12 ==========================** Date: Thu, 21 Mar 2002 09:53:09 +0000 From: John Poltorak Subject: Re: Perl test time-out On Wed, Mar 20, 2002 at 04:29:40PM -0500, Henry Sobotka wrote: > John Poltorak wrote: > > > > lib/io_sock..........accept failed: Connection timed out at lib/io_sock.t > > line 57. > > If you look at io_sock.t you'll see it should exit on line 50 because > fork() is broken. This means $^O (i.e. $OSNAME) is not set to "os2" in > your build. What does > > perl -e "print $^O;" > > output with your freshly built perl.exe? You should get "os2". Everything looks OK to me. Here's the output from perl -V :- Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration: Platform: osname=os2, osvers=2.45, archname=os2 uname='os2 standalone 2 2.45 i386 unknown ' config_args='-des -D prefix=c:/usr/lib/perl' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef Compiler: cc='gcc', ccflags ='-Zomf -Zmt -DDOSISH -DOS2=2 -DEMBED -I. -D_EMX_CRT_REV_=63', optimize='-O2 -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -s', cppflags='-Zomf -Zmt -DDOSISH -DOS2=2 -DEMBED -I. -D_EMX_CRT_REV_=63' ccversion='', gccversion='2.8.1', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=4 alignbytes=4, usemymalloc=y, prototype=define Linker and Libraries: ld='gcc', ldflags ='-Zexe -Zomf -Zmt -Zcrtdll -Zstack 32000' libpth=c:/usr/lib c:/usr/lib/mt libs=-lsocket -lm -lbsd perllibs=-lsocket -lm -lbsd libc=c:/usr/lib/mt/c_import.lib, so=dll, useshrplib=true, libperl=libperl.lib Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' ' cccdlflags='-Zdll', lddlflags='-Zdll -Zomf -Zmt -Zcrtdll -s' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under os2 Compiled at Mar 20 2002 17:10:54 %ENV: PERL_BADLANG="0" at INC: c:/usr/lib/perl/lib/5.6.1/os2 c:/usr/lib/perl/lib/5.6.1 c:/usr/lib/perl/lib/site_perl/5.6.1/os2 c:/usr/lib/perl/lib/site_perl/5.6.1 c:/usr/lib/perl/lib/site_perl . Is there any way this lib/io_sock test could be failing because C: is a RAMFS disk? I'm not aware of any other changes in the environment. > h~ -- John **= Email 13 ==========================** Date: Thu, 21 Mar 2002 09:56:46 +0000 From: csaba.raduly at sophos.com Subject: Re: Re: Running ./configure On 21/03/2002 02:44:27 owner-os2-unix wrote: >On Thu, 21 Mar 2002 10:24:55 +0900, Masaru Nomiya wrote: > >> >>[SA] == Stephen Amadei has written: >> >>SA> Hello... I have most of the unixish tools installed on my OS/2 >>SA> system. I am trying to run the configure script in BASH to >>SA> try a quick compile of the SDTS libraries... but the configure script >>SA> won't find cc or gcc. I tried specifing the location of cc using >>SA> --prefix, but it still failed. >> >>Try >> >># export CC=gcc.exe >># configure > >Or at an OS/2 command prompt set CC=gcc.exe then run sh configure. You will >most likely need a few more sets to get the configure script to finish **= Email 14 ==========================** Date: Thu, 21 Mar 2002 10:24:55 +0900 From: Masaru Nomiya Subject: Re: Running ./configure Hello, In the Message; Subject : Running ./configure Message-ID : Date & Time: Wed, 20 Mar 2002 20:05:53 -0500 (EST) [SA] == Stephen Amadei has written: SA> Hello... I have most of the unixish tools installed on my OS/2 SA> system. I am trying to run the configure script in BASH to SA> try a quick compile of the SDTS libraries... but the configure script SA> won't find cc or gcc. I tried specifing the location of cc using SA> --prefix, but it still failed. Try # export CC=gcc.exe # configure Regards. --- Masaru Nomiya mail-to: nomiya at ttmy.ne.jp "No WIndows, no gains!" ..... "Why, I am wrong?" -- Bill -- **= Email 15 ==========================** Date: Thu, 21 Mar 2002 10:58:58 +0000 From: John Poltorak Subject: Multi-threaded db.lib Is there a way of testing db.lib to see if it is multi-threaded? -- John **= Email 16 ==========================** Date: Thu, 21 Mar 2002 11:38:43 -0500 From: Henry Sobotka Subject: Re: Perl test time-out John Poltorak wrote: > > I'm running this test using the debugger... > > # Check if can fork with dynamic extensions (bug in CRT): > if ($^O eq 'os2' and > system "$^X -I../lib -MOpcode -e 'defined fork or die' > /dev/null 2>&1") { > print "ok $_ # skipped: broken fork\n" for 2..5; > exit 0; > } > > print $^O says os2, but I can't work what the second condition is checking > for... Its a system call to run perl ($^X) with include path ../lib, using the Opcode module, and execute the inline script between single quotes that tests whether or not fork is defined. > How do I display the output from the test? Direct it to something other than /dev/null. > It looks as though it must be failing though. Why should that happen? The return value of the system call is 0, i.e. fork is defined, so the condition is false. h~ **= Email 17 ==========================** Date: Thu, 21 Mar 2002 11:59:39 +0000 From: csaba.raduly at sophos.com Subject: Re: Re: Running ./configure On 21/03/2002 02:44:27 owner-os2-unix wrote: >On Thu, 21 Mar 2002 10:24:55 +0900, Masaru Nomiya wrote: > >> >>[SA] == Stephen Amadei has written: >> >>SA> Hello... I have most of the unixish tools installed on my OS/2 >>SA> system. I am trying to run the configure script in BASH to >>SA> try a quick compile of the SDTS libraries... but the configure script >>SA> won't find cc or gcc. I tried specifing the location of cc using >>SA> --prefix, but it still failed. >> >>Try >> >># export CC=gcc.exe >># configure > >Or at an OS/2 command prompt set CC=gcc.exe then run sh configure. You >will most likely need a few more sets to get the configure script to >finish. You can also use an OS/2 patched version of autoconf to build >a new configure script That's almost certainly the correct solution. "export CC=gcc.exe" will help find the compiler, but that's only getting it past that one test. It's likely to fail at the next program (cpp, rm, awk, etc.) The problem lies in the fact that Unix uses ':' as the path separator, so OS/2's path is chopped at the wrong points. What configure does is to chop the path at the separators, then append the executable name at each bit and check if the file exists. You can see it testing all the wrong directories by running sh -x configure >that will work better. I use autoconf ver 2.13 which is located on hobbes >etc. >Just do a sh autoconf first. >Dave > -- Csaba Ráduly, Software Engineer Sophos Anti-Virus email: csaba.raduly at sophos.com http://www.sophos.com US Support: +1 888 SOPHOS 9 UK Support: +44 1235 559933 **= Email 18 ==========================** Date: Thu, 21 Mar 2002 12:00:59 +0000 From: John Poltorak Subject: info dir Texinfo has a fle called dir which seems to be an index for all the installed info files. Is there any way to update this file when adding new .info files? -- John **= Email 19 ==========================** Date: Thu, 21 Mar 2002 12:19:22 +0000 From: John Poltorak Subject: Re: Re: Running ./configure On Thu, Mar 21, 2002 at 11:59:39AM +0000, csaba.raduly at sophos.com wrote: > > On 21/03/2002 02:44:27 owner-os2-unix wrote: > > >On Thu, 21 Mar 2002 10:24:55 +0900, Masaru Nomiya wrote: > > > >> > >>[SA] == Stephen Amadei has written: > >> > >>SA> Hello... I have most of the unixish tools installed on my OS/2 > >>SA> system. I am trying to run the configure script in BASH to > >>SA> try a quick compile of the SDTS libraries... but the configure script > >>SA> won't find cc or gcc. I tried specifing the location of cc using > >>SA> --prefix, but it still failed. > >> > >>Try > >> > >># export CC=gcc.exe > >># configure > > > >Or at an OS/2 command prompt set CC=gcc.exe then run sh configure. You > >will most likely need a few more sets to get the configure script to > >finish. You can also use an OS/2 patched version of autoconf to build > >a new configure script > > That's almost certainly the correct solution. > "export CC=gcc.exe" will help find the compiler, but that's only getting it > past that one test. It's likely to fail at the next program (cpp, rm, awk, > etc.) > > The problem lies in the fact that Unix uses ':' The underlying problem is that the package was assembled using Autoconf which has always been hostile to OS/2, mainly because of the DOS based filesystem. However with changes being made in more recent versions, principally to accomodate CYGWIN, OS/2 may also benefit. At the moment you need to create an OS/2 friendly version of Configure by running an OS/2 specific version of Autoconf, but eventually if/when normal Autoconf can handle OS/2, then the provided Configure script should also work on OS/2 without any messing around. But we're not quite there yet. > -- > Csaba Ráduly, Software Engineer Sophos Anti-Virus > email: csaba.raduly at sophos.com http://www.sophos.com > US Support: +1 888 SOPHOS 9 UK Support: +44 1235 559933 -- John **= Email 20 ==========================** Date: Thu, 21 Mar 2002 14:21:07 +0100 (CET) From: Stefan Neis Subject: Re: info dir On Thu, 21 Mar 2002, John Poltorak wrote: > > Texinfo has a fle called dir which seems to be an index for all the > installed info files. Is there any way to update this file when adding new > .info files? There should be something like this, as the texi-Files meanwhile typically include some easily extractable entry for the dir file. On the other hand I don't like the apparently auto-generated, completely messed up dir file that's provided by e.g. SuSE distribution. I very much like my hand-edited OS/2 version which tries to put some reasonable ordering into that file, e.g. something like EMACS ===== * Emacs: (emacs). The extensible self-documenting text editor. * Elisp: (elisp). The emacs programming language. * CC mode: (ccmode). The GNU Emacs mode for editing C, C++, Objective-C and Java code. * MH-E: (mh-e). Emacs interface to the MH mail system. * Auctex: (auctex). (etc) COMPILER & TOOLS ================ * gcc: (gcc). The GNU Compiler Collection. * iostream: (iostream). The C++ input/output facility. * Ld: (ld). The GNU linker. * As: (as). The GNU assembler. With those unordered dir files, you essentially have to know the precise name of what you're looking for, so you can search for it in the file. Every now and then, this is very frustrating. So it would be great to put some effort into having a useful dir file (instead of an auto-generated one). Regards, Stefan -- Micro$oft is not an answer. It is a question. The answer is 'no'. **= Email 21 ==========================** Date: Thu, 21 Mar 2002 14:54:57 +0000 From: John Poltorak Subject: Re: Perl test time-out On Thu, Mar 21, 2002 at 07:46:39AM -0500, Henry Sobotka wrote: > John Poltorak wrote: > > > > Is there any way this lib/io_sock test could be failing because C: is a > > RAMFS disk? > > No, it's failing because fork() is broken so the client-server setup > required for the accept test isn't there; hence the timeout. And for > OS/2, the broken fork() should be detected by the conditional on lines > 47-48, and the test should end on line 50. I'm running this test using the debugger... # Check if can fork with dynamic extensions (bug in CRT): if ($^O eq 'os2' and system "$^X -I../lib -MOpcode -e 'defined fork or die' > /dev/null 2>&1") { print "ok $_ # skipped: broken fork\n" for 2..5; exit 0; } print $^O says os2, but I can't work what the second condition is checking for... How do I display the output from the test? It looks as though it must be failing though. Why should that happen? > h~ -- John **= Email 22 ==========================** Date: Thu, 21 Mar 2002 14:58:19 -0500 From: Thomas Dickey Subject: Re: Using SLANG On Thu, Mar 21, 2002 at 07:18:53PM +0000, John Poltorak wrote: > I've built libslang for SLANG v1.4.5 but can't seem to build any of the > programs in the curses directory. iirc, the curses compatibility is ifdef'd only for Unix systems. > When compiling RAIN, I get:- > > > [T:\unixos2\workdir\slang-1.4.5\src\curses]make rain > gcc -g -DSLANG -I.. rain.c -o rain -L../objs -lslang > In file included from rain.c:1: > ..\curses.h:1: parse error before string constant > rain.c: In function `main': > rain.c:26: `LINES' undeclared (first use in this function) > rain.c:26: (Each undeclared identifier is reported only once > rain.c:26: for each function it appears in.) > rain.c:27: `COLS' undeclared (first use in this function) > make: *** [rain] Error 1 > > > > Is there something wrong with the Makefile or have I overlooked something? > > SLANG is available from:- > > ftp://space.mit.edu/pub/davis/slang/v1.4/slang-1.4.5.tar.gz > > > > -- > John > -- Thomas E. Dickey http://invisible-island.net ftp://invisible-island.net **= Email 23 ==========================** Date: Thu, 21 Mar 2002 15:38:05 +0000 From: csaba.raduly at sophos.com Subject: Re: Perl test time-out On 21/03/2002 14:54:57 owner-os2-unix wrote: [snip] > >I'm running this test using the debugger... > ># Check if can fork with dynamic extensions (bug in CRT): >if ($^O eq 'os2' and >system "$^X -I../lib -MOpcode -e 'defined fork or die' > /dev/null 2>&1") { >print "ok $_ # skipped: broken fork\n" for 2..5; >exit 0; >} > > >print $^O says os2, but I can't work what the second condition is checking >for... It's checking whether fork is defined $^X == $EXECUTABLE_NAME (i.e. perl.exe or whatever) It runs the one-liner below. > >How do I display the output from the test? By removing the "> /dev/null" part above, or running perl -I../lib -MOpcode -e "defined fork or die" -- Csaba Ráduly, Software Engineer Sophos Anti-Virus email: csaba.raduly at sophos.com http://www.sophos.com US Support: +1 888 SOPHOS 9 UK Support: +44 1235 559933 **= Email 24 ==========================** Date: Thu, 21 Mar 2002 16:08:39 +0000 From: John Poltorak Subject: Re: Perl test time-out On Thu, Mar 21, 2002 at 03:38:05PM +0000, csaba.raduly at sophos.com wrote: > > On 21/03/2002 14:54:57 owner-os2-unix wrote: > > [snip] > > > >I'm running this test using the debugger... > > > ># Check if can fork with dynamic extensions (bug in CRT): > >if ($^O eq 'os2' and > >system "$^X -I../lib -MOpcode -e 'defined fork or die' > /dev/null 2>&1") > { > >print "ok $_ # skipped: broken fork\n" for 2..5; > >exit 0; > >} > > > > > >print $^O says os2, but I can't work what the second condition is checking > >for... > > It's checking whether fork is defined > > $^X == $EXECUTABLE_NAME (i.e. perl.exe or whatever) > It runs the one-liner below. > > > > >How do I display the output from the test? > > By removing the "> /dev/null" part above, or running > > perl -I../lib -MOpcode -e "defined fork or die" What do you get when you run this test? :- perl lib/io_sock.t I'm told that fork is broken so that it should exit with:- skipped: broken fork but on the system where I originally built it, I get:- T:\tmp\perl.2\perl-5.6.1.save\t>perl lib/io_sock.t 1..14 ok 1 ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 Methinks I must have messed something up... > > -- > Csaba Ráduly, Software Engineer Sophos Anti-Virus > email: csaba.raduly at sophos.com http://www.sophos.com > US Support: +1 888 SOPHOS 9 UK Support: +44 1235 559933 > -- John **= Email 25 ==========================** Date: Thu, 21 Mar 2002 16:56:05 +0000 From: John Poltorak Subject: Patch file modifier Looking at various patch files I've notice that a different '-p' value is required to apply them from a common repository. Is there any utility which would modify them to a particular value? Alternatively, is there a way of determining the appropriate value beforehand so that a variable could be set? -- John **= Email 26 ==========================** Date: Thu, 21 Mar 2002 18:52:02 +0000 From: John Poltorak Subject: GNU Find patch If anyone is familiar with applying patches, can you try applying the OS/2 patches from:- http://hobbes.nmsu.edu/pub/os2/util/disk/gnufind.zip to:- ftp://ftp.gnu.org/pub/gnu/findutils/findutils-4.1.tar.gz I get a couple of failures, but don't know if I'm doing something wrong. -- John **= Email 27 ==========================** Date: Thu, 21 Mar 2002 19:18:53 +0000 From: John Poltorak Subject: Using SLANG I've built libslang for SLANG v1.4.5 but can't seem to build any of the programs in the curses directory. When compiling RAIN, I get:- [T:\unixos2\workdir\slang-1.4.5\src\curses]make rain gcc -g -DSLANG -I.. rain.c -o rain -L../objs -lslang In file included from rain.c:1: ..\curses.h:1: parse error before string constant rain.c: In function `main': rain.c:26: `LINES' undeclared (first use in this function) rain.c:26: (Each undeclared identifier is reported only once rain.c:26: for each function it appears in.) rain.c:27: `COLS' undeclared (first use in this function) make: *** [rain] Error 1 Is there something wrong with the Makefile or have I overlooked something? SLANG is available from:- ftp://space.mit.edu/pub/davis/slang/v1.4/slang-1.4.5.tar.gz -- John **= Email 28 ==========================** Date: Thu, 21 Mar 2002 20:59:35 +0100 From: Andreas Buening Subject: Re: info dir John Poltorak wrote: > > Texinfo has a fle called dir which seems to be an index for all the > installed info files. Is there any way to update this file when adding new > .info files? install-info --info-dir=x:/usr/info x:/usr/info/my_doc.info (you may need texinfo 4.0 for newer .info files, but I'm not sure about this). bye, Andreas -- One OS to rule them all, One OS to find them, One OS to bring them all and in the darkness bind them In the Land of Redmond where the Shadows lie. **= Email 29 ==========================** Date: Thu, 21 Mar 2002 20:59:51 +0100 From: Andreas Buening Subject: Re: Re: Running ./configure Stephen Amadei wrote: [snip] > I've gotten so spoiled with ./configure; make; make install. ;-) ;-) You have the following choices: a) using the provided configure script you need: set CFLAGS=-O2 set LDFLAGS=-Zexe if configure complains about "cannot find blurb" try set BLURB=blurb "make install" will not work b) use OS/2-version of autoconf 2.13 you need: m4 set CFLAGS=-O2 a reasonable shell ;-) should do most likely the stuff from a) for you (if you get it working) "make install" will not work c) use OS/2-version of autoconf 2.50 you need: m4 set CFLAGS=-O2 set EMXSHELL=sh a reasonable shell (pdksh?) any version of perl "make install" works if you get a new version of "mkinstalldirs" d) the current official version of autoconf 2.52x or higher you need: m4 set CFLAGS=-O2 set EMXSHELL=sh export ac_executable_extensions=".exe" (!!!) a reasonable shell (pdksh?) a _new_ version of perl (can become a real problem) forward slashes in PATH "make install" should work out of the box but it's more failure safe than c) You also need config.sub and config.guess (from ftp://ftp.gnu.org/gnu/config?) Quite easy, isn't it? ;-) bye, Andreas -- One OS to rule them all, One OS to find them, One OS to bring them all and in the darkness bind them In the Land of Redmond where the Shadows lie. **= Email 30 ==========================** Date: Thu, 21 Mar 2002 21:38:20 +0000 From: John Poltorak Subject: Re: Re: Running ./configure On Thu, Mar 21, 2002 at 08:59:51PM +0100, Andreas Buening wrote: > Stephen Amadei wrote: > > [snip] > > > I've gotten so spoiled with ./configure; make; make install. ;-) > > ;-) > You have the following choices: In addition to these choices there is another version of Autoconf required for NCURSES and TIN, and you need to use the OS2UNIX utility with some ports. And then there are the ports where all can do is use a Makefile.... Not forgetting five or six versions of Make, many different shells, and several different ports of various required utilities, different INTL and REGEX DLLs and it is pretty much a lottery whether any will build, and if it does for one person it probably won't for someone else because they have a different sequence of directories in their PATH. > a) using the provided configure script > you need: > set CFLAGS=-O2 > set LDFLAGS=-Zexe > if configure complains about "cannot find blurb" try set BLURB=blurb > "make install" will not work > > b) use OS/2-version of autoconf 2.13 > you need: > m4 > set CFLAGS=-O2 > a reasonable shell ;-) > should do most likely the stuff from a) for you > (if you get it working) > "make install" will not work > > c) use OS/2-version of autoconf 2.50 > you need: > m4 > set CFLAGS=-O2 > set EMXSHELL=sh > a reasonable shell (pdksh?) > any version of perl > "make install" works if you get a new version of "mkinstalldirs" > > d) the current official version of autoconf 2.52x or higher > you need: > m4 > set CFLAGS=-O2 > set EMXSHELL=sh Is this requied still? > export ac_executable_extensions=".exe" (!!!) Not settable under CMD.EXE AFAIK - only under a SHELL. > a reasonable shell (pdksh?) I've stopped using PDKSH with AUTOCONF because it won't allow me to use a path such as 'c:\usr\bin' > a _new_ version of perl (can become a real problem) > forward slashes in PATH > "make install" should work out of the box Is this correct? > but it's more failure safe than c) BTW will you be applying any changes from 2.50 into 2.53? I was able to build a number of apps with 2.50 which won't work with 2.53 and it's very difficult to accomodate multiple Autoconfs... > > You also need config.sub and config.guess (from > ftp://ftp.gnu.org/gnu/config?) > > Quite easy, isn't it? ;-) ARRRGGGHHHHH!!!!!!!!!!!! Every time I think I'm getting somewhere something breaks.... > bye, > Andreas > > -- > One OS to rule them all, One OS to find them, > One OS to bring them all and in the darkness bind them > In the Land of Redmond where the Shadows lie. -- John **= Email 31 ==========================** Date: Thu, 21 Mar 2002 22:01:56 -0800 From: "Dave and Natalie" Subject: Re: Re: Running ./configure On Thu, 21 Mar 2002 23:37:13 +0100, Andreas Buening wrote: >> > export ac_executable_extensions=".exe" (!!!) >> >> Not settable under CMD.EXE AFAIK - only under a SHELL. > >Yep. That's why I used "!!!" Found this patch in pspell-.12.2 autoconf-exeext.patch --- acspecific.m4~ Sat Jun 10 16:41:23 2000 +++ acspecific.m4 Sat Jun 10 03:43:10 2000 at at -2659,7 +2659,7 at at if AC_TRY_EVAL(ac_link); then for file in conftest.*; do case $file in - *.c | *.o | *.obj) ;; + *.c | *.C | *.o | *.obj) ;; *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; esac done don't know if it is any good or not. The configure script for pspell worked pretty good out of the box, though it did think it was cross-compiling. Dave **= Email 32 ==========================** Date: Thu, 21 Mar 2002 22:04:01 -0800 From: "Dave and Natalie" Subject: Re: Re: Running ./configure On Thu, 21 Mar 2002 20:59:51 +0100, Andreas Buening wrote: >b) use OS/2-version of autoconf 2.13 > you need: > m4 > set CFLAGS=-O2 > a reasonable shell ;-) > should do most likely the stuff from a) for you > (if you get it working) > "make install" will not work X11make install has always worked. Newer makes work for make install as well. Dave **= Email 33 ==========================** Date: Thu, 21 Mar 2002 23:37:13 +0100 From: Andreas Buening Subject: Re: Re: Running ./configure John Poltorak wrote: > > On Thu, Mar 21, 2002 at 08:59:51PM +0100, Andreas Buening wrote: > > Stephen Amadei wrote: > > > > [snip] > > > > > I've gotten so spoiled with ./configure; make; make install. ;-) > > > > ;-) > > You have the following choices: > > In addition to these choices there is another version of Autoconf required > for NCURSES and TIN, and you need to use the OS2UNIX utility with some > ports. And then there are the ports where all can do is use a Makefile.... > > Not forgetting five or six versions of Make, many different shells, and > several different ports of various required utilities, different INTL and > REGEX DLLs and it is pretty much a lottery whether any will build, and if > it does for one person it probably won't for someone else because they > have a different sequence of directories in their PATH. ;-) Okay, I was talking about the generic case: you've just downloaded blurb.tar.gz that contains a configure script that doesn't work out of the box. [funny stuff] > set EMXSHELL=sh > > Is this requied still? Yes. autoconf needs m4, and m4 needs sh. > > export ac_executable_extensions=".exe" (!!!) > > Not settable under CMD.EXE AFAIK - only under a SHELL. Yep. That's why I used "!!!" > > a reasonable shell (pdksh?) > > I've stopped using PDKSH with AUTOCONF because it won't allow me to use > a path such as 'c:\usr\bin' Yep. That's why I used "?" > > a _new_ version of perl (can become a real problem) > > forward slashes in PATH > > "make install" should work out of the box > > Is this correct? Not extensively tested, but it seems they now use "mkdir -p" all times. > > but it's more failure safe than c) > > BTW will you be applying any changes from 2.50 into 2.53? I was able to > build a number of apps with 2.50 which won't work with 2.53 and it's very > difficult to accomodate multiple Autoconfs... I could do it if you think it will help you. :-) > > > > You also need config.sub and config.guess (from > > ftp://ftp.gnu.org/gnu/config?) > > > > Quite easy, isn't it? ;-) > > ARRRGGGHHHHH!!!!!!!!!!!! Hmm, I'm getting the impression you're getting somewhat annoyed. > Every time I think I'm getting somewhere something breaks.... That's why I think we really should move on to _one_ _single_ build process: that one the "official" maintainers of those packages use. If the official maintainer uses a Makefile we have to use a Makefile, if he uses autoconf we have to use autoconf, if he uses something else, we have to use something else. If the maintainer thinks it's necessary to have a flag --with-libfoo=[yes|no], --with-package-blurb, then we should also have this flag. But currently every OS/2 porter uses his own stuff, his own build scripts or his own Makefiles. One uses a cmd like Makefile, another requires sh, the next may not work with ksh, yet another one uses a special compiler flag or a special install path and the last one requires a special header file to be installed. Everybody provides the software as is (it's his good right to do so), but it doesn't help you. However, in my opinion, if autoconf still had 100 bugs/limitations, that could be fixed, one by one, but if we had 100 of Makefiles/whatever every with only 10 bugs/limitations that's something nobody could take care of. bye, Andreas -- One OS to rule them all, One OS to find them, One OS to bring them all and in the darkness bind them In the Land of Redmond where the Shadows lie.