| 1 | #
 | 
|---|
| 2 | #   Required input:
 | 
|---|
| 3 | #
 | 
|---|
| 4 | #       --  MODULESTEM
 | 
|---|
| 5 | #
 | 
|---|
| 6 | #       --  MODULESDIR
 | 
|---|
| 7 | #
 | 
|---|
| 8 | #       --  COPYTODIR (optional)
 | 
|---|
| 9 | #
 | 
|---|
| 10 | #       --  BLDLEVELNAME (optional)
 | 
|---|
| 11 | #
 | 
|---|
| 12 | #       --  RESOURCE_SOURCES
 | 
|---|
| 13 | #
 | 
|---|
| 14 | #       --  either LINKOBJS or OBJS
 | 
|---|
| 15 | #
 | 
|---|
| 16 | 
 | 
|---|
| 17 | !ifdef COPYTODIR
 | 
|---|
| 18 | 
 | 
|---|
| 19 | ALLTARGET = $(COPYTODIR)\$(MODULESTEM).dll
 | 
|---|
| 20 | 
 | 
|---|
| 21 | $(COPYTODIR)\$(MODULESTEM).dll: $(MODULESDIR)\$(@B).dll
 | 
|---|
| 22 | !ifdef XWP_UNLOCK_MODULES
 | 
|---|
| 23 |     $(RUN_UNLOCK) $@
 | 
|---|
| 24 | !endif
 | 
|---|
| 25 |     $(COPY) $(MODULESDIR)\$(@B).dll $(COPYTODIR)
 | 
|---|
| 26 |     $(COPY) $(MODULESDIR)\$(@B).sym $(COPYTODIR)
 | 
|---|
| 27 | 
 | 
|---|
| 28 | !else
 | 
|---|
| 29 | 
 | 
|---|
| 30 | ALLTARGET = $(MODULESDIR)\$(MODULESTEM).dll
 | 
|---|
| 31 | 
 | 
|---|
| 32 | !endif
 | 
|---|
| 33 | 
 | 
|---|
| 34 | !ifdef BLDLEVELNAME
 | 
|---|
| 35 | !ifndef MODULEDEF
 | 
|---|
| 36 | MODULEDEF = $(MODULESTEM).def
 | 
|---|
| 37 | !endif
 | 
|---|
| 38 | 
 | 
|---|
| 39 | # update DEF file
 | 
|---|
| 40 | !if [@echo   +++ Updating $(MODULEDEF) from "$(BLDLEVEL_H)"]
 | 
|---|
| 41 | !endif
 | 
|---|
| 42 | !if [@$(RUN_BLDLEVEL) $(MODULEDEF) $(BLDLEVEL_H) $(BLDLEVELNAME)]
 | 
|---|
| 43 | !endif
 | 
|---|
| 44 | 
 | 
|---|
| 45 | !endif
 | 
|---|
| 46 | 
 | 
|---|
| 47 | !undef DEPEND_RES
 | 
|---|
| 48 | 
 | 
|---|
| 49 | !ifdef RESOURCE_SOURCES
 | 
|---|
| 50 | $(OUTPUTDIR)\$(MODULESTEM).res: $(RESOURCE_SOURCES)
 | 
|---|
| 51 |     @echo   ### [$@]: Recreating res $(@F)
 | 
|---|
| 52 |     $(RC) -r $(@B).rc $(OUTPUTDIR)\$(@B).res
 | 
|---|
| 53 | DEPEND_RES = $(OUTPUTDIR)\$(MODULESTEM).res
 | 
|---|
| 54 | !endif
 | 
|---|
| 55 | 
 | 
|---|
| 56 | #
 | 
|---|
| 57 | # now go link... if $(LINKOBJS) is defined, use that,
 | 
|---|
| 58 | # otherwise use $(OBJS)
 | 
|---|
| 59 | #
 | 
|---|
| 60 | 
 | 
|---|
| 61 | !ifndef LINKOBJS
 | 
|---|
| 62 | LINKOBJS = $(OBJS)
 | 
|---|
| 63 | !endif
 | 
|---|
| 64 | 
 | 
|---|
| 65 | $(MODULESDIR)\$(MODULESTEM).dll: $(LINKOBJS) $(MODULEDEF) $(DEPEND_RES)
 | 
|---|
| 66 |     @echo   ### [$@]: Linking $(@F)
 | 
|---|
| 67 |     $(LINK) @<<
 | 
|---|
| 68 | /OUT:$@ $(MODULEDEF) $(LINKOBJS) $(PMPRINTF_LIB)
 | 
|---|
| 69 | <<NOKEEP
 | 
|---|
| 70 | !ifdef DEPEND_RES
 | 
|---|
| 71 |     @echo   ### [$@]: Appending $(@B).res
 | 
|---|
| 72 |     $(RC) $(OUTPUTDIR)\$(@B).res $@
 | 
|---|
| 73 | !endif
 | 
|---|
| 74 | !ifdef XWP_OUTPUT_ROOT_DRIVE
 | 
|---|
| 75 |     @$(XWP_OUTPUT_ROOT_DRIVE)
 | 
|---|
| 76 | !endif
 | 
|---|
| 77 |     @cd $(MODULESDIR)
 | 
|---|
| 78 |     $(RUN_MAPSYM) $(@B).map
 | 
|---|
| 79 | !ifdef CVS_WORK_ROOT_DRIVE
 | 
|---|
| 80 |     @$(CVS_WORK_ROOT_DRIVE)
 | 
|---|
| 81 | !endif
 | 
|---|
| 82 |     @cd $(CURRENT_DIR)
 | 
|---|
| 83 | !ifdef RAISEBUILD
 | 
|---|
| 84 |     @echo   ### [$@]: Raising build number
 | 
|---|
| 85 |     @cmd.exe /c tools\raisebld.cmd include\build.h
 | 
|---|
| 86 | !endif
 | 
|---|
| 87 | 
 | 
|---|