[comp.os.minix] "makelib from bruce evans"

schuerch@hslrswi.UUCP (Heinz Christoph Schuerch) (10/05/90)

I'm trying to build libraries with the makelib-script from bruce
evans, which was in bcclib.tar.

This work fine as long as I do not use the Estdio. If I uncomment
the line #earlstdiodir=../e20, the script executes (or in my case
tries to execute) a zip1 command:

	> for xyz in FILES

	>   do
	>     zip1 xyz 15 1
	>   done

This zip1 command is totally unknown to my!

Could somebody tell me, what this command is doing?
Could somebody send me this command, or is there a turn-around?

Thanks for any help		heinz schuerch

-----------------------------------------------------------------------------
heinz schuerch				|
ascom tech ag				| schuerch@tech.ascom.ch
ch-3018 bern				|
switzerland				|
-----------------------------------------------------------------------------

brucee@runxtsa.runx.oz.au (Bruce Evans) (10/07/90)

In article <1566@hslrswi.UUCP> schuerch@hslrswi.UUCP (Heinz Christoph Schuerch) writes:
>I'm trying to build libraries with the makelib-script from bruce
>evans, which was in bcclib.tar.
>...
>	>     zip1 xyz 15 1

It's actually zap1. This writes the byte '\001' at offset 15 in the file
xyz. You can write zap1.c faster than I can post it :-).

The magic offset is for a priority byte in the object file header. Normally
the priority is 0. Priority 1 is used for stub routines such as a version
of _exit() that does not reference stdio. This feature is unportable and not
really supported so I haven't documented it properly. It's best not to write
libraries that depend on linkage tricks.
-- 
Bruce Evans  (evans@syd.dit.csiro.au)