source: trunk/make/link_exe.in@ 327

Last change on this file since 327 was 249, checked in by umoeller, 23 years ago

Build updates, moved files from warpin.

  • Property svn:eol-style set to CRLF
  • Property svn:keywords set to Author Date Id Revision
File size: 1.8 KB
Line 
1#
2# Required input:
3#
4# -- XWP_UNLOCK_MODULES
5#
6# -- MODULESTEM
7#
8# -- MODULESDIR
9#
10# -- COPYTODIR (optional)
11#
12# -- BLDLEVELNAME (optional)
13#
14# -- RESOURCE_SOURCES
15#
16# -- either LINKOBJS or OBJS
17#
18
19!ifdef COPYTODIR
20
21ALLTARGET = $(COPYTODIR)\$(MODULESTEM).exe
22
23$(COPYTODIR)\$(MODULESTEM).exe: $(MODULESDIR)\$(@B).exe
24!ifdef XWP_UNLOCK_MODULES
25 $(RUN_UNLOCK) $@
26!endif
27 $(COPY) $(MODULESDIR)\$(@B).exe $(COPYTODIR)
28 $(COPY) $(MODULESDIR)\$(@B).sym $(COPYTODIR)
29
30!else
31
32ALLTARGET = $(MODULESDIR)\$(MODULESTEM).exe
33
34!endif
35
36!ifdef BLDLEVELNAME
37!ifndef MODULEDEF
38MODULEDEF = $(MODULESTEM).def
39!endif
40
41# update DEF file if buildlevel has changed
42$(MODULEDEF): $(BLDLEVEL_H)
43 @echo ### Updating $(@F) from "$(BLDLEVEL_H)"
44 $(RUN_BLDLEVEL) $@ $(BLDLEVEL_H) $(BLDLEVELNAME)
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
53DEPEND_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
62LINKOBJS = $(OBJS)
63!endif
64
65!ifndef LINKCMD
66LINKCMD = $(LINK)
67!endif
68
69$(MODULESDIR)\$(MODULESTEM).exe: $(LINKOBJS) $(MODULEDEF) $(DEPEND_RES)
70 @echo ### [$@]: Linking $(@F)
71 $(LINKCMD) @<<
72/OUT:$@ $(MODULEDEF) $(LINKOBJS) $(PMPRINTF_LIB)
73<<KEEP
74!ifdef DEPEND_RES
75 @echo ### [$@]: Appending $(@B).res
76 $(RC) $(OUTPUTDIR)\$(@B).res $@
77!endif
78!ifdef XWP_OUTPUT_ROOT_DRIVE
79 @$(XWP_OUTPUT_ROOT_DRIVE)
80!endif
81 @cd $(MODULESDIR)
82 $(RUN_MAPSYM) $(MAPDIR)\$(@B).map
83!ifdef CVS_WORK_ROOT_DRIVE
84 @$(CVS_WORK_ROOT_DRIVE)
85!endif
86 @cd $(CURRENT_DIR)
87
Note: See TracBrowser for help on using the repository browser.