File:  [OS/2 SDKs] / os2sdk / startup / makefile
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Thu Aug 9 12:25:13 2018 UTC (7 years, 9 months ago) by root
Branches: msft, MAIN
CVS tags: os2sdk-1987, HEAD
Microsoft OS/2 SDK 12-15-1987

#############################################################
#	
#	Copyright (c) 1986-1987, Microsoft Corporation.  All rights reserved.
#
#	makefile for building c runtime startup objects
#	and linking null c program
#
#	This makefile is invoked by STARTUP.BAT.
#	See STARTUP.BAT for usage information.
#
#############################################################

MODEL=S

SRC=..
INC=..
CINC=..

CFLAGS=-A$(MODEL) -I$(INC) -I$(CINC) -Os -Gs -c
CL=cl $(CFLAGS)

ASMFLAGS= -Mx -Dmem_$(MODEL) -I$(INC)
ASM=masm $(ASMFLAGS)

CMACROS=$(INC)\version.inc $(INC)\cmacros.inc


#	startup modules

dos\crt0.obj: $(SRC)\dos\crt0.asm $(CMACROS) $(INC)\msdos.inc $(INC)\brkctl.inc
		$(ASM) $(SRC)\dos\crt0.asm,dos\crt0.obj;
		copy ..\dosseg.exe
		dosseg dos\crt0.obj
		del dosseg.exe

os2\crt0.obj: $(SRC)\os2\crt0.asm $(CMACROS) $(INC)\msdos.inc $(INC)\brkctl.inc
		$(ASM) $(SRC)\os2\crt0.asm,os2\crt0.obj;
		copy ..\dosseg.exe
		dosseg os2\crt0.obj
		del dosseg.exe

dos\crt0dat.obj: $(SRC)\dos\crt0dat.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\dos\crt0dat.asm,dos\crt0dat.obj;

os2\crt0dat.obj: $(SRC)\os2\crt0dat.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\os2\crt0dat.asm,os2\crt0dat.obj;

dos\crt0msg.obj: $(SRC)\dos\crt0msg.asm $(CMACROS)
		$(ASM) $(SRC)\dos\crt0msg.asm,dos\crt0msg.obj;

os2\crt0msg.obj: $(SRC)\os2\crt0msg.asm $(CMACROS)
		$(ASM) $(SRC)\os2\crt0msg.asm,os2\crt0msg.obj;

fmsghdr.obj:	$(SRC)\fmsghdr.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\fmsghdr.asm;

dos\nmsghdr.obj: $(SRC)\dos\nmsghdr.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\dos\nmsghdr.asm,dos\nmsghdr.obj;

os2\nmsghdr.obj: $(SRC)\os2\nmsghdr.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\os2\nmsghdr.asm,os2\nmsghdr.obj;

chksum.obj: 	$(SRC)\chksum.asm $(CMACROS)
		$(ASM) $(SRC)\chksum.asm;

dos\stdargv.obj: $(SRC)\dos\stdargv.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\dos\stdargv.asm,dos\stdargv.obj;

os2\stdargv.obj: $(SRC)\os2\stdargv.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\os2\stdargv.asm,os2\stdargv.obj;

dos\stdalloc.obj: $(SRC)\dos\stdalloc.asm $(CMACROS) \
		$(INC)\brkctl.inc $(INC)\msdos.inc
		$(ASM) $(SRC)\dos\stdalloc.asm,dos\stdalloc.obj;

os2\stdalloc.obj: $(SRC)\os2\stdalloc.asm $(CMACROS) \
		$(INC)\brkctl.inc $(INC)\msdos.inc
		$(ASM) $(SRC)\os2\stdalloc.asm,os2\stdalloc.obj;

dos\stdenvp.obj: $(SRC)\dos\stdenvp.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\dos\stdenvp.asm,dos\stdenvp.obj;

os2\stdenvp.obj: $(SRC)\os2\stdenvp.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\os2\stdenvp.asm,os2\stdenvp.obj;

chkstk.obj:	$(SRC)\chkstk.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) $(SRC)\chkstk.asm;


#	wild card expansion support modules

..\setargv.obj:  $(SRC)\setargv.asm $(CMACROS)
		$(ASM) $(SRC)\setargv.asm,..\setargv.obj;

dos\_setargv.obj: $(SRC)\dos\stdargv.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) -DWILDCARD $(SRC)\dos\stdargv.asm,dos\_setargv.obj;

os2\_setargv.obj: $(SRC)\os2\stdargv.asm $(CMACROS) $(INC)\msdos.inc
		$(ASM) -DWILDCARD $(SRC)\os2\stdargv.asm,os2\_setargv.obj;

wild.obj: 	$(SRC)\wild.c $(CINC)\stdio.h $(CINC)\ctype.h $(INC)\register.h $(CINC)\ctype.h
		$(CL) -Zel $(SRC)\wild.c


#	error message modules

crt0fp.obj: 	$(SRC)\crt0fp.asm $(CMACROS)
		$(ASM) $(SRC)\crt0fp.asm;

dos\execmsg.obj: $(SRC)\dos\execmsg.asm $(CMACROS)
		$(ASM) $(SRC)\dos\execmsg.asm,dos\execmsg.obj;

os2\execmsg.obj: $(SRC)\os2\execmsg.asm $(CMACROS)
		$(ASM) $(SRC)\os2\execmsg.asm,os2\execmsg.obj;


#	small program

dos\nulbody.obj: $(SRC)\nulbody.c
		$(CL) -Fodos\nulbody.obj $(SRC)\nulbody.c

os2\nulbody.obj: $(SRC)\nulbody.c
		$(CL) -Foos2\nulbody.obj $(SRC)\nulbody.c

#	this step is always done because the target does not exist

startup:
		link @$(SRC)\dos\nulbody.lnk
		link @$(SRC)\os2\nulbody.lnk

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.