wbader@islsun1.mse.lehigh.edu (William Bader X84508) (07/06/90)
A while back, someone posted that they had to build kermit by building wart (a lex-workalike) with -systype bsd43 and the rest of kermit with -systype sysv. I played around with compile options, and it seems to me that the culprit is the '-i' flag in the kermit makefile for sysv kermits. I have two questions: 1) Does the Mips compiler (or linker) have a problem with '-i', or is this some subtle bug in ckwart.c that only shows up on Mips computers? ckwart.c lints cleanly. I put debug code in the main program, and some in a function (setstate() ?), and the debug code in the function printed BEFORE the debug code at the top of the main program. How can this happen? 2) If '-systype bsd43' simulates a BSD 4.3 environment, why won't it compile the bsd version of kermit? Some routines in kermit, like msleep() in ckutio.c run much more efficiently in a bsd environment. William Bader Software Consulting Services 3162 Bath Pike Nazareth, PA 18064 phone: 215-837-8485 fax: 215-837-8080 email: wbader@scarecrow.csee.lehigh.edu, wbader@einstein.mse.lehigh.edu, lehi3b15.csee.lehigh.edu!batman!bader
beacker@mips.COM (Bradley Eacker) (07/11/90)
William Bader <WBADER.90Jul5221952@islsun1.mse.lehigh.edu> writes: >A while back, someone posted that they had to build kermit by building >wart (a lex-workalike) with -systype bsd43 and the rest of kermit with >-systype sysv. I played around with compile options, and it seems to me >that the culprit is the '-i' flag in the kermit makefile for sysv kermits. >I have two questions: >1) Does the Mips compiler (or linker) have a problem with '-i', or >is this some subtle bug in ckwart.c that only shows up on Mips computers? >ckwart.c lints cleanly. I put debug code in the main program, and some >in a function (setstate() ?), and the debug code in the function printed >BEFORE the debug code at the top of the main program. How can this happen? The -i flag has a different meaning in the mips linker. It says to put the code into the initialization section. This is not the separate I & D space flag that is used in other compilers. ld(1) explains this in better detail. >2) If '-systype bsd43' simulates a BSD 4.3 environment, why won't it >compile the bsd version of kermit? Some routines in kermit, like msleep() >in ckutio.c run much more efficiently in a bsd environment. The current Makefile that is shipped with the 4.50 environment has the following defines for the compiler flags: MAXOPT =-O1 INCLUDE = CFLAGS =$(MAXOPT) $(INCLUDE) $(ECFLAGS) -DSVR3 -DUXIII -DDEBUG -DTLOG LNKFLAGS= These are the necessary flags to build a sysV kermit which is what the main basis is for RISCos. You may be able to build a bsd version by substituting "-systype bsd43 -DBSD4" inplace of "-DSVR3 -DUXIII" I have not tried this since the sysV version seems to function in a reasonable fashion. Brad Eacker (beacker@mips.com)