xref: /AOO41X/main/sal/systools/win32/uwinapi/makefile.mk (revision b2937f997bda0a05141a2d862a64f7be893955b7)
1#*************************************************************************
2#
3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4#
5# Copyright 2000, 2010 Oracle and/or its affiliates.
6#
7# OpenOffice.org - a multi-platform office productivity suite
8#
9# This file is part of OpenOffice.org.
10#
11# OpenOffice.org is free software: you can redistribute it and/or modify
12# it under the terms of the GNU Lesser General Public License version 3
13# only, as published by the Free Software Foundation.
14#
15# OpenOffice.org is distributed in the hope that it will be useful,
16# but WITHOUT ANY WARRANTY; without even the implied warranty of
17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18# GNU Lesser General Public License version 3 for more details
19# (a copy is included in the LICENSE file that accompanied this code).
20#
21# You should have received a copy of the GNU Lesser General Public License
22# version 3 along with OpenOffice.org.  If not, see
23# <http://www.openoffice.org/license.html>
24# for a copy of the LGPLv3 License.
25#
26#*************************************************************************
27
28PRJ=..$/..$/..
29PRJNAME=sal
30TARGET=uwinapi
31
32USE_DEFFILE=TRUE
33LIBTARGET=NO
34
35# --- Settings ----------------------------------
36
37.INCLUDE : settings.mk
38
39CFLAGS+= $(LFS_CFLAGS)
40CXXFLAGS+= $(LFS_CFLAGS)
41
42# --- Targets ----------------------------------
43
44
45.IF "$(GUI)"=="WNT"
46.IF "$(COM)"=="GCC"
47CFLAGSCXX+=-Wno-unused-parameter -Wno-return-type
48.ENDIF
49
50.IF "$(COMEX)"=="9"
51.IF "$(PSDK_HOME)"!=""
52# Since the 02/2003 PSDK the "new" linker is needed here.
53LINK=$(WRAPCMD) "$(PSDK_HOME)$/Bin$/Win64$/LINK.EXE"
54.ENDIF
55.ENDIF
56
57SLOFILES=\
58        $(SLO)$/CheckTokenMembership.obj\
59        $(SLO)$/CommandLineToArgvW.obj\
60        $(SLO)$/CopyFileExA.obj\
61        $(SLO)$/CopyFileExW.obj\
62        $(SLO)$/DrawStateW.obj\
63        $(SLO)$/EnumProcesses.obj\
64        $(SLO)$/GetLogicalDriveStringsW.obj\
65        $(SLO)$/GetLongPathNameA.obj\
66        $(SLO)$/GetLongPathNameW.obj\
67        $(SLO)$/GetModuleFileNameExA.obj\
68        $(SLO)$/GetModuleFileNameExW.obj\
69        $(SLO)$/GetProcessId.obj\
70        $(SLO)$/GetUserDefaultUILanguage.obj\
71        $(SLO)$/GetUserDomainA.obj\
72        $(SLO)$/GetUserDomainW.obj\
73        $(SLO)$/GetDiskFreeSpaceExA.obj\
74        $(SLO)$/GetDiskFreeSpaceExW.obj\
75        $(SLO)$/MoveFileExA.obj\
76        $(SLO)$/MoveFileExW.obj\
77        $(SLO)$/toolhelp.obj\
78        $(SLO)$/ResolveThunk.obj\
79        $(SLO)$/ResolveUnicows.obj\
80        $(SLO)$/snprintf.obj\
81        $(SLO)$/snwprintf.obj\
82        $(SLO)$/FindFirstVolumeA.obj\
83        $(SLO)$/FindFirstVolumeW.obj\
84        $(SLO)$/FindNextVolumeA.obj\
85        $(SLO)$/FindNextVolumeW.obj\
86        $(SLO)$/FindVolumeClose.obj\
87        $(SLO)$/FindFirstVolumeMountPointA.obj\
88        $(SLO)$/FindFirstVolumeMountPointW.obj\
89        $(SLO)$/FindNextVolumeMountPointA.obj\
90        $(SLO)$/FindNextVolumeMountPointW.obj\
91        $(SLO)$/FindVolumeMountPointClose.obj\
92        $(SLO)$/GetVolumeNameForVolumeMountPointA.obj\
93        $(SLO)$/GetVolumeNameForVolumeMountPointW.obj\
94        $(SLO)$/DeleteVolumeMountPointA.obj\
95        $(SLO)$/DeleteVolumeMountPointW.obj\
96        $(SLO)$/GetVolumePathNameA.obj\
97        $(SLO)$/GetVolumePathNameW.obj\
98        $(SLO)$/SetVolumeMountPointA.obj\
99        $(SLO)$/SetVolumeMountPointW.obj\
100        $(SLO)$/PathAddBackslashW.obj\
101        $(SLO)$/PathCompactPathExW.obj\
102        $(SLO)$/PathFileExistsW.obj\
103        $(SLO)$/PathFindExtensionW.obj\
104        $(SLO)$/PathFindFileNameW.obj\
105        $(SLO)$/PathIsFileSpecW.obj\
106        $(SLO)$/PathIsUNCW.obj\
107        $(SLO)$/PathRemoveExtensionW.obj\
108        $(SLO)$/PathRemoveFileSpecW.obj\
109        $(SLO)$/PathSetDlgItemPathW.obj\
110        $(SLO)$/PathStripToRootW.obj\
111        $(SLO)$/SHCreateItemFromParsingName.obj
112
113SHL1TARGET=$(TARGET)
114SHL1IMPLIB=$(SHL1TARGET)
115SHL1DEF=$(MISC)/$(SHL1TARGET).def
116DEF1NAME=$(SHL1TARGET)
117.IF "$(COM)"=="GCC"
118DEF1EXPORTFILE=\
119    $(SHL1TARGET)_mingw.dxp\
120    unicows_mingw.dxp
121.ELSE
122DEF1EXPORTFILE=\
123    $(SHL1TARGET).dxp\
124    unicows.dxp
125.ENDIF
126DEF1DEPN=\
127        $(DEF1EXPORTFILE)\
128        makefile.mk
129
130#SHL1VERINFO=$(SHL1TARGET).rc
131SHL1OBJS=$(SLOFILES)
132
133#No default libraries
134STDSHL=
135
136.IF "$(COM)"=="GCC"
137SHL1STDLIBS=\
138        -lmingw32 \
139        $(MINGW_LIBGCC)
140MINGWSSTDOBJ=
141MINGWSSTDENDOBJ=
142.ELSE
143SHL1STDLIBS=\
144        unicows.lib
145.ENDIF
146
147SHL1STDLIBS+=\
148        $(KERNEL32LIB)\
149        $(USER32LIB)\
150        $(ADVAPI32LIB)\
151        $(VERSIONLIB)\
152        $(LIBCMT)\
153        $(SHLWAPILIB)
154
155
156.ENDIF
157
158.IF "$(COM)"=="GCC"
159ALL: ALLTAR $(LB)$/libuwinapi.a
160
161$(LB)$/libuwinapi.a: $(MISC)$/uwinapi.def
162    dlltool --dllname uwinapi.dll --input-def=$(MISC)$/uwinapi.def --kill-at --output-lib=$(LB)$/libuwinapi.a
163.ENDIF
164
165.INCLUDE : target.mk
166