summaryrefslogtreecommitdiffstats
path: root/public/oak/bin/sources.tpl
blob: 5a424ac798a38d5f841fd3bc48bb59c580ba855b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
    !!!!!!!!!!!!!!!!!!!!! WHAT YOU NEED TO DO !!!!!!!!!!!!!!!!!!!!!

    - replace the xxxxx in the MAJORCOMP= and MINORCOMP= macros below
      with your components major and minor component name
      (e.g. MAJORCOMP=ntos, MINORCOMP=ke etc.).

    - replace the xxxxx in the TARGETNAME= macro below with your target name
      (e.g. OS2, POSIX, PM, etc.).

    - edit the TARGETPATH= and TARGETTYPE= macros below to specify the location
      any type of the target.

    - edit the INCLUDES= macro below if you have a private include directory
      to search.

    - carefully edit the SOURCES= macro below so that it defines all the source
      files for this subcomponent

    - edit out these noisy instructions and all comments

    - save this file, exit the editor and execute the "build" command.

    - From now on, issue build or nmake to build the subcomponent.

!IF 0

Copyright (c) 1989  Microsoft Corporation

Module Name:

    sources.

Abstract:

    This file specifies the target component being built and the list of
    sources files needed to build that component.  Also specifies optional
    compiler switches and libraries that are unique for the component being
    built.


Author:

    Steve Wood (stevewo) 12-Apr-1990

NOTE:   Commented description of this file is in \nt\bak\bin\sources.tpl

!ENDIF


#
# The MAJORCOMP and MINORCOMP variables are defined
# so that $(MAJORCOMP)$(MINORCOMP)filename can be used in
# cross compiling to provide unique filenames in a flat namespace.
#

MAJORCOMP=xxxxx
MINORCOMP=xxxxx

#
# The TARGETNAME variable is defined by the developer.  It is the name of
# the target (component) that is being built by this makefile.  It
# should NOT include any path or file extension information.
#

TARGETNAME=xxxxx


#
# The TARGETPATH and TARGETTYPE variables are defined by the developer.
# The first specifies where the target is to be build.  The second specifies
# the type of target (either PROGRAM, DYNLINK, LIBRARY, UMAPPL_NOLIB or
# BOOTPGM).  UMAPPL_NOLIB is used when you're only building user-mode
# apps and don't need to build a library.
#

TARGETPATH=..\obj

# Pick one of the following and delete the others
TARGETTYPE=PROGRAM
TARGETTYPE=DYNLINK
TARGETTYPE=LIBRARY
TARGETTYPE=UMAPPL_NOLIB
TARGETTYPE=BOOTPGM


#
# The TARGETLIBS specifies additional libraries to link with you target
# image.  Each library path specification should contain an asterisk (*)
# where the machine specific subdirectory name should go.
#

TARGETLIBS=


#
# The INCLUDES variable specifies any include paths that are specific to
# this source directory.  Separate multiple directory paths with single
# semicolons.  Relative path specifications are okay.
#

INCLUDES=..\inc


#
# The SOURCES variable is defined by the developer.  It is a list of all the
# source files for this component.  Each source file should be on a separate
# line using the line continuation character.  This will minimize merge
# conflicts if two developers adding source files to the same component.
#

SOURCES=source1.c  \
        source2.c  \
        source3.c  \
        source4.c

i386_SOURCES=i386\source1.asm

i860_SOURCES=i860\source1.s

MIPS_SOURCES=mips\source1.s

PPC_SOURCES=ppc\source1.s


#
# Next specify options for the compiler.
#

C_DEFINES=
#   USE_CL860_LARGE_MODEL=


#
# Next specify a kernel mode test (valid only in NTOS tree)
#

NTTEST=

#
# Next specify one or more user mode test programs and their type
# UMTEST is used for optional test programs.  UMAPPL is used for
# programs that always get built when the directory is built.
#

UMTYPE=nt
UMTEST=foo*baz
UMAPPL=foo*baz
UMBASE=0x1000000
UMLIBS=obj\*\foo.lib

#
# Defining either (or both) the variables NTTARGETFILE0 and/or NTTARGETFILES
# will cause MAKEFILE.DEF to include .\makefile.inc immediately after it
# specifies the top level targets (all, clean and loc) and their dependencies.
# MAKEFILE.DEF also expands NTTARGETFILE0 as the first dependent for the
# "all" target and NTTARGETFILES as the last dependent for the "all" target.
# Useful for specifying additional targets and dependencies that don't fit the
# general case covered by MAKEFILE.DEF
#

#   NTTARGETFILE0=
#   NTTARGETFILES=