header.kmk: Made it possible to change PATH_OUT_BASE as well.
[kbuild-mirror.git] / kBuild / sdks / WINPSDK.kmk
blob49449cdd969d7324f1e20a99dc06fcad9b601409
1 # $Id$
2 ## @file
3 # kBuild SDK - The Windows Platform SDK, targeting (KBUILD_TARGET).
7 # Copyright (c) 2006-2008 knut st. osmundsen <bird-kBuild-spam@anduin.net>
9 # This file is part of kBuild.
11 # kBuild is free software; you can redistribute it and/or modify
12 # it under the terms of the GNU General Public License as published by
13 # the Free Software Foundation; either version 2 of the License, or
14 # (at your option) any later version.
16 # kBuild is distributed in the hope that it will be useful,
17 # but WITHOUT ANY WARRANTY; without even the implied warranty of
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 # GNU General Public License for more details.
21 # You should have received a copy of the GNU General Public License
22 # along with kBuild; if not, write to the Free Software
23 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 # As a special exception you are granted permission to include this file, via
27 # the kmk include directive, as you wish without this in itself causing the
28 # resulting makefile, program or whatever to be covered by the GPL license.
29 # This exception does not however invalidate any other reasons why the makefile,
30 # program, whatever should not be covered the GPL.
34 SDK_WINPSDK := The Windows Platform SDK, targeting (KBUILD_TARGET).
36 # SDK Specific Properties
37 ifndef PATH_SDK_WINPSDK
38 PATH_SDK_WINPSDK := $(wildcard $(PATH_DEVTOOLS_BLD)/sdk/2*)
39 ifeq ($(PATH_SDK_WINPSDK),)
40 PATH_SDK_WINPSDK := $(wildcard $(PATH_DEVTOOLS_TRG)/sdk/2*)
41 endif
42 ifeq ($(PATH_SDK_WINPSDK),)
43 PATH_SDK_WINPSDK := $(wildcard $(PATH_DEVTOOLS)/win.x86/sdk/2*)
44 endif
45 ifeq ($(PATH_SDK_WINPSDK),)
46 PATH_SDK_WINPSDK := $(wildcard $(PATH_DEVTOOLS)/x86.win32/sdk/2*)
47 endif
48 ifeq ($(PATH_SDK_WINPSDK),)
49 PATH_SDK_WINPSDK := $(wildcard $(PATH_DEVTOOLS)/win.amd64/sdk/2*)
50 endif
51 ifneq ($(PATH_SDK_WINPSDK),)
52 PATH_SDK_WINPSDK := $(lastword $(sort $(PATH_SDK_WINPSDK)))
53 else
54 $(warning kBuild: PATH_SDK_WINPSDK couldn't be determined!)
55 PATH_SDK_WINPSDK := $(PATH_DEVTOOLS_BLD)/sdk/not/found
56 endif
57 else
58 PATH_SDK_WINPSDK := $(PATH_SDK_WINPSDK)
59 endif
61 ifndef PATH_SDK_WINPSDK_INC
62 PATH_SDK_WINPSDK_INC := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WINPSDK)/Include)
63 endif
65 ifndef PATH_SDK_WINPSDK_LIB.x86
66 PATH_SDK_WINPSDK_LIB.x86 := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Ll][Ii][Bb]) $(PATH_SDK_WINPSDK)/Lib)
67 endif
68 ifndef PATH_SDK_WINPSDK_LIB.amd64
69 PATH_SDK_WINPSDK_LIB.amd64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Ll][Ii][Bb]/[Aa][Mm][Dd]64 $(PATH_SDK_WINPSDK)/[Ll][Ii][Bb]/[xX]64) $(PATH_SDK_WINPSDK)/Lib/AMD64)
70 endif
71 PATH_SDK_WINPSDK_LIB ?= $(PATH_SDK_WINPSDK_LIB.$(KBUILD_TARGET_ARCH))
73 ifndef PATH_SDK_WINPSDK_BIN
74 PATH_SDK_WINPSDK_BIN := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Bb][Ii][Nn]) $(PATH_SDK_WINPSDK)/Bin)
75 endif
76 ifndef PATH_SDK_WINPSDK_BIN_AMD64
77 PATH_SDK_WINPSDK_BIN_AMD64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK_BIN)/[Ww][Ii][Nn]64/[Xx]86/[Aa][Mm][Dd]64 $(PATH_SDK_WINPSDK_BIN)/[Ww][Ii][Nn]64/[Xx]86) $(PATH_SDK_WINPSDK_BIN)/win64/AMD64)
78 endif
79 ifndef PATH_SDK_WINPSDK_BIN_IA64
80 PATH_SDK_WINPSDK_BIN_IA64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK_BIN)/[Ww][Ii][Nn]64) $(PATH_SDK_WINPSDK_BIN)/win64)
81 endif
84 # General Properties used by kBuild
85 SDK_WINPSDK_INCS ?= $(PATH_SDK_WINPSDK_INC)
86 SDK_WINPSDK_LIBPATH ?= $(PATH_SDK_WINPSDK_LIB)
87 SDK_WINPSDK_LIBS ?= \
88 $(PATH_SDK_WINPSDK_LIB)/Kernel32.Lib \
89 $(PATH_SDK_WINPSDK_LIB)/User32.Lib \
90 $(PATH_SDK_WINPSDK_LIB)/Gdi32.Lib \
91 $(PATH_SDK_WINPSDK_LIB)/AdvAPI32.Lib \
92 $(PATH_SDK_WINPSDK_LIB)/Shell32.Lib \
93 $(PATH_SDK_WINPSDK_LIB)/ShLwApi.Lib \
94 $(PATH_SDK_WINPSDK_LIB)/SetupAPI.Lib \
95 $(PATH_SDK_WINPSDK_LIB)/Uuid.Lib \
96 $(PATH_SDK_WINPSDK_LIB)/Version.Lib \
97 $(PATH_SDK_WINPSDK_LIB)/WS2_32.Lib \
99 $(PATH_SDK_WINPSDK_LIB)/Ole32.Lib \
100 $(PATH_SDK_WINPSDK_LIB)/OleAut32.Lib \
101 $(PATH_SDK_WINPSDK_LIB)/OleDlg.Lib \
102 $(PATH_SDK_WINPSDK_LIB)/RpcRT4.Lib \
104 $(PATH_SDK_WINPSDK_LIB)/DbgHelp.Lib \
105 $(PATH_SDK_WINPSDK_LIB)/ImageHlp.Lib \
106 $(PATH_SDK_WINPSDK_LIB)/IPHlpApi.Lib \
107 $(PATH_SDK_WINPSDK_LIB)/ComCtl32.Lib \
108 $(PATH_SDK_WINPSDK_LIB)/ComDlg32.Lib \
109 $(PATH_SDK_WINPSDK_LIB)/WinSpool.Lib \
110 $(PATH_SDK_WINPSDK_LIB)/WinMM.Lib