1*b1cdbd2cSJim Jagielski#**************************************************************
2*b1cdbd2cSJim Jagielski#
3*b1cdbd2cSJim Jagielski#  Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski#  or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski#  distributed with this work for additional information
6*b1cdbd2cSJim Jagielski#  regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski#  to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski#  "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski#  with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski#
11*b1cdbd2cSJim Jagielski#    http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski#
13*b1cdbd2cSJim Jagielski#  Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski#  software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski#  KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski#  specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski#  under the License.
19*b1cdbd2cSJim Jagielski#
20*b1cdbd2cSJim Jagielski#**************************************************************
21*b1cdbd2cSJim Jagielski
22*b1cdbd2cSJim Jagielski
23*b1cdbd2cSJim Jagielski
24*b1cdbd2cSJim JagielskiPRJ=..$/..$/..
25*b1cdbd2cSJim JagielskiPRJNAME=sal
26*b1cdbd2cSJim JagielskiTARGET=uwinapi
27*b1cdbd2cSJim Jagielski
28*b1cdbd2cSJim JagielskiUSE_DEFFILE=TRUE
29*b1cdbd2cSJim JagielskiLIBTARGET=NO
30*b1cdbd2cSJim Jagielski
31*b1cdbd2cSJim Jagielski# --- Settings ----------------------------------
32*b1cdbd2cSJim Jagielski
33*b1cdbd2cSJim Jagielski.INCLUDE : settings.mk
34*b1cdbd2cSJim Jagielski
35*b1cdbd2cSJim JagielskiCFLAGS+= $(LFS_CFLAGS)
36*b1cdbd2cSJim JagielskiCXXFLAGS+= $(LFS_CFLAGS)
37*b1cdbd2cSJim Jagielski
38*b1cdbd2cSJim Jagielski# --- Targets ----------------------------------
39*b1cdbd2cSJim Jagielski
40*b1cdbd2cSJim Jagielski
41*b1cdbd2cSJim Jagielski.IF "$(GUI)"=="WNT"
42*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC"
43*b1cdbd2cSJim JagielskiCFLAGSCXX+=-Wno-unused-parameter -Wno-return-type
44*b1cdbd2cSJim Jagielski.ENDIF
45*b1cdbd2cSJim Jagielski
46*b1cdbd2cSJim Jagielski.IF "$(COMEX)"=="9"
47*b1cdbd2cSJim Jagielski.IF "$(PSDK_HOME)"!=""
48*b1cdbd2cSJim Jagielski# Since the 02/2003 PSDK the "new" linker is needed here.
49*b1cdbd2cSJim JagielskiLINK=$(WRAPCMD) "$(PSDK_HOME)$/Bin$/Win64$/LINK.EXE"
50*b1cdbd2cSJim Jagielski.ENDIF
51*b1cdbd2cSJim Jagielski.ENDIF
52*b1cdbd2cSJim Jagielski
53*b1cdbd2cSJim JagielskiSLOFILES=\
54*b1cdbd2cSJim Jagielski		$(SLO)$/CheckTokenMembership.obj\
55*b1cdbd2cSJim Jagielski		$(SLO)$/CommandLineToArgvW.obj\
56*b1cdbd2cSJim Jagielski		$(SLO)$/CopyFileExA.obj\
57*b1cdbd2cSJim Jagielski		$(SLO)$/CopyFileExW.obj\
58*b1cdbd2cSJim Jagielski		$(SLO)$/DrawStateW.obj\
59*b1cdbd2cSJim Jagielski		$(SLO)$/EnumProcesses.obj\
60*b1cdbd2cSJim Jagielski		$(SLO)$/GetLogicalDriveStringsW.obj\
61*b1cdbd2cSJim Jagielski		$(SLO)$/GetLongPathNameA.obj\
62*b1cdbd2cSJim Jagielski		$(SLO)$/GetLongPathNameW.obj\
63*b1cdbd2cSJim Jagielski		$(SLO)$/GetModuleFileNameExA.obj\
64*b1cdbd2cSJim Jagielski		$(SLO)$/GetModuleFileNameExW.obj\
65*b1cdbd2cSJim Jagielski		$(SLO)$/GetProcessId.obj\
66*b1cdbd2cSJim Jagielski		$(SLO)$/GetUserDefaultUILanguage.obj\
67*b1cdbd2cSJim Jagielski		$(SLO)$/GetUserDomainA.obj\
68*b1cdbd2cSJim Jagielski		$(SLO)$/GetUserDomainW.obj\
69*b1cdbd2cSJim Jagielski		$(SLO)$/GetDiskFreeSpaceExA.obj\
70*b1cdbd2cSJim Jagielski		$(SLO)$/GetDiskFreeSpaceExW.obj\
71*b1cdbd2cSJim Jagielski		$(SLO)$/MoveFileExA.obj\
72*b1cdbd2cSJim Jagielski		$(SLO)$/MoveFileExW.obj\
73*b1cdbd2cSJim Jagielski		$(SLO)$/toolhelp.obj\
74*b1cdbd2cSJim Jagielski		$(SLO)$/ResolveThunk.obj\
75*b1cdbd2cSJim Jagielski		$(SLO)$/ResolveUnicows.obj\
76*b1cdbd2cSJim Jagielski		$(SLO)$/snprintf.obj\
77*b1cdbd2cSJim Jagielski		$(SLO)$/snwprintf.obj\
78*b1cdbd2cSJim Jagielski		$(SLO)$/FindFirstVolumeA.obj\
79*b1cdbd2cSJim Jagielski		$(SLO)$/FindFirstVolumeW.obj\
80*b1cdbd2cSJim Jagielski		$(SLO)$/FindNextVolumeA.obj\
81*b1cdbd2cSJim Jagielski		$(SLO)$/FindNextVolumeW.obj\
82*b1cdbd2cSJim Jagielski		$(SLO)$/FindVolumeClose.obj\
83*b1cdbd2cSJim Jagielski		$(SLO)$/FindFirstVolumeMountPointA.obj\
84*b1cdbd2cSJim Jagielski		$(SLO)$/FindFirstVolumeMountPointW.obj\
85*b1cdbd2cSJim Jagielski		$(SLO)$/FindNextVolumeMountPointA.obj\
86*b1cdbd2cSJim Jagielski		$(SLO)$/FindNextVolumeMountPointW.obj\
87*b1cdbd2cSJim Jagielski		$(SLO)$/FindVolumeMountPointClose.obj\
88*b1cdbd2cSJim Jagielski		$(SLO)$/GetVolumeNameForVolumeMountPointA.obj\
89*b1cdbd2cSJim Jagielski		$(SLO)$/GetVolumeNameForVolumeMountPointW.obj\
90*b1cdbd2cSJim Jagielski		$(SLO)$/DeleteVolumeMountPointA.obj\
91*b1cdbd2cSJim Jagielski		$(SLO)$/DeleteVolumeMountPointW.obj\
92*b1cdbd2cSJim Jagielski		$(SLO)$/GetVolumePathNameA.obj\
93*b1cdbd2cSJim Jagielski		$(SLO)$/GetVolumePathNameW.obj\
94*b1cdbd2cSJim Jagielski		$(SLO)$/SetVolumeMountPointA.obj\
95*b1cdbd2cSJim Jagielski		$(SLO)$/SetVolumeMountPointW.obj\
96*b1cdbd2cSJim Jagielski		$(SLO)$/PathAddBackslashW.obj\
97*b1cdbd2cSJim Jagielski		$(SLO)$/PathCompactPathExW.obj\
98*b1cdbd2cSJim Jagielski		$(SLO)$/PathFileExistsW.obj\
99*b1cdbd2cSJim Jagielski		$(SLO)$/PathFindExtensionW.obj\
100*b1cdbd2cSJim Jagielski		$(SLO)$/PathFindFileNameW.obj\
101*b1cdbd2cSJim Jagielski		$(SLO)$/PathIsFileSpecW.obj\
102*b1cdbd2cSJim Jagielski		$(SLO)$/PathIsUNCW.obj\
103*b1cdbd2cSJim Jagielski		$(SLO)$/PathRemoveExtensionW.obj\
104*b1cdbd2cSJim Jagielski		$(SLO)$/PathRemoveFileSpecW.obj\
105*b1cdbd2cSJim Jagielski		$(SLO)$/PathSetDlgItemPathW.obj\
106*b1cdbd2cSJim Jagielski		$(SLO)$/PathStripToRootW.obj\
107*b1cdbd2cSJim Jagielski		$(SLO)$/SHCreateItemFromParsingName.obj
108*b1cdbd2cSJim Jagielski
109*b1cdbd2cSJim JagielskiSHL1TARGET=$(TARGET)
110*b1cdbd2cSJim JagielskiSHL1IMPLIB=$(SHL1TARGET)
111*b1cdbd2cSJim JagielskiSHL1DEF=$(MISC)/$(SHL1TARGET).def
112*b1cdbd2cSJim JagielskiDEF1NAME=$(SHL1TARGET)
113*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC"
114*b1cdbd2cSJim JagielskiDEF1EXPORTFILE=\
115*b1cdbd2cSJim Jagielski	$(SHL1TARGET)_mingw.dxp\
116*b1cdbd2cSJim Jagielski	unicows_mingw.dxp
117*b1cdbd2cSJim Jagielski.ELSE
118*b1cdbd2cSJim JagielskiDEF1EXPORTFILE=\
119*b1cdbd2cSJim Jagielski	$(SHL1TARGET).dxp\
120*b1cdbd2cSJim Jagielski	unicows.dxp
121*b1cdbd2cSJim Jagielski.ENDIF
122*b1cdbd2cSJim JagielskiDEF1DEPN=\
123*b1cdbd2cSJim Jagielski		$(DEF1EXPORTFILE)\
124*b1cdbd2cSJim Jagielski		makefile.mk
125*b1cdbd2cSJim Jagielski
126*b1cdbd2cSJim Jagielski#SHL1VERINFO=$(SHL1TARGET).rc
127*b1cdbd2cSJim JagielskiSHL1OBJS=$(SLOFILES)
128*b1cdbd2cSJim Jagielski
129*b1cdbd2cSJim Jagielski#No default libraries
130*b1cdbd2cSJim JagielskiSTDSHL=
131*b1cdbd2cSJim Jagielski
132*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC"
133*b1cdbd2cSJim JagielskiSHL1STDLIBS=\
134*b1cdbd2cSJim Jagielski		-lmingw32 \
135*b1cdbd2cSJim Jagielski		$(MINGW_LIBGCC)
136*b1cdbd2cSJim JagielskiMINGWSSTDOBJ=
137*b1cdbd2cSJim JagielskiMINGWSSTDENDOBJ=
138*b1cdbd2cSJim Jagielski.ELSE
139*b1cdbd2cSJim JagielskiSHL1STDLIBS=\
140*b1cdbd2cSJim Jagielski		unicows.lib
141*b1cdbd2cSJim Jagielski.ENDIF
142*b1cdbd2cSJim Jagielski
143*b1cdbd2cSJim JagielskiSHL1STDLIBS+=\
144*b1cdbd2cSJim Jagielski		$(KERNEL32LIB)\
145*b1cdbd2cSJim Jagielski		$(USER32LIB)\
146*b1cdbd2cSJim Jagielski		$(ADVAPI32LIB)\
147*b1cdbd2cSJim Jagielski		$(VERSIONLIB)\
148*b1cdbd2cSJim Jagielski		$(LIBCMT)\
149*b1cdbd2cSJim Jagielski		$(SHLWAPILIB)
150*b1cdbd2cSJim Jagielski
151*b1cdbd2cSJim Jagielski
152*b1cdbd2cSJim Jagielski.ENDIF
153*b1cdbd2cSJim Jagielski
154*b1cdbd2cSJim Jagielski.IF "$(COM)"=="GCC"
155*b1cdbd2cSJim JagielskiALL: ALLTAR $(LB)$/libuwinapi.a
156*b1cdbd2cSJim Jagielski
157*b1cdbd2cSJim Jagielski$(LB)$/libuwinapi.a: $(MISC)$/uwinapi.def
158*b1cdbd2cSJim Jagielski	dlltool --dllname uwinapi.dll --input-def=$(MISC)$/uwinapi.def --kill-at --output-lib=$(LB)$/libuwinapi.a
159*b1cdbd2cSJim Jagielski.ENDIF
160*b1cdbd2cSJim Jagielski
161*b1cdbd2cSJim Jagielski.INCLUDE : target.mk
162