Subject: Re: Building PINE under UnixWare

From: [email-masked] (Center / NT)
Date: 15 Oct 1994 08:05:13 -0500

: It won't build onder Novell UnixWare 1.1, using the 'sv4' options to
: build.
I took the easy road and got the binaries from ftp.novell.de. This
site has many prebuilt packages for UW. The sources are available
as well, though I do not know if they contain UW build edits.

Joel

---

From: [email-masked] (Evan Leibovitch)
Date: 14 Oct 94 17:41:47 GMT

I've recently got my hands on Pine 3.90, after being urged by some
people I trust to try it instead of 'elm'.

It won't build onder Novell UnixWare 1.1, using the 'sv4' options to
build.

After saying the compiler couldn't handle ANSI, the build process barfed.

The 'pico' editor compiles and runs fine, but 'pine' itself won't.

Has anyone done the build for UnixWare? Does the recently-released 3.91
release of Pine solve any of these problems? Moreover, why is the SVR4
compiler considered non-ANSI? And does this thing know I don't use
sendmail?

If changes are small, just send 'diff's or the files that are changed. I
could probably track down the stuff myself, but why re-invent wheels?

Any help is appreciated.

What follows is the result of running 'sh build sv4' on the Pine source.
Warnings about non-ANSI semantics of ">" or "/" in code have been removed:

make args are "CC=cc"

Making c-client library, mtest and imapd
	make build SYSTYPE=non-ANSI OS=sv4
	echo sv4 > OSTYPE
	rm -rf systype
	ln -s non-ANSI systype
	cd non-ANSI/c-client; make sv4
	make mtest OS=sv4 EXTRADRIVERS="" \
		STDPROTO=bezerkproto \
		RSH=resh RSHPATH=/usr/bin/resh \
		CFLAGS="-g -Dconst= " RANLIB=true \
		LDFLAGS="-lsocket -lnsl -lgen "
	./drivers  imap nntp pop3 mh mtx tenex mmdf bezerk news phile dummy
	rm -f OSTYPE CFLAGS LDFLAGS osdep.h
	echo sv4 > OSTYPE
	echo -g -Dconst=  > CFLAGS
	echo -lsocket -lnsl -lgen  > LDFLAGS
	ln -s os_sv4.h osdep.h
	cc -g -Dconst=  -c mail.c
*** Error code 1 (bu21)
*** Error code 1 (bu21)
*** Error code 1 (bu21)
*** Error code 1 (bu21)

Making Pico
	rm -f osdep.c
	cp os_unix.c osdep.c
	rm -f osdep.h
	cp os_unix.h osdep.h
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O attach.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O ansi.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O basic.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O bind.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O browse.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O buffer.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O composer.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O display.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O file.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O fileio.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O line.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O osdep.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O pico.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O random.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O region.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O search.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O spell.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O tinfo.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O window.c
	cc -c -Dsv4 -DPOSIX -DJOB_CONTROL -O word.c
	ar ru libpico.a attach.o ansi.o basic.o bind.o browse.o buffer.o  composer.o display.o file.o fileio.o line.o osdep.o  pico.o random.o region.o search.o spell.o tinfo.o  window.o word.o
	true libpico.a
	cc -Dsv4 -DPOSIX -DJOB_CONTROL main.c libpico.a -ltermlib -o pico

Making Pine.
	rm -f os.h
	ln -s osdep/os-sv4.h os.h
	./cmplhlp2.sh  < pine.hlp > helptext.h
	cc -DSV4   -g -DDEBUG -DSYSTYPE=\"SV4\" -c addrbook.c
*** Error code 1 (bu21)

Links to executables are in bin directory:
bin/pico: 98553 + 24112 + 7228 = 129893
Done
-- 
 Evan Leibovitch, Sound Software Ltd., located in beautiful Brampton, Ontario
       Novell Unix Master Reseller / [email-masked] / (905) 452-0504
          PCMCIA:  People Can't Memorize Computer Industry Acronyms

---

From: "John P. Ebert" <[email-masked]>
Date: Mon, 17 Oct 94 14:39:35 -0400

>At 14 Oct 94 17:41:47 GMT, Evan Leibovitch <[email-masked]> wrote:
>
>I've recently got my hands on Pine 3.90,
>Has anyone done the build for UnixWare?

I just built Pine 3.91 on Novell UnixWare 1.1 using the instructions from 
when I built Pine 3.89.  Here's what I changed:

In "pine/osdep/os-sv4.h", uncomment '#define ANSI', comment out
'#define const', uncomment '#define USE_TERMINFO', and change
'#define SENDMAIL "/usr/lib/sendmail"' to
'#define SENDMAIL /usr/ucblib/sendmail".

If you want to change the installed location of "pine.conf" and
"pine.info", edit "pine/init.c", "pine/pine.hlp", and
"pine/osdep/os-sv4.h".  Change all occurences of "/usr/local/lib"
to whatever path you want for those files.

For Pine 3.89, in "imap/non-ANSI/c-client/Makefile", I changed RSH from
"resh" to "rsh" and RSHPATH from "/usr/bin/resh" to "/usr/bin/rsh", but
I don't think it is necessary for Pine 3.91.

After all that, I just ran "./build sv4" in the top directory.  I get
some compiler warnings about "...semantics of <various operators> change
in ANSI C..." and "...argument incompatible with prototype...", but these
all seem to be benign warnings.

You are right that it probably should use the ANSI source for UnixWare,
but I guess there are still a bunch of SVR4 versions out there without
Standard (ANSI) C compilers.

Hope this helps,

John Ebert <[email-masked]> The Ohio Company, Columbus, Ohio USA

---

From: [email-masked] (J. A. Lind)
Date: 19 Oct 1994 22:41:54 GMT

Evan Leibovitch ([email-masked]) wrote:
: I've recently got my hands on Pine 3.90, after being urged by some
: people I trust to try it instead of 'elm'.

: After saying the compiler couldn't handle ANSI, the build process barfed.

: The 'pico' editor compiles and runs fine, but 'pine' itself won't.

: Has anyone done the build for UnixWare? Does the recently-released 3.91
: release of Pine solve any of these problems? Moreover, why is the SVR4
: compiler considered non-ANSI? And does this thing know I don't use
: sendmail?

Don't know.

: If changes are small, just send 'diff's or the files that are changed. I
: could probably track down the stuff myself, but why re-invent wheels?

: Any help is appreciated.

: What follows is the result of running 'sh build sv4' on the Pine source.
: Warnings about non-ANSI semantics of ">" or "/" in code have been removed:

But I which you hadn't removed the ERROR messages... Oh well.

<<<SNIP>>>

Here's a set of changes that I found necessary to make to get pine to build.
They may not be the minimal set necessary, as I went down a few blind alleys.
I did no testing of the resulting pine binary other than seeing that it ran.

Jeff Lind
Unix Systems Group, Novell, Inc.
[email-masked]

--------------------------
cp imap/NON-ANSI/c-client/os_sv4.c imap/ANSI/c-client/os_sv4.c
cp imap/NON-ANSI/c-client/os_sv4.h imap/ANSI/c-client/os_sv4.h

different	./imap/ANSI/c-client/Makefile
different	./imap/Makefile
different	./pine/osdep/os-sv4.h

diff of ./imap/ANSI/c-client/Makefile in pine3.90 and Npine3.90

205c205
< 		CFLAGS="-g -Dconst= $(EXTRACFLAGS)" RANLIB=true \
---
> 		CFLAGS="-g -DANSI $(EXTRACFLAGS)" RANLIB=true \

diff of ./imap/Makefile in pine3.90 and Npine3.90

48c48
< a32 aix bsi d-g lnx mnt neb nxt osf sco sgi:
---
> a32 aix bsi d-g lnx mnt neb nxt osf sco sgi sv4:
51c51
< bsd cvx dyn hpp isc ptx pyr s40 sol ssn sun sv4 ult vul:
---
> bsd cvx dyn hpp isc ptx pyr s40 sol ssn sun ult vul:

diff of ./pine/osdep/os-sv4.h in pine3.90 and Npine3.90

188c188
< /* #define ANSI          /* this is an ANSI compiler */
---
> #define ANSI          /* this is an ANSI compiler */
190c190
< #define	const		/* compiler doesn't support const */
---
> /*#define	const		/* compiler doesn't support const */

---

From: [email-masked] (Fraser Hutchinson)
Date: 20 Oct 94 21:40:00 GMT

In article <[email-masked]> [email-masked] (J. A. Lind) writes:

Sorry, Evan, I didn't compile this puppy, so I can't help with the compile
issues. However, you can tell Pine to use your server as an SMTP server instead
od sendmail. This is a configuration option available in the .pinerc file.

Fraser

.nosig, I'm a nobody anyways.