home *** CD-ROM | disk | FTP | other *** search
- #/****************************************************************************/
- #/* */
- #/* Driver Name: IBMIDECD.ADD - Adapter Driver for ATAPI CD-ROMs */
- #/* ------------------------------------------------ */
- #/* */
- #/* Source File Name: MAKEFILE */
- #/* */
- #/* Descriptive Name: MAKEFILE for IBMIDECD.ADD */
- #/* */
- #/*--------------------------------------------------------------------------*/
- #/* */
- #/* Copyright : COPYRIGHT IBM CORPORATION, 1993, 1994 */
- #/* LICENSED MATERIAL - PROGRAM PROPERTY OF IBM */
- #/* REFER TO COPYRIGHT INSTRUCTION FORM#G120-2083 */
- #/* RESTRICTED MATERIALS OF IBM */
- #/* IBM CONFIDENTIAL */
- #/* */
- #/* */
- #/* DISCLAIMER OF WARRANTIES. The following [enclosed] code is */
- #/* provided to you solely for the purpose of assisting you in */
- #/* the development of your applications. The code is provided */
- #/* "AS IS", without warranty of any kind. IBM shall not be liable */
- #/* for any damages arising out of your use of this code, even if */
- #/* they have been advised of the possibility of such damages. */
- #/* */
- #/*--------------------------------------------------------------------------*/
- #/* */
- #/* Change Log */
- #/* */
- #/* Mark Date Programmer Comment */
- #/* ---- ---- ---------- ------- */
- #/* @nnnn mm/dd/yy NNN */
- #/* */
- #/* CHANGE ACTIVITY = */
- #/* DATE FLAG DEFECT CHANGE DESCRIPTION */
- #/* -------- ---------- ------ -------------------------------------- */
- #/* mm/dd/yy @Vdefect ###### xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
- #/* */
- #/* 01/23/95 @110138 110138 remove debug option
- #/* */
- #/****************************************************************************/
- #
- #
- # You can optionally generate the listing files for the device driver.
- #
- # make [option]
- #
- # option: list -> create listings
- # ibmidecd.flt -> create Retail IDE CD-ROM filter
- #
- # ****** NOTE ******
- #
- # If you are using a SED command with TAB characters, many editors
- # will expand tabs causing unpredictable results in other programs.
- #
- # Documentation:
- #
- # Using SED command with TABS. Besure to invoke set tab save option
- # on your editor. If you don't, the program 'xyz' will not work
- # correctly.
- #
-
- #****************************************************************************
- # Dot directive definition area (usually just suffixes)
- #****************************************************************************
-
- .SUFFIXES:
- .SUFFIXES: .com .flt .exe .obj .asm .inc .def .lnk .lrf .crf .ref
- .SUFFIXES: .lst .sym .map .c .h .lib .cod .flt
-
- #****************************************************************************
- # Environment Setup for the component(s).
- #****************************************************************************
-
- #
- # Conditional Setup Area and User Defined Macros
- #
-
- #
- # Compiler Location w/ includes, libs and tools
- #
-
- DOSINC = ..\..\..\..\dos\dosinc
- INIT = ..\..\..\..\dos\init
- TASK = ..\..\..\..\dos\task
- INC = ..\..\..\..\..\inc
- H = ..\..\..\..\..\h
- LIB = ..\..\..\..\..\lib
- TOOLSPATH = ..\..\..\..\..\tools
- DISKH = ..\..\diskh
- DHLIB = ..\..\devhelp
- ADDLIB = ..\..\addcalls
- CDROM = ..\os2cdrom
- RMLIB = ..\..\..\resource\rmcalls
- RSM_H = ..\..\..\resource\rsm_h
-
- #
- # Since the compiler/linker and other tools use environment
- # variables ( INCLUDE, LIB, etc ) in order to get the location of files,
- # the following line will check the environment for the LIFE of the
- # makefile and will be specific to this set of instructions. All MAKEFILES
- # are requested to use this format to insure that they are using the correct
- # level of files and tools.
- #
-
- !if [set INCLUDE=$(DOSINC);$(INIT);$(TASK);$(INC);$(CDROM)] || \
- [set LIB=$(LIB);$(DHLIB);$(RMLIB);$(ADDLIB);$(DISKH)] || [set PATH=$(TOOLSPATH)]
- !endif
-
-
- #
- # Compiler/tools Macros
- #
-
- AS=masm
- CC=cl
- IMPLIB=implib
- IPF=ipfc
- LIBUTIL=lib
- LINK=link
- MAPSYM=mapsym
- RC=rc
-
- #
- # Compiler and Linker Options
- #
-
- AFLAGS = -MX -T -Z $(ENV)
- AINC = -I. -I$(DOSINC) -I$(INIT) -I$(TASK) -I$(INC)
- CINC = -I. -I$(H) -I$(DISKH) -I$(MAKEDIR) -I$(RSM_H)
- CFLAGS = /c /Zp /G2s /Answ $(ENV)
- LFLAGS = /map /nod /exepack /packd /a:16 /far
- RFLAGS = -r
-
- LIBS = $(DHLIB)\dhcalls.lib $(ADDLIB)\addcalls.lib $(LIB)\libh.lib $(RMLIB)\rmcalls.lib
- DEF02 = IBMIDECD.def
-
- #****************************************************************************
- # Set up Macros that will contain all the different dependencies for the
- # executables and dlls etc. that are generated.
- #****************************************************************************
-
- #
- # OBJ files
- #
- #
- OBJ1 = ATAPISEG.OBJ ATAPIISM.OBJ ATAPIOSM.OBJ ATAPIGEN.OBJ ATAPIDAT.OBJ
- OBJ2 = ATAPIORB.OBJ
- OBJ3 = ATAPInit.OBJ PRINTF.OBJ
-
- #
- # LIST Files
- #
- LIST= ATAPISEG.LST ATAPIISM.LST ATAPIOSM.LST ATAPIGEN.LST ATAPIDAT.LST \
- ATAPIORB.LST ATAPINIT.LST PRINTF.LST DPRINTF.LST
-
- OBJS = $(OBJ1) $(OBJ2) $(OBJ3)
-
- #****************************************************************************
- # Setup the inference rules for compiling and assembling source code to
- # obejct code.
- #****************************************************************************
-
-
- .asm.obj:
- $(AS) $(AFLAGS) $(AINC) $*.asm;
-
- .asm.lst:
- $(AS) -l -n $(AFLAGS) $(AINC) $*.asm;
-
- .c.obj:
- $(CC) $(CFLAGS) $(CINC) $*.c
-
- .c.lst:
- $(CC) $(CFLAGS) /Fc $(CINC) $*.c
- copy $*.cod $*.lst
- del $*.cod
-
-
- #****************************************************************************
- # Target Information
- #****************************************************************************
- #
- # This is a very important step. The following small amount of code MUST
- # NOT be removed from the program. The following directive will do
- # dependency checking every time this component is built UNLESS the
- # following is performed:
- # A specific tag is used -- ie. all
- #
- # This allows the developer as well as the B & I group to perform incremental
- # build with a degree of accuracy that has not been used before.
- # There are some instances where certain types of INCLUDE files must be
- # created first. This type of format will allow the developer to require
- # that file to be created first. In order to achive that, all that has to
- # be done is to make the DEPEND.MAK tag have your required target. Below is
- # an example:
- #
- # depend.mak: { your file(s) } dephold
- #
- # Please DON'T remove the following line
- #
-
- !include "$(H)\version.mak"
-
- #
- # Should be the default tag for all general processing
- #
-
- all: IBMIDECD.FLT
-
- list: $(LIST)
-
- clean:
- if exist *.lnk del *.lnk
- if exist *.obj del *.obj
- if exist *.map del *.map
- if exist *.old del *.old
- if exist *.lst del *.lst
- if exist *.lsd del *.lsd
- if exist *.sym del *.sym
- if exist *.sys del *.sys
- if exist *.add del *.add
- if exist *.flt del *.flt
- if exist *.tff del *.tff
- if exist *.def del *.def
-
-
- #*****************************************************************************
- # Specific Description Block Information
- #*****************************************************************************
-
- # This section would only be for specific direction as to how to create
- # unique elements that are necessary to the build process. This could
- # be compiling or assembling, creation of DEF files and other unique
- # files.
- # If all compiler and assembly rules are the same, use an inference rule to
- # perform the compilation.
- #
-
- IBMIDECD.FLT: $(OBJS) $(LIBS) makefile
- rem Create DEF file <<$(DEF02)
- LIBRARY IBMIDECD
-
- DESCRIPTION "$(FILEVER) Adapter Driver for ATAPI CD-ROMs"
-
- PROTMODE
-
- SEGMENTS
- DDHeader CLASS 'DATA'
- LIBDATA CLASS 'DATA'
- _DATA CLASS 'DATA'
- CONST CLASS 'CONST'
- _BSS CLASS 'BSS'
- 'Code' CLASS 'CODE' IOPL
- LIBCODE CLASS 'CODE' IOPL
- _TEXT CLASS 'CODE' IOPL
- 'RMCode' CLASS 'CODE' IOPL
-
- <<keep
- $(LINK) $(LFLAGS) @<<$(@B).lnk
- $(OBJ1) +
- $(OBJ2) +
- $(OBJ3)
- $*.FLT
- $*.map
- $(LIBS)
- $(DEF02)
- <<keep
- $(MAPSYM) $*.map
-
- #****************************************************************************
-