From 29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 11 Apr 2024 10:21:29 +0200 Subject: Adding upstream version 1:0.1.9998svn3589+dfsg. Signed-off-by: Daniel Baumann --- kBuild/sdks/DXSDK.kmk | 67 +++++++++ kBuild/sdks/DXSDKAMD64.kmk | 61 +++++++++ kBuild/sdks/DXSDKX86.kmk | 62 +++++++++ kBuild/sdks/LIBSDL.kmk | 168 +++++++++++++++++++++++ kBuild/sdks/LIBSDL2.kmk | 154 +++++++++++++++++++++ kBuild/sdks/MACOSX1010.kmk | 62 +++++++++ kBuild/sdks/MACOSX1013.kmk | 62 +++++++++ kBuild/sdks/MACOSX1013INCS.kmk | 49 +++++++ kBuild/sdks/MACOSX1014.kmk | 62 +++++++++ kBuild/sdks/MACOSX1014INCS.kmk | 49 +++++++ kBuild/sdks/MACOSX1015.kmk | 62 +++++++++ kBuild/sdks/MACOSX1015INCS.kmk | 49 +++++++ kBuild/sdks/MACOSX104.kmk | 52 +++++++ kBuild/sdks/MACOSX104INCS.kmk | 50 +++++++ kBuild/sdks/MACOSX105.kmk | 52 +++++++ kBuild/sdks/MACOSX105INCS.kmk | 50 +++++++ kBuild/sdks/MACOSX110.kmk | 62 +++++++++ kBuild/sdks/MACOSX110INCS.kmk | 49 +++++++ kBuild/sdks/NT4DDK.kmk | 59 ++++++++ kBuild/sdks/OS2DDKBASE32.kmk | 59 ++++++++ kBuild/sdks/ReorderCompilerIncs.kmk | 63 +++++++++ kBuild/sdks/W2K3DDK.kmk | 81 +++++++++++ kBuild/sdks/W2K3DDKAMD64.kmk | 71 ++++++++++ kBuild/sdks/W2K3DDKX86.kmk | 74 ++++++++++ kBuild/sdks/W32API.kmk | 58 ++++++++ kBuild/sdks/WIN32SDK.kmk | 93 +++++++++++++ kBuild/sdks/WIN32SDK2002.kmk | 90 ++++++++++++ kBuild/sdks/WIN64SDK.kmk | 99 ++++++++++++++ kBuild/sdks/WINDDK.kmk | 133 ++++++++++++++++++ kBuild/sdks/WINDDK71.kmk | 107 +++++++++++++++ kBuild/sdks/WINDDK71WLH.kmk | 47 +++++++ kBuild/sdks/WINDDK71WNET.kmk | 47 +++++++ kBuild/sdks/WINDDK71WXP.kmk | 43 ++++++ kBuild/sdks/WINDDK80.kmk | 98 ++++++++++++++ kBuild/sdks/WINDDK80W8.kmk | 46 +++++++ kBuild/sdks/WINDDKW2K.kmk | 43 ++++++ kBuild/sdks/WINDDKWLH.kmk | 47 +++++++ kBuild/sdks/WINDDKWNET.kmk | 47 +++++++ kBuild/sdks/WINDDKWXP.kmk | 43 ++++++ kBuild/sdks/WINPSDK.kmk | 161 ++++++++++++++++++++++ kBuild/sdks/WINPSDK71.kmk | 161 ++++++++++++++++++++++ kBuild/sdks/WINPSDK71INCS.kmk | 90 ++++++++++++ kBuild/sdks/WINPSDKINCS.kmk | 93 +++++++++++++ kBuild/sdks/WINSDK10-KM-W7.kmk | 51 +++++++ kBuild/sdks/WINSDK10-KM-W8.kmk | 51 +++++++ kBuild/sdks/WINSDK10-KM-W81.kmk | 51 +++++++ kBuild/sdks/WINSDK10-KM.kmk | 59 ++++++++ kBuild/sdks/WINSDK10-UCRT-INCS.kmk | 40 ++++++ kBuild/sdks/WINSDK10-UCRT-STATIC.kmk | 56 ++++++++ kBuild/sdks/WINSDK10-UCRT.kmk | 56 ++++++++ kBuild/sdks/WINSDK10-UM-INCS.kmk | 42 ++++++ kBuild/sdks/WINSDK10-UM.kmk | 69 ++++++++++ kBuild/sdks/WINSDK10.kmk | 256 +++++++++++++++++++++++++++++++++++ 53 files changed, 3906 insertions(+) create mode 100644 kBuild/sdks/DXSDK.kmk create mode 100644 kBuild/sdks/DXSDKAMD64.kmk create mode 100644 kBuild/sdks/DXSDKX86.kmk create mode 100644 kBuild/sdks/LIBSDL.kmk create mode 100644 kBuild/sdks/LIBSDL2.kmk create mode 100644 kBuild/sdks/MACOSX1010.kmk create mode 100644 kBuild/sdks/MACOSX1013.kmk create mode 100644 kBuild/sdks/MACOSX1013INCS.kmk create mode 100644 kBuild/sdks/MACOSX1014.kmk create mode 100644 kBuild/sdks/MACOSX1014INCS.kmk create mode 100644 kBuild/sdks/MACOSX1015.kmk create mode 100644 kBuild/sdks/MACOSX1015INCS.kmk create mode 100644 kBuild/sdks/MACOSX104.kmk create mode 100644 kBuild/sdks/MACOSX104INCS.kmk create mode 100644 kBuild/sdks/MACOSX105.kmk create mode 100644 kBuild/sdks/MACOSX105INCS.kmk create mode 100644 kBuild/sdks/MACOSX110.kmk create mode 100644 kBuild/sdks/MACOSX110INCS.kmk create mode 100644 kBuild/sdks/NT4DDK.kmk create mode 100644 kBuild/sdks/OS2DDKBASE32.kmk create mode 100644 kBuild/sdks/ReorderCompilerIncs.kmk create mode 100644 kBuild/sdks/W2K3DDK.kmk create mode 100644 kBuild/sdks/W2K3DDKAMD64.kmk create mode 100644 kBuild/sdks/W2K3DDKX86.kmk create mode 100644 kBuild/sdks/W32API.kmk create mode 100644 kBuild/sdks/WIN32SDK.kmk create mode 100644 kBuild/sdks/WIN32SDK2002.kmk create mode 100644 kBuild/sdks/WIN64SDK.kmk create mode 100644 kBuild/sdks/WINDDK.kmk create mode 100644 kBuild/sdks/WINDDK71.kmk create mode 100644 kBuild/sdks/WINDDK71WLH.kmk create mode 100644 kBuild/sdks/WINDDK71WNET.kmk create mode 100644 kBuild/sdks/WINDDK71WXP.kmk create mode 100644 kBuild/sdks/WINDDK80.kmk create mode 100644 kBuild/sdks/WINDDK80W8.kmk create mode 100644 kBuild/sdks/WINDDKW2K.kmk create mode 100644 kBuild/sdks/WINDDKWLH.kmk create mode 100644 kBuild/sdks/WINDDKWNET.kmk create mode 100644 kBuild/sdks/WINDDKWXP.kmk create mode 100644 kBuild/sdks/WINPSDK.kmk create mode 100644 kBuild/sdks/WINPSDK71.kmk create mode 100644 kBuild/sdks/WINPSDK71INCS.kmk create mode 100644 kBuild/sdks/WINPSDKINCS.kmk create mode 100644 kBuild/sdks/WINSDK10-KM-W7.kmk create mode 100644 kBuild/sdks/WINSDK10-KM-W8.kmk create mode 100644 kBuild/sdks/WINSDK10-KM-W81.kmk create mode 100644 kBuild/sdks/WINSDK10-KM.kmk create mode 100644 kBuild/sdks/WINSDK10-UCRT-INCS.kmk create mode 100644 kBuild/sdks/WINSDK10-UCRT-STATIC.kmk create mode 100644 kBuild/sdks/WINSDK10-UCRT.kmk create mode 100644 kBuild/sdks/WINSDK10-UM-INCS.kmk create mode 100644 kBuild/sdks/WINSDK10-UM.kmk create mode 100644 kBuild/sdks/WINSDK10.kmk (limited to 'kBuild/sdks') diff --git a/kBuild/sdks/DXSDK.kmk b/kBuild/sdks/DXSDK.kmk new file mode 100644 index 0000000..581f265 --- /dev/null +++ b/kBuild/sdks/DXSDK.kmk @@ -0,0 +1,67 @@ +# $Id: DXSDK.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Direct X SDK, targeting $(KBUILD_TARGET). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_DXSDK := The Microsoft Direct X SDK, targeting $(KBUILD_TARGET) + +# SDK Specific Properties +ifndef PATH_SDK_DXSDK + ## @todo which order is logical here, BLD and then TRG or the other way? + PATH_SDK_DXSDK := $(sort $(wildcard $(KBUILD_DEVTOOLS_BLD)/dxsdk/2*)) + ifeq ($(PATH_SDK_DXSDK),) + PATH_SDK_DXSDK := $(sort $(wildcard $(KBUILD_DEVTOOLS_TRG)/dxsdk/2*)) + endif + ifeq ($(PATH_SDK_DXSDK),) + PATH_SDK_DXSDK := $(sort $(wildcard $(KBUILD_DEVTOOLS)/win.x86/dxsdk/2*)) + endif + ifeq ($(PATH_SDK_DXSDK),) + PATH_SDK_DXSDK := $(sort $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/dxsdk/2*)) + endif + ifneq ($(PATH_SDK_DXSDK),) + PATH_SDK_DXSDK := $(call lastword,$(PATH_SDK_DXSDK)) + else + $(warning kBuild: PATH_SDK_DXSDK couldn't be determined!) + PATH_SDK_DXSDK := $(KBUILD_DEVTOOLS_TRG)/dxsdk/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_DXSDK := $(PATH_SDK_DXSDK) +endif +PATH_SDK_DXSDK_INC ?= $(PATH_SDK_DXSDK)/Include +PATH_SDK_DXSDK_LIB.x86 ?= $(PATH_SDK_DXSDK)/Lib/x86 +PATH_SDK_DXSDK_LIB.amd64 ?= $(PATH_SDK_DXSDK)/Lib/x64 +PATH_SDK_DXSDK_LIB ?= $(PATH_SDK_DXSDK_LIB.$(KBUILD_TARGET_ARCH)) + +# General Properties used by kBuild +SDK_DXSDK_INCS ?= $(PATH_SDK_DXSDK_INC) +SDK_DXSDK_LIBPATH ?= $(PATH_SDK_DXSDK_LIB) + diff --git a/kBuild/sdks/DXSDKAMD64.kmk b/kBuild/sdks/DXSDKAMD64.kmk new file mode 100644 index 0000000..1bc213a --- /dev/null +++ b/kBuild/sdks/DXSDKAMD64.kmk @@ -0,0 +1,61 @@ +# $Id: DXSDKAMD64.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Direct X SDK, targeting AMD64. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_DXSDKAMD64 := The Microsoft Direct X SDK, targeting AMD64. + +# SDK Specific Properties +ifndef PATH_SDK_DXSDKAMD64 + PATH_SDK_DXSDKAMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/dxsdk/2*) + ifeq ($(PATH_SDK_DXSDKAMD64),) + PATH_SDK_DXSDKAMD64 := $(PATH_SDK_DXSDK) + endif + ifeq ($(PATH_SDK_DXSDKAMD64),) + PATH_SDK_DXSDKAMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/dxsdk/2*) + endif + ifneq ($(PATH_SDK_DXSDKAMD64),) + PATH_SDK_DXSDKAMD64 := $(lastword $(sort $(PATH_SDK_DXSDKAMD64))) + else + $(warning kBuild: PATH_SDK_DXSDKAMD64 couldn't be determined!) + PATH_SDK_DXSDKAMD64 := $(KBUILD_DEVTOOLS)/win.amd64/dxsdk/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_DXSDKAMD64 := $(PATH_SDK_DXSDKAMD64) +endif +PATH_SDK_DXSDKAMD64_INC ?= $(PATH_SDK_DXSDKAMD64)/Include +PATH_SDK_DXSDKAMD64_LIB ?= $(PATH_SDK_DXSDKAMD64)/Lib/x64 + +# General Properties used by kBuild +SDK_DXSDKAMD64_INCS ?= $(PATH_SDK_DXSDKAMD64_INC) +SDK_DXSDKAMD64_LIBPATH ?= $(PATH_SDK_DXSDKAMD64_LIB) + diff --git a/kBuild/sdks/DXSDKX86.kmk b/kBuild/sdks/DXSDKX86.kmk new file mode 100644 index 0000000..d0fa073 --- /dev/null +++ b/kBuild/sdks/DXSDKX86.kmk @@ -0,0 +1,62 @@ +# $Id: DXSDKX86.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Direct X SDK, targeting X86. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + + +SDK_DXSDKX86 := The Microsoft Direct X SDK, targeting X86. + +# SDK Specific Properties +ifndef PATH_SDK_DXSDKX86 + PATH_SDK_DXSDKX86 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/dxsdk/2*) + ifeq ($(PATH_SDK_DXSDKX86),) + PATH_SDK_DXSDKX86 := $(PATH_SDK_DXSDK) + endif + ifeq ($(PATH_SDK_DXSDKX86),) + PATH_SDK_DXSDKX86 := $(wildcard $(KBUILD_DEVTOOLS)/amd64.win/dxsdk/2*) + endif + ifneq ($(PATH_SDK_DXSDKX86),) + PATH_SDK_DXSDKX86 := $(lastword $(sort $(PATH_SDK_DXSDKX86))) + else + $(warning kBuild: PATH_SDK_DXSDKX86 couldn't be determined!) + PATH_SDK_DXSDKX86 := $(KBUILD_DEVTOOLS)/win.x86/dxsdk/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_DXSDKX86 := $(PATH_SDK_DXSDKX86) +endif +PATH_SDK_DXSDKX86_INC ?= $(PATH_SDK_DXSDKX86)/Include +PATH_SDK_DXSDKX86_LIB ?= $(PATH_SDK_DXSDKX86)/Lib/x86 + +# General Properties used by kBuild +SDK_DXSDKX86_INCS ?= $(PATH_SDK_DXSDKX86_INC) +SDK_DXSDKX86_LIBPATH ?= $(PATH_SDK_DXSDKX86_LIB) + diff --git a/kBuild/sdks/LIBSDL.kmk b/kBuild/sdks/LIBSDL.kmk new file mode 100644 index 0000000..2c82807 --- /dev/null +++ b/kBuild/sdks/LIBSDL.kmk @@ -0,0 +1,168 @@ +# $Id: LIBSDL.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - Simple DirectMedia Layer, targeting $(KBUILD_TARGET). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_LIBSDL := Simple DirectMedia Layer, targeting $(KBUILD_TARGET). + +# SDK Specific Properties +_SDK_LIBSDK_IS_FRAMEWORK := no +ifndef PATH_SDK_LIBSDL + PATH_SDK_LIBSDL := $(wildcard $(KBUILD_DEVTOOLS_TRG)/libsdl/v*) + ifeq ($(PATH_SDK_LIBSDL),) + PATH_SDK_LIBSDL := $(wildcard $(KBUILD_DEVTOOLS_BLD)/libsdl/v*) + endif + ifneq ($(PATH_SDK_LIBSDL),) + PATH_SDK_LIBSDL := $(lastword $(sort $(PATH_SDK_LIBSDL))) + else + + # Darwin might have a framework for it. + ifeq ($(KBUILD_TARGET),darwin) + PATH_SDK_LIBSDL := $(firstword $(wildcard \ + /System/Library/Frameworks/SDL.framework/SDL \ + /Library/Frameworks/SDL.framework/SDL \ + ) ) + ifneq ($(PATH_SDK_LIBSDL),) + PATH_SDK_LIBSDL := $(patsubst %/,%,$(dir $(PATH_SDK_LIBSDL))) + _SDK_LIBSDK_IS_FRAMEWORK := yes + endif + endif + + ifeq ($(PATH_SDK_LIBSDL),) + PATH_SDK_LIBSDL := $(firstword $(foreach root,$(KBUILD_LIB_SEARCH_ROOTS) \ + ,$(if $(wildcard $(addsuffix libSDL.*,$(addprefix $(root),$(KBUILD_LIB_SEARCH_SUBS)))),$(root),) )) + ifeq ($(PATH_SDK_LIBSDL),/) + PATH_SDK_LIBSDL := /. + else ifneq ($(PATH_SDK_LIBSDL),) + PATH_SDK_LIBSDL := $(patsubst %/,%,$(PATH_SDK_LIBSDL)) + else + $(warning kBuild: PATH_SDK_LIBSDL couldn't be determined!) + PATH_SDK_LIBSDL := $(KBUILD_DEVTOOLS_TRG)/libsdl/not/found + endif + endif + endif +else + PATH_SDK_LIBSDL := $(PATH_SDK_LIBSDL) + ifeq ($(KBUILD_TARGET),darwin) + # Check if it's the framework or not. + _SDK_LIBSDK_IS_FRAMEWORK := $(if $(wildcard $(PATH_SDK_LIBSDL)/Headers/SDL.h),yes) + endif +endif + +# +# The way libsdl is distributed on the different platforms +# varies quite a bit, thus this kludge. +# +ifeq ($(KBUILD_TARGET),os2) + LIB_SDK_LIBSDL_SDLMAIN ?= + DLL_SDK_LIBSDL_SDL ?= $(PATH_SDK_LIBSDL)/SDL/SDL12.dll + DLL_SDK_LIBSDL_FSLIB ?= $(PATH_SDK_LIBSDL)/SDL/FSLib.dll + LIB_SDK_LIBSDL_SDL ?= $(PATH_SDK_LIBSDL)/SDL/SDL12.lib + LIB_SDK_LIBSDL_SDLGFX ?= $(PATH_SDK_LIBSDL)/SDLGfx/SDLGFX.lib + LIB_SDK_LIBSDL_SDLIMAGE ?= $(PATH_SDK_LIBSDL)/SDLImage/SDLIMAGE.lib + LIB_SDK_LIBSDL_SDLMIXER ?= $(PATH_SDK_LIBSDL)/SDLMixer/SDLMIXER.lib + LIB_SDK_LIBSDL_SDLNET ?= $(PATH_SDK_LIBSDL)/SDLNet/SDLNET.lib + LIB_SDK_LIBSDL_SDLTTF ?= $(PATH_SDK_LIBSDL)/SDLTTF/SDLTTF.lib + + # General Properties used by kBuild + SDK_LIBSDL_INCS ?= \ + $(PATH_SDK_LIBSDL)/SDL/include \ + $(PATH_SDK_LIBSDL)/SDLGfx \ + $(PATH_SDK_LIBSDL)/SDLImage \ + $(PATH_SDK_LIBSDL)/SDLMixer \ + $(PATH_SDK_LIBSDL)/SDLNet \ + $(PATH_SDK_LIBSDL)/SDLTTF + SDK_LIBSDL_LIBS ?= \ + $(LIB_SDK_LIBSDL_SDL) + SDK_LIBSDL_LIBPATH ?= \ + $(PATH_SDK_LIBSDL)/SDL \ + $(PATH_SDK_LIBSDL)/SDLGfx \ + $(PATH_SDK_LIBSDL)/SDLImage \ + $(PATH_SDK_LIBSDL)/SDLMixer \ + $(PATH_SDK_LIBSDL)/SDLNet \ + $(PATH_SDK_LIBSDL)/SDLTTF + +else ifeq ($(KBUILD_TARGET),win) # ASSUMES VC++ on windows, sorry. + LIB_SDK_LIBSDL_SDLMAIN ?= $(PATH_SDK_LIBSDL)/lib/SDLmain.lib + LIB_SDK_LIBSDL_SDL ?= $(PATH_SDK_LIBSDL)/lib/SDL.lib + DLL_SDK_LIBSDL_SDL ?= $(PATH_SDK_LIBSDL)/lib/SDL.dll + LIB_SDK_LIBSDL_SDLGFX ?= $(PATH_SDK_LIBSDL)/lib/SDL_gfx.lib + LIB_SDK_LIBSDL_SDLIMAGE ?= $(PATH_SDK_LIBSDL)/lib/SDL_image.lib + LIB_SDK_LIBSDL_SDLMIXER ?= $(PATH_SDK_LIBSDL)/lib/SDL_mixer.lib + LIB_SDK_LIBSDL_SDLNET ?= $(PATH_SDK_LIBSDL)/lib/SDL_net.lib + LIB_SDK_LIBSDL_SDLTTF ?= $(PATH_SDK_LIBSDL)/lib/SDL_ttf.lib + DLL_SDK_LIBSDL_SDLTTF ?= $(PATH_SDK_LIBSDL)/lib/SDL_ttf.dll + + # General Properties used by kBuild + SDK_LIBSDL_INCS ?= \ + $(PATH_SDK_LIBSDL)/include/SDL \ + $(PATH_SDK_LIBSDL)/include + SDK_LIBSDL_LIBS ?= \ + $(LIB_SDK_LIBSDL_SDL) + SDK_LIBSDL_LIBPATH ?= \ + $(PATH_SDK_LIBSDL)/lib + +else ifeq ($(KBUILD_TARGET).$(_SDK_LIBSDK_IS_FRAMEWORK),darwin.yes) + # darwin + framework + LIB_SDK_LIBSDL_SDLMAIN ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL_SDL ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL_SDLGFX ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL_SDLIMAGE ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL_SDLMIXER ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL_SDLNET ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL_SDLTTF ?= $(NO_SUCH_VARIABLE) + + # General Properties used by kBuild + SDK_LIBSDL_INCS ?= $(PATH_SDK_LIBSDL)/Headers + SDK_LIBSDL_LDFLAGS ?= -framework SDL + +else # ASSUMES Unix like system + LIB_SDK_LIBSDL_SDLMAIN ?= SDLmain + LIB_SDK_LIBSDL_SDL ?= SDL + LIB_SDK_LIBSDL_SDLGFX ?= SDL_gfx + LIB_SDK_LIBSDL_SDLIMAGE ?= SDL_image + LIB_SDK_LIBSDL_SDLMIXER ?= SDL_mixer + LIB_SDK_LIBSDL_SDLNET ?= SDL_net + LIB_SDK_LIBSDL_SDLTTF ?= SDL_ttf + + # General Properties used by kBuild + ifndef SDK_LIBSDL_INCS + ifneq ($(wildcard $(PATH_SDK_LIBSDL)/include/SDL/),) + SDK_LIBSDL_INCS := $(PATH_SDK_LIBSDL)/include/SDL + else + SDK_LIBSDL_INCS := $(PATH_SDK_LIBSDL)/include + endif + endif + SDK_LIBSDL_LIBS ?= \ + $(LIB_SDK_LIBSDL_SDL) + SDK_LIBSDL_LIBPATH ?= \ + $(PATH_SDK_LIBSDL)/lib +endif diff --git a/kBuild/sdks/LIBSDL2.kmk b/kBuild/sdks/LIBSDL2.kmk new file mode 100644 index 0000000..ac47361 --- /dev/null +++ b/kBuild/sdks/LIBSDL2.kmk @@ -0,0 +1,154 @@ +# $Id: LIBSDL2.kmk 3588 2023-01-31 13:45:33Z bird $ +## @file +# kBuild SDK - Simple DirectMedia Layer v2.x, targeting $(KBUILD_TARGET). +# + +# +# Copyright (c) 2006-2023 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_LIBSDL2 := Simple DirectMedia Layer v2.x, targeting $(KBUILD_TARGET). + +# SDK Specific Properties +_SDK_LIBSDL2_IS_FRAMEWORK := no +ifndef PATH_SDK_LIBSDL2 + PATH_SDK_LIBSDL2 := $(firstfile $(rsortfiles $(qwildcard ,$(KBUILD_DEVTOOLS_TRG)/libsdl2/v*))) + ifeq ($(PATH_SDK_LIBSDL2),) + PATH_SDK_LIBSDL2 := $(firstfile $(rsortfiles $(qwildcard ,$(KBUILD_DEVTOOLS_BLD)/libsdl2/v*))) + endif + ifeq ($(PATH_SDK_LIBSDL2),) + # Darwin might have a framework for it. + ifeq ($(KBUILD_TARGET),darwin) + PATH_SDK_LIBSDL2 := $(firstword $(wildcard \ + /System/Library/Frameworks/SDL2.framework/SDL2 \ + /Library/Frameworks/SDL2.framework/SDL2 \ + ) ) + ifneq ($(PATH_SDK_LIBSDL2),) + PATH_SDK_LIBSDL2 := $(patsubst %/,%,$(dir $(PATH_SDK_LIBSDL2))) + _SDK_LIBSDL2_IS_FRAMEWORK := yes + endif + endif + + ifeq ($(PATH_SDK_LIBSDL2),) + PATH_SDK_LIBSDL2 := $(firstword $(foreach root,$(KBUILD_LIB_SEARCH_ROOTS) \ + ,$(if $(wildcard $(addsuffix libSDL2.*,$(addprefix $(root),$(KBUILD_LIB_SEARCH_SUBS)))),$(root),) )) + ifeq ($(PATH_SDK_LIBSDL2),/) + PATH_SDK_LIBSDL2 := /. + else ifneq ($(PATH_SDK_LIBSDL2),) + PATH_SDK_LIBSDL2 := $(patsubst %/,%,$(PATH_SDK_LIBSDL2)) + else + $(warning kBuild: PATH_SDK_LIBSDL2 couldn't be determined!) + PATH_SDK_LIBSDL2 := $(KBUILD_DEVTOOLS_TRG)/libsdl/not/found + endif + endif + endif +else + PATH_SDK_LIBSDL2 := $(PATH_SDK_LIBSDL2) + ifeq ($(KBUILD_TARGET),darwin) + # Check if it's the framework or not. + _SDK_LIBSDL2_IS_FRAMEWORK := $(if $(wildcard $(PATH_SDK_LIBSDL2)/Headers/SDL.h),yes) + endif +endif +ifeq ($(KBUILD_TARGET).$(_SDK_LIBSDL2_IS_FRAMEWORK),darwin.yes) + PATH_SDK_LIBSDL2_FRAMEWORKS_DIR := $(abspath $(PATH_SDK_LIBSDL2)/..) +endif + +# +# The way libsdl is distributed on the different platforms +# varies quite a bit, thus this kludge. +# +ifeq ($(KBUILD_TARGET),os2) ## @todo + LIB_SDK_LIBSDL2_SDLMAIN ?= + DLL_SDK_LIBSDL2_SDL ?= $(PATH_SDK_LIBSDL2)/dll/sdl2.dll + LIB_SDK_LIBSDL2_SDL ?= $(PATH_SDK_LIBSDL2)/lib/sdl2.lib + LIB_SDK_LIBSDL2_SDLIMAGE ?= $(PATH_SDK_LIBSDL2)/lib/sdl2img.lib + LIB_SDK_LIBSDL2_SDLMIXER ?= $(PATH_SDK_LIBSDL2)/lib/sdl2mix.lib + LIB_SDK_LIBSDL2_SDLTTF ?= $(PATH_SDK_LIBSDL2)/lib/sdl2ttf.lib + + # General Properties used by kBuild + SDK_LIBSDL2_INCS ?= $(PATH_SDK_LIBSDL2)/h/SDL2 + SDK_LIBSDL2_LIBS ?= $(LIB_SDK_LIBSDL2_SDL) + SDK_LIBSDL2_LIBPATH ?= $(PATH_SDK_LIBSDL2)/lib + +else ifeq ($(KBUILD_TARGET),win) # ASSUMES VC++ on windows, sorry. + include $(KBUILD_PATH)/win-common.kmk + LIB_SDK_LIBSDL2_SDLMAIN ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2main.lib + LIB_SDK_LIBSDL2_SDL ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2.lib + DLL_SDK_LIBSDL2_SDL ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2.dll + LIB_SDK_LIBSDL2_SDLTEST ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2test.lib + + LIB_SDK_LIBSDL2_SDLGFX ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2test.lib + LIB_SDK_LIBSDL2_SDLIMAGE ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2_image.lib + LIB_SDK_LIBSDL2_SDLMIXER ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2_mixer.lib + LIB_SDK_LIBSDL2_SDLNET ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2_net.lib + LIB_SDK_LIBSDL2_SDLTTF ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2_ttf.lib + DLL_SDK_LIBSDL2_SDLTTF ?= $(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH))/SDL2_ttf.dll + + # General Properties used by kBuild + SDK_LIBSDL2_INCS ?= $(PATH_SDK_LIBSDL2)/include + SDK_LIBSDL2_LIBS ?= $(LIB_SDK_LIBSDL2_SDL) + SDK_LIBSDL2_LIBPATH ?= $(PATH_SDK_LIBSDL2)/$(PATH_SDK_LIBSDL2)/lib/$(WINCMN_MAP_ARCH.$(KBUILD_TARGET_ARCH)) + +else ifeq ($(KBUILD_TARGET).$(_SDK_LIBSDL2_IS_FRAMEWORK),darwin.yes) + # darwin + framework + LIB_SDK_LIBSDL2_SDLMAIN ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL2_SDL ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL2_SDLGFX ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL2_SDLIMAGE ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL2_SDLMIXER ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL2_SDLNET ?= $(NO_SUCH_VARIABLE) + LIB_SDK_LIBSDL2_SDLTTF ?= $(NO_SUCH_VARIABLE) + + # General Properties used by kBuild + SDK_LIBSDL2_INCS ?= $(PATH_SDK_LIBSDL2)/Headers + SDK_LIBSDL2_LDFLAGS ?= -F$(PATH_SDK_LIBSDL2_FRAMEWORKS_DIR) -framework SDL2 + SDK_LIBSDL2_CFLAGS ?= -F$(PATH_SDK_LIBSDL2_FRAMEWORKS_DIR) + SDK_LIBSDL2_CXXFLAGS ?= -F$(PATH_SDK_LIBSDL2_FRAMEWORKS_DIR) + SDK_LIBSDL2_OBJCFLAGS ?= -F$(PATH_SDK_LIBSDL2_FRAMEWORKS_DIR) + SDK_LIBSDL2_OBJCXXFLAGS ?= -F$(PATH_SDK_LIBSDL2_FRAMEWORKS_DIR) + +else # ASSUMES Unix like system + LIB_SDK_LIBSDL2_SDLMAIN ?= SDL2main + LIB_SDK_LIBSDL2_SDL ?= SDL2 + LIB_SDK_LIBSDL2_SDLGFX ?= SDL2_gfx + LIB_SDK_LIBSDL2_SDLIMAGE ?= SDL2_image + LIB_SDK_LIBSDL2_SDLMIXER ?= SDL2_mixer + LIB_SDK_LIBSDL2_SDLNET ?= SDL2_net + LIB_SDK_LIBSDL2_SDLTTF ?= SDL2_ttf + + # General Properties used by kBuild + ifndef SDK_LIBSDL2_INCS + if exists("$(PATH_SDK_LIBSDL2)/include/SDL2/") + SDK_LIBSDL2_INCS := $(PATH_SDK_LIBSDL2)/include/SDL2 + else + SDK_LIBSDL2_INCS := $(PATH_SDK_LIBSDL2)/include + endif + endif + SDK_LIBSDL2_LIBS ?= $(LIB_SDK_LIBSDL2_SDL) + SDK_LIBSDL2_LIBPATH ?= $(PATH_SDK_LIBSDL2)/lib +endif + diff --git a/kBuild/sdks/MACOSX1010.kmk b/kBuild/sdks/MACOSX1010.kmk new file mode 100644 index 0000000..8abf5f0 --- /dev/null +++ b/kBuild/sdks/MACOSX1010.kmk @@ -0,0 +1,62 @@ +# $Id: MACOSX1010.kmk 3489 2020-09-22 13:44:52Z bird $ +## @file +# kBuild SDK - Mac OS X v10.10 SDK. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef INCLUDED_DARWIN_COMMON_KMK + include $(KBUILD_PATH)/darwin-common.kmk +endif + +SDK_MACOSX1010 := Mac OS X v10.10 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX1010 + PATH_SDK_MACOSX1010 := $(call DARWINCMN_FN_FIND_MACOSX_SDK,MacOSX10.10.sdk) +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX1010 := $(PATH_SDK_MACOSX1010) +endif +ifeq ($(PATH_SDK_MACOSX1010),) + $(warning $(call DARWINCMN_FN_ERROR_MACOSX_SDK,MacOSX10.10.sdk)) +endif + +## The MAC_OS_X_VERSION_MIN_REQUIRED and MAC_OS_X_VERSION_MAX_ALLOWED value for this SDK. +SDK_MACOSX1010_VERSION_VALUE := 101000 + +# General Properties (used by kBuild) +# Note: The MAC_OS_X_VERSION_MAX_ALLOWED is left free for the SDK user to define. +SDK_MACOSX1010_DEFS ?= MAC_OS_X_VERSION_MIN_REQUIRED=101000 +SDK_MACOSX1010_CFLAGS ?= -mmacosx-version-min=10.10 -isysroot "$(PATH_SDK_MACOSX1010)" +SDK_MACOSX1010_CXXFLAGS ?= -mmacosx-version-min=10.10 -isysroot "$(PATH_SDK_MACOSX1010)" +SDK_MACOSX1010_OBJCFLAGS ?= -mmacosx-version-min=10.10 -isysroot "$(PATH_SDK_MACOSX1010)" +SDK_MACOSX1010_OBJCXXFLAGS ?= -mmacosx-version-min=10.10 -isysroot "$(PATH_SDK_MACOSX1010)" +SDK_MACOSX1010_LDFLAGS ?= -mmacosx-version-min=10.10 -isysroot "$(PATH_SDK_MACOSX1010)" + diff --git a/kBuild/sdks/MACOSX1013.kmk b/kBuild/sdks/MACOSX1013.kmk new file mode 100644 index 0000000..a17d53f --- /dev/null +++ b/kBuild/sdks/MACOSX1013.kmk @@ -0,0 +1,62 @@ +# $Id: MACOSX1013.kmk 3489 2020-09-22 13:44:52Z bird $ +## @file +# kBuild SDK - Mac OS X v10.13 SDK. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef INCLUDED_DARWIN_COMMON_KMK + include $(KBUILD_PATH)/darwin-common.kmk +endif + +SDK_MACOSX1013 := Mac OS X v10.13 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX1013 + PATH_SDK_MACOSX1013 := $(call DARWINCMN_FN_FIND_MACOSX_SDK,MacOSX10.13.sdk) +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX1013 := $(PATH_SDK_MACOSX1013) +endif +ifeq ($(PATH_SDK_MACOSX1013),) + $(warning $(call DARWINCMN_FN_ERROR_MACOSX_SDK,MacOSX10.13.sdk)) +endif + +## The MAC_OS_X_VERSION_MIN_REQUIRED and MAC_OS_X_VERSION_MAX_ALLOWED value for this SDK. +SDK_MACOSX1013_VERSION_VALUE := 101300 + +# General Properties (used by kBuild) +# Note: The MAC_OS_X_VERSION_MAX_ALLOWED is left free for the SDK user to define. +SDK_MACOSX1013_DEFS ?= MAC_OS_X_VERSION_MIN_REQUIRED=101300 +SDK_MACOSX1013_CFLAGS ?= -mmacosx-version-min=10.13 -isysroot "$(PATH_SDK_MACOSX1013)" +SDK_MACOSX1013_CXXFLAGS ?= -mmacosx-version-min=10.13 -isysroot "$(PATH_SDK_MACOSX1013)" +SDK_MACOSX1013_OBJCFLAGS ?= -mmacosx-version-min=10.13 -isysroot "$(PATH_SDK_MACOSX1013)" +SDK_MACOSX1013_OBJCXXFLAGS ?= -mmacosx-version-min=10.13 -isysroot "$(PATH_SDK_MACOSX1013)" +SDK_MACOSX1013_LDFLAGS ?= -mmacosx-version-min=10.13 -isysroot "$(PATH_SDK_MACOSX1013)" + diff --git a/kBuild/sdks/MACOSX1013INCS.kmk b/kBuild/sdks/MACOSX1013INCS.kmk new file mode 100644 index 0000000..83c15c1 --- /dev/null +++ b/kBuild/sdks/MACOSX1013INCS.kmk @@ -0,0 +1,49 @@ +# $Id: MACOSX1013INCS.kmk 3401 2020-07-05 15:58:36Z bird $ +## @file +# kBuild SDK - Mac OS X v10.13 SDK, includes only. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_MACOSX1013 + include $(KBUILD_PATH)/sdks/MACOSX1013.kmk +endif + +SDK_MACOSX1013INCS := Mac OS X v10.13 SDK, include only. + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX1013INCS + PATH_SDK_MACOSX1013INCS := $(PATH_SDK_MACOSX1013) +else + PATH_SDK_MACOSX1013INCS := $(PATH_SDK_MACOSX1013INCS) +endif + +# General Properties (used by kBuild) +SDK_MACOSX1013INCS_INCS = $(PATH_SDK_MACOSX1013INCS)/usr/include + diff --git a/kBuild/sdks/MACOSX1014.kmk b/kBuild/sdks/MACOSX1014.kmk new file mode 100644 index 0000000..c851ef5 --- /dev/null +++ b/kBuild/sdks/MACOSX1014.kmk @@ -0,0 +1,62 @@ +# $Id: MACOSX1014.kmk 3489 2020-09-22 13:44:52Z bird $ +## @file +# kBuild SDK - Mac OS X v10.14 SDK. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef INCLUDED_DARWIN_COMMON_KMK + include $(KBUILD_PATH)/darwin-common.kmk +endif + +SDK_MACOSX1014 := Mac OS X v10.14 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX1014 + PATH_SDK_MACOSX1014 := $(call DARWINCMN_FN_FIND_MACOSX_SDK,MacOSX10.14.sdk) +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX1014 := $(PATH_SDK_MACOSX1014) +endif +ifeq ($(PATH_SDK_MACOSX1014),) + $(warning $(call DARWINCMN_FN_ERROR_MACOSX_SDK,MacOSX10.14.sdk)) +endif + +## The MAC_OS_X_VERSION_MIN_REQUIRED and MAC_OS_X_VERSION_MAX_ALLOWED value for this SDK. +SDK_MACOSX1014_VERSION_VALUE := 101400 + +# General Properties (used by kBuild) +# Note: The MAC_OS_X_VERSION_MAX_ALLOWED is left free for the SDK user to define. +SDK_MACOSX1014_DEFS ?= MAC_OS_X_VERSION_MIN_REQUIRED=101400 +SDK_MACOSX1014_CFLAGS ?= -mmacosx-version-min=10.14 -isysroot "$(PATH_SDK_MACOSX1014)" +SDK_MACOSX1014_CXXFLAGS ?= -mmacosx-version-min=10.14 -isysroot "$(PATH_SDK_MACOSX1014)" +SDK_MACOSX1014_OBJCFLAGS ?= -mmacosx-version-min=10.14 -isysroot "$(PATH_SDK_MACOSX1014)" +SDK_MACOSX1014_OBJCXXFLAGS ?= -mmacosx-version-min=10.14 -isysroot "$(PATH_SDK_MACOSX1014)" +SDK_MACOSX1014_LDFLAGS ?= -mmacosx-version-min=10.14 -isysroot "$(PATH_SDK_MACOSX1014)" + diff --git a/kBuild/sdks/MACOSX1014INCS.kmk b/kBuild/sdks/MACOSX1014INCS.kmk new file mode 100644 index 0000000..a7b8f55 --- /dev/null +++ b/kBuild/sdks/MACOSX1014INCS.kmk @@ -0,0 +1,49 @@ +# $Id: MACOSX1014INCS.kmk 3407 2020-07-17 20:03:06Z bird $ +## @file +# kBuild SDK - Mac OS X v10.14 SDK, includes only. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_MACOSX1014 + include $(KBUILD_PATH)/sdks/MACOSX1014.kmk +endif + +SDK_MACOSX1014INCS := Mac OS X v10.14 SDK, include only. + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX1014INCS + PATH_SDK_MACOSX1014INCS := $(PATH_SDK_MACOSX1014) +else + PATH_SDK_MACOSX1014INCS := $(PATH_SDK_MACOSX1014INCS) +endif + +# General Properties (used by kBuild) +SDK_MACOSX1014INCS_INCS = $(PATH_SDK_MACOSX1014INCS)/usr/include + diff --git a/kBuild/sdks/MACOSX1015.kmk b/kBuild/sdks/MACOSX1015.kmk new file mode 100644 index 0000000..8e454df --- /dev/null +++ b/kBuild/sdks/MACOSX1015.kmk @@ -0,0 +1,62 @@ +# $Id: MACOSX1015.kmk 3489 2020-09-22 13:44:52Z bird $ +## @file +# kBuild SDK - Mac OS X v10.15 SDK. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef INCLUDED_DARWIN_COMMON_KMK + include $(KBUILD_PATH)/darwin-common.kmk +endif + +SDK_MACOSX1015 := Mac OS X v10.15 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX1015 + PATH_SDK_MACOSX1015 := $(call DARWINCMN_FN_FIND_MACOSX_SDK,MacOSX10.15.sdk) +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX1015 := $(PATH_SDK_MACOSX1015) +endif +ifeq ($(PATH_SDK_MACOSX1015),) + $(warning $(call DARWINCMN_FN_ERROR_MACOSX_SDK,MacOSX10.15.sdk)) +endif + +## The MAC_OS_X_VERSION_MIN_REQUIRED and MAC_OS_X_VERSION_MAX_ALLOWED value for this SDK. +SDK_MACOSX1015_VERSION_VALUE := 101500 + +# General Properties (used by kBuild) +# Note: The MAC_OS_X_VERSION_MAX_ALLOWED is left free for the SDK user to define. +SDK_MACOSX1015_DEFS ?= MAC_OS_X_VERSION_MIN_REQUIRED=101500 +SDK_MACOSX1015_CFLAGS ?= -mmacosx-version-min=10.15 -isysroot "$(PATH_SDK_MACOSX1015)" +SDK_MACOSX1015_CXXFLAGS ?= -mmacosx-version-min=10.15 -isysroot "$(PATH_SDK_MACOSX1015)" +SDK_MACOSX1015_OBJCFLAGS ?= -mmacosx-version-min=10.15 -isysroot "$(PATH_SDK_MACOSX1015)" +SDK_MACOSX1015_OBJCXXFLAGS ?= -mmacosx-version-min=10.15 -isysroot "$(PATH_SDK_MACOSX1015)" +SDK_MACOSX1015_LDFLAGS ?= -mmacosx-version-min=10.15 -isysroot "$(PATH_SDK_MACOSX1015)" + diff --git a/kBuild/sdks/MACOSX1015INCS.kmk b/kBuild/sdks/MACOSX1015INCS.kmk new file mode 100644 index 0000000..cda5b44 --- /dev/null +++ b/kBuild/sdks/MACOSX1015INCS.kmk @@ -0,0 +1,49 @@ +# $Id: MACOSX1015INCS.kmk 3407 2020-07-17 20:03:06Z bird $ +## @file +# kBuild SDK - Mac OS X v10.15 SDK, includes only. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_MACOSX1015 + include $(KBUILD_PATH)/sdks/MACOSX1015.kmk +endif + +SDK_MACOSX1015INCS := Mac OS X v10.15 SDK, include only. + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX1015INCS + PATH_SDK_MACOSX1015INCS := $(PATH_SDK_MACOSX1015) +else + PATH_SDK_MACOSX1015INCS := $(PATH_SDK_MACOSX1015INCS) +endif + +# General Properties (used by kBuild) +SDK_MACOSX1015INCS_INCS = $(PATH_SDK_MACOSX1015INCS)/usr/include + diff --git a/kBuild/sdks/MACOSX104.kmk b/kBuild/sdks/MACOSX104.kmk new file mode 100644 index 0000000..4550973 --- /dev/null +++ b/kBuild/sdks/MACOSX104.kmk @@ -0,0 +1,52 @@ +# $Id: MACOSX104.kmk 3489 2020-09-22 13:44:52Z bird $ +## @file +# kBuild SDK - Mac OS X v10.4 SDK. +# + +# +# Copyright (c) 2008-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_MACOSX104 := Mac OS X v10.4 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX104 + PATH_SDK_MACOSX104 := /Developer/SDKs/MacOSX10.4u.sdk +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX104 := $(PATH_SDK_MACOSX104) +endif + +# General Properties (used by kBuild) +# Note: The MAC_OS_X_VERSION_MAX_ALLOWED is left free for the SDK user to define. +SDK_MACOSX104_DEFS ?= MAC_OS_X_VERSION_MIN_REQUIRED=1040 +SDK_MACOSX104_CFLAGS ?= -mmacosx-version-min=10.4 -isysroot "$(PATH_SDK_MACOSX104)" +SDK_MACOSX104_CXXFLAGS ?= -mmacosx-version-min=10.4 -isysroot "$(PATH_SDK_MACOSX104)" +SDK_MACOSX104_OBJCFLAGS ?= -mmacosx-version-min=10.4 -isysroot "$(PATH_SDK_MACOSX104)" +SDK_MACOSX104_OBJCXXFLAGS ?= -mmacosx-version-min=10.4 -isysroot "$(PATH_SDK_MACOSX104)" +SDK_MACOSX104_LDFLAGS ?= -mmacosx-version-min=10.4 -Wl,-syslibroot,"$(PATH_SDK_MACOSX104)" + diff --git a/kBuild/sdks/MACOSX104INCS.kmk b/kBuild/sdks/MACOSX104INCS.kmk new file mode 100644 index 0000000..e8f656b --- /dev/null +++ b/kBuild/sdks/MACOSX104INCS.kmk @@ -0,0 +1,50 @@ +# $Id: MACOSX104INCS.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - Mac OS X v10.4 SDK, includes only. +# + +# +# Copyright (c) 2008-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_MACOSX104INCS := Mac OS X v10.4 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX104INCS + ifdef PATH_SDK_MACOSX104 + PATH_SDK_MACOSX104INCS := $(PATH_SDK_MACOSX104) + else + PATH_SDK_MACOSX104INCS := /Developer/SDKs/MacOSX10.4u.sdk + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX104INCS := $(PATH_SDK_MACOSX104INCS) +endif + +# General Properties (used by kBuild) +SDK_MACOSX104INCS_INCS = $(PATH_SDK_MACOSX104INCS)/usr/include + diff --git a/kBuild/sdks/MACOSX105.kmk b/kBuild/sdks/MACOSX105.kmk new file mode 100644 index 0000000..62b3cd2 --- /dev/null +++ b/kBuild/sdks/MACOSX105.kmk @@ -0,0 +1,52 @@ +# $Id: MACOSX105.kmk 3489 2020-09-22 13:44:52Z bird $ +## @file +# kBuild SDK - Mac OS X v10.5 SDK. +# + +# +# Copyright (c) 2008-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_MACOSX105 := Mac OS X v10.5 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX105 + PATH_SDK_MACOSX105 := /Developer/SDKs/MacOSX10.5.sdk +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX105 := $(PATH_SDK_MACOSX105) +endif + +# General Properties (used by kBuild) +# Note: The MAC_OS_X_VERSION_MAX_ALLOWED is left free for the SDK user to define. +SDK_MACOSX105_DEFS ?= MAC_OS_X_VERSION_MIN_REQUIRED=1050 +SDK_MACOSX105_CFLAGS ?= -mmacosx-version-min=10.5 -isysroot "$(PATH_SDK_MACOSX105)" +SDK_MACOSX105_CXXFLAGS ?= -mmacosx-version-min=10.5 -isysroot "$(PATH_SDK_MACOSX105)" +SDK_MACOSX105_OBJCFLAGS ?= -mmacosx-version-min=10.5 -isysroot "$(PATH_SDK_MACOSX105)" +SDK_MACOSX105_OBJCXXFLAGS ?= -mmacosx-version-min=10.5 -isysroot "$(PATH_SDK_MACOSX105)" +SDK_MACOSX105_LDFLAGS ?= -mmacosx-version-min=10.5 -Wl,-syslibroot,"$(PATH_SDK_MACOSX105)" + diff --git a/kBuild/sdks/MACOSX105INCS.kmk b/kBuild/sdks/MACOSX105INCS.kmk new file mode 100644 index 0000000..7965c9d --- /dev/null +++ b/kBuild/sdks/MACOSX105INCS.kmk @@ -0,0 +1,50 @@ +# $Id: MACOSX105INCS.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - Mac OS X v10.5 SDK, includes only. +# + +# +# Copyright (c) 2008-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_MACOSX105INCS := Mac OS X v10.5 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX105INCS + ifdef PATH_SDK_MACOSX105 + PATH_SDK_MACOSX105INCS := $(PATH_SDK_MACOSX105) + else + PATH_SDK_MACOSX105INCS := /Developer/SDKs/MacOSX10.5.sdk + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX105INCS := $(PATH_SDK_MACOSX105INCS) +endif + +# General Properties (used by kBuild) +SDK_MACOSX105INCS_INCS = $(PATH_SDK_MACOSX105INCS)/usr/include + diff --git a/kBuild/sdks/MACOSX110.kmk b/kBuild/sdks/MACOSX110.kmk new file mode 100644 index 0000000..1715f80 --- /dev/null +++ b/kBuild/sdks/MACOSX110.kmk @@ -0,0 +1,62 @@ +# $Id: MACOSX110.kmk 3495 2020-12-23 20:18:20Z bird $ +## @file +# kBuild SDK - Mac OS X v11.0 SDK. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef INCLUDED_DARWIN_COMMON_KMK + include $(KBUILD_PATH)/darwin-common.kmk +endif + +SDK_MACOSX110 := Mac OS X v11.0 SDK + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX110 + PATH_SDK_MACOSX110 := $(call DARWINCMN_FN_FIND_MACOSX_SDK,MacOSX11.0.sdk) +else + # Resolve any fancy stuff once and for all. + PATH_SDK_MACOSX110 := $(PATH_SDK_MACOSX110) +endif +ifeq ($(PATH_SDK_MACOSX110),) + $(warning $(call DARWINCMN_FN_ERROR_MACOSX_SDK,MacOSX11.0.sdk)) +endif + +## The MAC_OS_X_VERSION_MIN_REQUIRED and MAC_OS_X_VERSION_MAX_ALLOWED value for this SDK. +SDK_MACOSX110_VERSION_VALUE := 110000 + +# General Properties (used by kBuild) +# Note: The MAC_OS_X_VERSION_MAX_ALLOWED is left free for the SDK user to define. +SDK_MACOSX110_DEFS ?= MAC_OS_X_VERSION_MIN_REQUIRED=110000 +SDK_MACOSX110_CFLAGS ?= -mmacosx-version-min=11.0 -isysroot "$(PATH_SDK_MACOSX110)" +SDK_MACOSX110_CXXFLAGS ?= -mmacosx-version-min=11.0 -isysroot "$(PATH_SDK_MACOSX110)" +SDK_MACOSX110_OBJCFLAGS ?= -mmacosx-version-min=11.0 -isysroot "$(PATH_SDK_MACOSX110)" +SDK_MACOSX110_OBJCXXFLAGS ?= -mmacosx-version-min=11.0 -isysroot "$(PATH_SDK_MACOSX110)" +SDK_MACOSX110_LDFLAGS ?= -mmacosx-version-min=11.0 -isysroot "$(PATH_SDK_MACOSX110)" + diff --git a/kBuild/sdks/MACOSX110INCS.kmk b/kBuild/sdks/MACOSX110INCS.kmk new file mode 100644 index 0000000..aa26b10 --- /dev/null +++ b/kBuild/sdks/MACOSX110INCS.kmk @@ -0,0 +1,49 @@ +# $Id: MACOSX110INCS.kmk 3495 2020-12-23 20:18:20Z bird $ +## @file +# kBuild SDK - Mac OS X v11.0 SDK, includes only. +# + +# +# Copyright (c) 2008-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_MACOSX110 + include $(KBUILD_PATH)/sdks/MACOSX110.kmk +endif + +SDK_MACOSX110INCS := Mac OS X v11.0 SDK, include only. + +# SDK Specific Properties +ifndef PATH_SDK_MACOSX110INCS + PATH_SDK_MACOSX110INCS := $(PATH_SDK_MACOSX110) +else + PATH_SDK_MACOSX110INCS := $(PATH_SDK_MACOSX110INCS) +endif + +# General Properties (used by kBuild) +SDK_MACOSX110INCS_INCS = $(PATH_SDK_MACOSX110INCS)/usr/include + diff --git a/kBuild/sdks/NT4DDK.kmk b/kBuild/sdks/NT4DDK.kmk new file mode 100644 index 0000000..ede2b19 --- /dev/null +++ b/kBuild/sdks/NT4DDK.kmk @@ -0,0 +1,59 @@ +# $Id: NT4DDK.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Windows NT 4 DDK, targeting X86. +# + +# +# Copyright (c) 2005-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_NT4DDK := The MicroSoft NT 4 DDK, targeting X86 (free, not checked). + +# SDK Specific Properties +ifndef PATH_SDK_NT4DDK + PATH_SDK_NT4DDK := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/ddknt4/1* $(KBUILD_DEVTOOLS)/win.x86/ddknt4/2*) + ifeq ($(PATH_SDK_NT4DDK),) + PATH_SDK_NT4DDK := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/ddknt4) + endif + ifneq ($(PATH_SDK_NT4DDK),) + PATH_SDK_NT4DDK := $(lastword $(sort $(PATH_SDK_NT4DDK))) + else + $(warning kBuild: PATH_SDK_NT4DDK couldn't be determined!) + PATH_SDK_NT4DDK := $(KBUILD_DEVTOOLS)/x86.win/ddknt4/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_NT4DDK := $(PATH_SDK_NT4DDK) +endif +PATH_SDK_NT4DDK_INC ?= $(PATH_SDK_NT4DDK)/inc +PATH_SDK_NT4DDK_LIB ?= $(PATH_SDK_NT4DDK)/lib/i386/free + +# General Properties used by kBuild +SDK_NT4DDK_DEFS ?= _X86_ +SDK_NT4DDK_INCS ?= $(PATH_SDK_NT4DDK_INC) +SDK_NT4DDK_LIBPATH ?= $(PATH_SDK_NT4DDK_LIB) + diff --git a/kBuild/sdks/OS2DDKBASE32.kmk b/kBuild/sdks/OS2DDKBASE32.kmk new file mode 100644 index 0000000..392fe3a --- /dev/null +++ b/kBuild/sdks/OS2DDKBASE32.kmk @@ -0,0 +1,59 @@ +# $Id: OS2DDKBASE32.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# +# kBuild SDK - The OS/2 DDK, 32-bit base headers and libraries. + +# +# Copyright (c) 2007-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_OS2DDKBASE32 := The OS/2 DDK, 32-bit base headers and libraries. + +# SDK Specific Properties +ifndef PATH_SDK_OS2DDKBASE32 + PATH_SDK_OS2DDKBASE32 := $(wildcard $(KBUILD_DEVTOOLS)/os2.x86/ddk/2*/base32) + ifeq ($(PATH_SDK_OS2DDKBASE32),) + PATH_SDK_OS2DDKBASE32 := $(wildcard $(PATH_DDKBASE)/../base32) + endif + ifneq ($(PATH_SDK_OS2DDKBASE32),) + PATH_SDK_OS2DDKBASE32 := $(lastword $(sort $(PATH_SDK_OS2DDKBASE32))) + else + $(warning kBuild: PATH_SDK_OS2DDKBASE32 couldn't be determined!) + PATH_SDK_OS2DDKBASE32 := $(KBUILD_DEVTOOLS)/x86.win/ddknt4/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_OS2DDKBASE32 := $(PATH_SDK_OS2DDKBASE32) +endif +PATH_SDK_OS2DDKBASE32_INC ?= +PATH_SDK_OS2DDKBASE32_LIB ?= $(PATH_SDK_OS2DDKBASE32)/lib/i386/free + +# General Properties used by kBuild +SDK_OS2DDKBASE32_INCS ?= $(PATH_SDK_OS2DDKBASE32)/rel/os2c/include/base/os2/16bit +SDK_OS2DDKBASE32_ASINCS ?= $(PATH_SDK_OS2DDKBASE32)/rel/os2c/include/base/os2/inc +SDK_OS2DDKBASE32_LIBPATH ?= $(PATH_SDK_OS2DDKBASE32_LIB) + diff --git a/kBuild/sdks/ReorderCompilerIncs.kmk b/kBuild/sdks/ReorderCompilerIncs.kmk new file mode 100644 index 0000000..64fa115 --- /dev/null +++ b/kBuild/sdks/ReorderCompilerIncs.kmk @@ -0,0 +1,63 @@ +# $Id: ReorderCompilerIncs.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - Pseudo SDK that inserts the compiler includes a bit earlier. +# +# Note! This SDK is using a number of internal kBuild variables as well as +# making assumptions about expansion order and location. +# Please, do NOT attempt anything like this in your own SDKs!! +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_ReorderCompilerIncs := Pseudo SDK that inserts the compiler includes a bit earlier. + +FN_SDK_ReorderCompilerIncs_GET_INCS = \ + $(TOOL_$(tool)_$(1)INCS.$(2).$(3).$(5)) \ + $(TOOL_$(tool)_$(1)INCS.$(2).$(3)) \ + $(TOOL_$(tool)_$(1)INCS.$(2).$(5)) \ + $(TOOL_$(tool)_$(1)INCS.$(4)) \ + $(TOOL_$(tool)_$(1)INCS.$(3)) \ + $(TOOL_$(tool)_$(1)INCS.$(2)) \ + $(TOOL_$(tool)_$(1)INCS.$(5)) \ + $(TOOL_$(tool)_$(1)INCS) \ + $(TOOL_$(tool)_INCS.$(2).$(3).$(5)) \ + $(TOOL_$(tool)_INCS.$(2).$(3)) \ + $(TOOL_$(tool)_INCS.$(2).$(5)) \ + $(TOOL_$(tool)_INCS.$(4)) \ + $(TOOL_$(tool)_INCS.$(3)) \ + $(TOOL_$(tool)_INCS.$(2)) \ + $(TOOL_$(tool)_INCS.$(5)) \ + $(TOOL_$(tool)_INCS) \ + +$(foreach os,$(KBUILD_OSES),$(foreach arch,$(KBUILD_ARCHES),$(foreach cat,$(KBUILD_COMPILE_CATEGTORIES) \ + ,$(eval SDK_ReorderCompilerIncs_$(cat)INCS.$(os).$(arch) = \ + $$(call FN_SDK_ReorderCompilerIncs_GET_INCS,CXX,win,amd64,$$(bld_trg_cpu),$$(bld_type))\ + )\ +))) + diff --git a/kBuild/sdks/W2K3DDK.kmk b/kBuild/sdks/W2K3DDK.kmk new file mode 100644 index 0000000..888de5e --- /dev/null +++ b/kBuild/sdks/W2K3DDK.kmk @@ -0,0 +1,81 @@ +# $Id: W2K3DDK.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 2003 DDK, targeting $(KBUILD_TARGET). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_W2K3DDK := The Microsoft Windows 2003 DDK, targeting $(KBUILD_TARGET). + +# SDK Specific Properties +ifndef PATH_SDK_W2K3DDK + PATH_SDK_W2K3DDK := $(wildcard $(KBUILD_DEVTOOLS_TRG)/ddkwin2k3/2*) + ifeq ($(PATH_SDK_W2K3DDK),) + PATH_SDK_W2K3DDK := $(wildcard $(KBUILD_DEVTOOLS_BLD)/ddkwin2k3/2*) + endif + ifeq ($(PATH_SDK_W2K3DDK),) + PATH_SDK_W2K3DDK := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/ddkwin2k3/2*) + endif + ifeq ($(PATH_SDK_W2K3DDK),) + PATH_SDK_W2K3DDK := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/ddkwin2k3/2*) + endif + ifeq ($(PATH_SDK_W2K3DDK),) + PATH_SDK_W2K3DDK := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/ddkwin2k3/2*) + endif + ifeq ($(PATH_SDK_W2K3DDK),) + ifneq ($(wildcard $(KBUILD_DEVTOOLS)/x86.win32/ddkwin2k3/lib/wnet/i386/*.lib),) + PATH_SDK_W2K3DDK := $(KBUILD_DEVTOOLS)/x86.win32/ddkwin2k3 + endif + endif + ifneq ($(PATH_SDK_W2K3DDK),) + PATH_SDK_W2K3DDK := $(lastword $(sort $(PATH_SDK_W2K3DDK))) + else + $(warning kBuild: PATH_SDK_W2K3DDK couldn't be determined!) + PATH_SDK_W2K3DDK := $(KBUILD_DEVTOOLS)/win.x86/ddkwin2k3/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_W2K3DDK := $(PATH_SDK_W2K3DDK) +endif +PATH_SDK_W2K3DDK_INC ?= $(PATH_SDK_W2K3DDK)/inc +PATH_SDK_W2K3DDK_LIB.amd64 ?= $(PATH_SDK_W2K3DDK)/lib/wnet/AMD64 +PATH_SDK_W2K3DDK_LIB.x86 ?= $(PATH_SDK_W2K3DDK)/lib/wnet/i386 +PATH_SDK_W2K3DDK_LIB ?= $(PATH_SDK_W2K3DDK_LIB.$(KBUILD_TARGET_ARCH)) + +# General Properties used by kBuild +SDK_W2K3DDK_DEFS.amd64 ?= _AMD64_ +SDK_W2K3DDK_DEFS.x86 ?= _X86_ +SDK_W2K3DDK_INCS ?= \ + $(PATH_SDK_W2K3DDK_INC)/ddk \ + $(PATH_SDK_W2K3DDK_INC)/ddk/wnet \ + $(PATH_SDK_W2K3DDK_INC)/wnet \ + $(PATH_SDK_W2K3DDK_INC)/ddk/wdm/wnet +SDK_W2K3DDK_LIBPATH.amd64 ?= $(PATH_SDK_W2K3DDK_LIB.amd64) +SDK_W2K3DDK_LIBPATH.x86 ?= $(PATH_SDK_W2K3DDK_LIB.x86) + diff --git a/kBuild/sdks/W2K3DDKAMD64.kmk b/kBuild/sdks/W2K3DDKAMD64.kmk new file mode 100644 index 0000000..a9f06e7 --- /dev/null +++ b/kBuild/sdks/W2K3DDKAMD64.kmk @@ -0,0 +1,71 @@ +# $Id: W2K3DDKAMD64.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 2003 DDK, targeting amd64. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_W2K3DDKAMD64 := The Microsoft Windows 2003 DDK, targeting amd64. + +# SDK Specific Properties +ifndef PATH_SDK_W2K3DDKAMD64 + PATH_SDK_W2K3DDKAMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/ddkwin2k3/2*) + ifeq ($(PATH_SDK_W2K3DDKAMD64),) + PATH_SDK_W2K3DDKAMD64 := $(PATH_SDK_W2K3DDK) + endif + ifeq ($(PATH_SDK_W2K3DDKAMD64),) + PATH_SDK_W2K3DDKAMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/ddkwin2k3/2*) + endif + # legacy: + ifeq ($(PATH_SDK_W2K3DDKAMD64),) + PATH_SDK_W2K3DDKAMD64 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/ddkwin2k3/2*) + endif + ifneq ($(PATH_SDK_W2K3DDKAMD64),) + PATH_SDK_W2K3DDKAMD64 := $(lastword $(sort $(PATH_SDK_W2K3DDKAMD64))) + else + $(warning kBuild: PATH_SDK_W2K3DDKAMD64 couldn't be determined!) + PATH_SDK_W2K3DDKAMD64 := $(KBUILD_DEVTOOLS)/win.amd64/ddkwin2k3/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_W2K3DDKAMD64 := $(PATH_SDK_W2K3DDKAMD64) +endif +PATH_SDK_W2K3DDKAMD64_INC ?= $(PATH_SDK_W2K3DDKAMD64)/inc +PATH_SDK_W2K3DDKAMD64_LIB ?= $(PATH_SDK_W2K3DDKAMD64)/lib/wnet/AMD64 + +# General Properties used by kBuild +SDK_W2K3DDKAMD64_DEFS ?= _AMD64_ +SDK_W2K3DDKAMD64_INCS ?= \ + $(PATH_SDK_W2K3DDKAMD64_INC)/ddk \ + $(PATH_SDK_W2K3DDKAMD64_INC)/ddk/wnet \ + $(PATH_SDK_W2K3DDKAMD64_INC)/wnet \ + $(PATH_SDK_W2K3DDKAMD64_INC)/ddk/wdm/wnet +SDK_W2K3DDKAMD64_LIBPATH ?= \ + $(PATH_SDK_W2K3DDKAMD64_LIB) + diff --git a/kBuild/sdks/W2K3DDKX86.kmk b/kBuild/sdks/W2K3DDKX86.kmk new file mode 100644 index 0000000..4f4beb1 --- /dev/null +++ b/kBuild/sdks/W2K3DDKX86.kmk @@ -0,0 +1,74 @@ +# $Id: W2K3DDKX86.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 2003 DDK, targeting x86. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_W2K3DDKX86 := The Microsoft Windows 2003 DDK, targeting x86. + +# SDK Specific Properties +ifndef PATH_SDK_W2K3DDKX86 + PATH_SDK_W2K3DDKX86 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/ddkwin2k3/2*) + ifeq ($(PATH_SDK_W2K3DDKX86),) + PATH_SDK_W2K3DDKX86 := $(PATH_SDK_W2K3DDK) + endif + ifeq ($(PATH_SDK_W2K3DDKX86),) + PATH_SDK_W2K3DDKX86 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/ddkwin2k3/2*) + endif + # legacy: + ifeq ($(PATH_SDK_W2K3DDKX86),) + PATH_SDK_W2K3DDKX86 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/ddkwin2k3/2*) + endif + ifeq ($(PATH_SDK_W2K3DDKX86),) + PATH_SDK_W2K3DDKX86 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/ddkwin2k3) + endif + ifneq ($(PATH_SDK_W2K3DDKX86),) + PATH_SDK_W2K3DDKX86 := $(lastword $(sort $(PATH_SDK_W2K3DDKX86))) + else + $(warning kBuild: PATH_SDK_W2K3DDKX86 couldn't be determined!) + PATH_SDK_W2K3DDKX86 := $(KBUILD_DEVTOOLS)/x86.win/ddkwin2k3/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_W2K3DDKX86 := $(PATH_SDK_W2K3DDKX86) +endif +PATH_SDK_W2K3DDKX86_INC ?= $(PATH_SDK_W2K3DDKX86)/inc +PATH_SDK_W2K3DDKX86_LIB ?= $(PATH_SDK_W2K3DDKX86)/lib/wnet/i386 + +# General Properties used by kBuild +SDK_W2K3DDKX86_DEFS ?= _X86_ +SDK_W2K3DDKX86_INCS ?= \ + $(PATH_SDK_W2K3DDKX86_INC)/ddk \ + $(PATH_SDK_W2K3DDKX86_INC)/ddk/wnet \ + $(PATH_SDK_W2K3DDKX86_INC)/wnet \ + $(PATH_SDK_W2K3DDKX86_INC)/ddk/wdm/wnet +SDK_W2K3DDKX86_LIBPATH ?= \ + $(PATH_SDK_W2K3DDKX86_LIB) + diff --git a/kBuild/sdks/W32API.kmk b/kBuild/sdks/W32API.kmk new file mode 100644 index 0000000..20c0a19 --- /dev/null +++ b/kBuild/sdks/W32API.kmk @@ -0,0 +1,58 @@ +# $Id: W32API.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - w32api (MinGW), targeting x86. +# + +# +# Copyright (c) 2004-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_W32API := w32api (MinGW), targeting x86. + +# SDK Specific Properties +ifndef PATH_SDK_W32API + PATH_SDK_W32API := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/w32api/v*) + ifeq ($(PATH_SDK_W32API),) + PATH_SDK_W32API := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/w32api/v*) + endif + ifneq ($(PATH_SDK_W32API),) + PATH_SDK_W32API := $(lastword $(sort $(PATH_SDK_W32API))) + else + $(warning kBuild: PATH_SDK_W32API couldn't be determined!) + PATH_SDK_W32API := $(KBUILD_DEVTOOLS)/x86.win/w32api/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_W32API := $(PATH_SDK_W32API) +endif +PATH_SDK_W32API_INC ?= $(PATH_SDK_W32API)/include +PATH_SDK_W32API_LIB ?= $(PATH_SDK_W32API)/lib + +# General Properties used by kBuild +SDK_W32API_INCS ?= $(PATH_SDK_W32API_INC) +SDK_W32API_LIBPATH ?= $(PATH_SDK_W32API_LIB) + diff --git a/kBuild/sdks/WIN32SDK.kmk b/kBuild/sdks/WIN32SDK.kmk new file mode 100644 index 0000000..9f9cf20 --- /dev/null +++ b/kBuild/sdks/WIN32SDK.kmk @@ -0,0 +1,93 @@ +# $Id: WIN32SDK.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Windows Platform SDK, targeting x86. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WIN32SDK := The Windows Platform SDK, targeting x86. + +# SDK Specific Properties +ifndef PATH_SDK_WIN32SDK + PATH_SDK_WIN32SDK := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/sdk/2*) + ifeq ($(PATH_SDK_WIN32SDK),) + PATH_SDK_WIN32SDK := $(PATH_SDK_WINPSDK) + endif + ifeq ($(PATH_SDK_WIN32SDK),) + PATH_SDK_WIN32SDK := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/sdk/2*) + endif + ifeq ($(PATH_SDK_WIN32SDK),) + PATH_SDK_WIN32SDK := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/sdk/2*) + endif + ifneq ($(PATH_SDK_WIN32SDK),) + PATH_SDK_WIN32SDK := $(lastword $(sort $(PATH_SDK_WIN32SDK))) + else + $(warning kBuild: PATH_SDK_WIN32SDK couldn't be determined!) + PATH_SDK_WIN32SDK := $(KBUILD_DEVTOOLS)/win.x86/sdk/not/found + endif +endif +ifndef PATH_SDK_WIN32SDK_INC +PATH_SDK_WIN32SDK_INC := $(firstword $(wildcard $(PATH_SDK_WIN32SDK)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WIN32SDK)/Include) +endif +ifndef PATH_SDK_WIN32SDK_LIB +PATH_SDK_WIN32SDK_LIB := $(firstword $(wildcard $(PATH_SDK_WIN32SDK)/[Ll][Ii][Bb]) $(PATH_SDK_WIN32SDK)/Lib) +endif +ifndef PATH_SDK_WIN32SDK_BIN +PATH_SDK_WIN32SDK_BIN := $(firstword $(wildcard $(PATH_SDK_WIN32SDK)/[Bb][Ii][Nn]) $(PATH_SDK_WIN32SDK)/Bin) +endif + + +# General Properties used by kBuild +SDK_WIN32SDK_INCS ?= $(PATH_SDK_WIN32SDK_INC) +SDK_WIN32SDK_LIBPATH ?= $(PATH_SDK_WIN32SDK_LIB) +SDK_WIN32SDK_LIBS ?= \ + $(PATH_SDK_WIN32SDK_LIB)/Kernel32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/User32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/Gdi32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/AdvAPI32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/Shell32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/ShLwApi.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/SetupAPI.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/Uuid.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/Version.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/WS2_32.Lib \ + \ + $(PATH_SDK_WIN32SDK_LIB)/Ole32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/OleAut32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/OleDlg.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/RpcRT4.Lib \ + \ + $(PATH_SDK_WIN32SDK_LIB)/DbgHelp.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/ImageHlp.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/IPHlpApi.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/ComCtl32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/ComDlg32.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/WinSpool.Lib \ + $(PATH_SDK_WIN32SDK_LIB)/WinMM.Lib \ + diff --git a/kBuild/sdks/WIN32SDK2002.kmk b/kBuild/sdks/WIN32SDK2002.kmk new file mode 100644 index 0000000..148e3a1 --- /dev/null +++ b/kBuild/sdks/WIN32SDK2002.kmk @@ -0,0 +1,90 @@ +# $Id: WIN32SDK2002.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - Windows Platform SDK (from ~2002), targeting x86. +# Differs in that it has ddraw.lib and dxguid.lib. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + + +SDK_WIN32SDK2002 := Windows Platform SDK (from ~2002), targeting x86. \ + Differs in that it has ddraw.lib and dxguid.lib. + +# SDK Specific Properties +ifndef PATH_SDK_WIN32SDK2002 + PATH_SDK_WIN32SDK2002 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/sdk/2002*) + ifeq ($(PATH_SDK_WIN32SDK2002),) + PATH_SDK_WIN32SDK2002 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/sdk/2002*) + endif + ifeq ($(PATH_SDK_WIN32SDK2002),) + PATH_SDK_WIN32SDK2002 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/sdk2002*) + endif + ifneq ($(PATH_SDK_WIN32SDK2002),) + PATH_SDK_WIN32SDK2002 := $(lastword $(sort $(PATH_SDK_WIN32SDK2002))) + else + $(warning kBuild: PATH_SDK_WIN32SDK2002 couldn't be determined!) + PATH_SDK_WIN32SDK2002 := $(KBUILD_DEVTOOLS)/win.x86/sdk/2002/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_WIN32SDK2002 := $(PATH_SDK_WIN32SDK2002) +endif +PATH_SDK_WIN32SDK2002_INC ?= $(PATH_SDK_WIN32SDK2002)/include +PATH_SDK_WIN32SDK2002_LIB ?= $(PATH_SDK_WIN32SDK2002)/lib + +# General Properties used by kBuild +SDK_WIN32SDK2002_INCS ?= $(PATH_SDK_WIN32SDK2002_INC) +SDK_WIN32SDK2002_LIBPATH ?= $(PATH_SDK_WIN32SDK2002_LIB) +SDK_WIN32SDK2002_LIBS ?= \ + $(PATH_SDK_WIN32SDK2002_LIB)/Kernel32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/User32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/Gdi32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/AdvAPI32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/Shell32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/ShLwApi.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/SetupAPI.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/Uuid.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/Version.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/WS2_32.Lib \ + \ + $(PATH_SDK_WIN32SDK2002_LIB)/Ole32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/OleAut32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/OleDlg.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/RpcRT4.Lib \ + \ + $(PATH_SDK_WIN32SDK2002_LIB)/DbgHelp.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/ImageHlp.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/IPHlpApi.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/ddraw.lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/dxguid.lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/ComCtl32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/ComDlg32.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/WinSpool.Lib \ + $(PATH_SDK_WIN32SDK2002_LIB)/WinMM.Lib + diff --git a/kBuild/sdks/WIN64SDK.kmk b/kBuild/sdks/WIN64SDK.kmk new file mode 100644 index 0000000..4c3f51d --- /dev/null +++ b/kBuild/sdks/WIN64SDK.kmk @@ -0,0 +1,99 @@ +# $Id: WIN64SDK.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Windows Platform SDK, targeting AMD64. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + + +SDK_WIN64SDK := The Windows Platform SDK, targeting AMD64. + +# SDK Specific Properties +ifndef PATH_SDK_WIN64SDK + PATH_SDK_WIN64SDK := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/sdk/2*) + ifeq ($(PATH_SDK_WIN64SDK),) + PATH_SDK_WIN64SDK := $(PATH_SDK_WINPSDK) + endif + ifeq ($(PATH_SDK_WIN64SDK),) + PATH_SDK_WIN64SDK := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/sdk/2*) + endif + ifneq ($(PATH_SDK_WIN64SDK),) + PATH_SDK_WIN64SDK := $(lastword $(sort $(PATH_SDK_WIN64SDK))) + else + $(warning kBuild: PATH_SDK_WIN64SDK couldn't be determined!) + PATH_SDK_WIN64SDK := $(KBUILD_DEVTOOLS)/win.amd64/sdk/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_WIN64SDK := $(PATH_SDK_WIN64SDK) +endif +ifndef PATH_SDK_WIN64SDK_INC +PATH_SDK_WIN64SDK_INC := $(firstword $(wildcard $(PATH_SDK_WIN64SDK)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WIN64SDK)/Include) +endif + +ifndef PATH_SDK_WIN64SDK_LIB +PATH_SDK_WIN64SDK_LIB := $(firstword $(wildcard $(PATH_SDK_WIN64SDK)/[Ll][Ii][Bb]/[Aa][Mm][Dd]64 $(PATH_SDK_WIN64SDK)/[Ll][Ii][Bb]/[xX]64) $(PATH_SDK_WIN64SDK)/Lib/AMD64) +endif + +ifndef PATH_SDK_WIN64SDK_BIN +PATH_SDK_WIN64SDK_BIN := $(firstword $(wildcard $(PATH_SDK_WIN64SDK)/[Bb][Ii][Nn]) $(PATH_SDK_WIN64SDK)/Bin) +endif +ifndef PATH_SDK_WIN64SDK_BIN_AMD64 +PATH_SDK_WIN64SDK_BIN_AMD64 := $(firstword $(wildcard $(PATH_SDK_WIN64SDK_BIN)/[Ww][Ii][Nn]64/[Xx]86/[Aa][Mm][Dd]64 $(PATH_SDK_WIN64SDK_BIN)/[Ww][Ii][Nn]64/[Xx]86) $(PATH_SDK_WIN64SDK_BIN)/win64/AMD64) +endif + + +# General Properties used by kBuild +SDK_WIN64SDK_INCS ?= $(PATH_SDK_WIN64SDK_INC) +SDK_WIN64SDK_LIBPATH ?= $(PATH_SDK_WIN64SDK_LIB) +SDK_WIN64SDK_LIBS ?= \ + $(PATH_SDK_WIN64SDK_LIB)/Kernel32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/User32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/Gdi32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/AdvAPI32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/Shell32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/ShLwApi.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/SetupAPI.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/Uuid.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/Version.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/WS2_32.Lib \ + \ + $(PATH_SDK_WIN64SDK_LIB)/Ole32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/OleAut32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/OleDlg.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/RpcRT4.Lib \ + \ + $(PATH_SDK_WIN64SDK_LIB)/DbgHelp.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/ImageHlp.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/IPHlpApi.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/ComCtl32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/ComDlg32.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/WinSpool.Lib \ + $(PATH_SDK_WIN64SDK_LIB)/WinMM.Lib + diff --git a/kBuild/sdks/WINDDK.kmk b/kBuild/sdks/WINDDK.kmk new file mode 100644 index 0000000..a8e9163 --- /dev/null +++ b/kBuild/sdks/WINDDK.kmk @@ -0,0 +1,133 @@ +# $Id: WINDDK.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Windows Vista and Server 2008 DDKs. +# Defaults to $(KBUILD_TARGET_ARCH). Base SDK. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDK := The Microsoft Windows Vista and Server 2008 DDKs. \ + Defaults to $(KBUILD_TARGET_ARCH). Base SDK. + +# SDK Specific Properties +ifndef PATH_SDK_WINDDK + PATH_SDK_WINDDK := $(wildcard $(KBUILD_DEVTOOLS_TRG)/ddk/6*) + ifeq ($(PATH_SDK_WINDDK),) + PATH_SDK_WINDDK := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/ddk/6*) + endif + ifeq ($(PATH_SDK_WINDDK),) + PATH_SDK_WINDDK := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/ddk/6*) + endif + ifeq ($(PATH_SDK_WINDDK),) + ifeq ($(KBUILD_HOST),win) + PATH_SDK_WINDDK := $(wildcard C:/WinDDK/6*) + endif + endif + ifneq ($(PATH_SDK_WINDDK),) + PATH_SDK_WINDDK := $(lastword $(sort $(PATH_SDK_WINDDK))) + else + $(warning kBuild: PATH_SDK_WINDDK couldn't be determined!) + PATH_SDK_WINDDK := $(KBUILD_DEVTOOLS)/win.x86/ddk/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_WINDDK := $(PATH_SDK_WINDDK) +endif + +PATH_SDK_WINDDK_INC ?= $(PATH_SDK_WINDDK)/inc +PATH_SDK_WINDDK_INC_API ?= $(PATH_SDK_WINDDK_INC)/api +PATH_SDK_WINDDK_INC_CRT ?= $(PATH_SDK_WINDDK_INC)/crt +PATH_SDK_WINDDK_INC_DDK ?= $(PATH_SDK_WINDDK_INC)/ddk + +PATH_SDK_WINDDK_LIB_ROOT ?= $(PATH_SDK_WINDDK)/lib +PATH_SDK_WINDDK_LIB_WLH_ROOT ?= $(PATH_SDK_WINDDK_LIB_ROOT)/wlh +PATH_SDK_WINDDK_LIB_WNET_ROOT ?= $(PATH_SDK_WINDDK_LIB_ROOT)/wnet +PATH_SDK_WINDDK_LIB_WXP_ROOT ?= $(PATH_SDK_WINDDK_LIB_ROOT)/wxp +PATH_SDK_WINDDK_LIB_W2K_ROOT ?= $(PATH_SDK_WINDDK_LIB_ROOT)/w2k +PATH_SDK_WINDDK_LIB_WDF_ROOT ?= $(PATH_SDK_WINDDK_LIB_ROOT)/w2k + +PATH_SDK_WINDDK_LIB_WLH.amd64 ?= $(PATH_SDK_WINDDK_LIB_WLH_ROOT)/amd64 +PATH_SDK_WINDDK_LIB_WLH.ia64 ?= $(PATH_SDK_WINDDK_LIB_WLH_ROOT)/ia64 +PATH_SDK_WINDDK_LIB_WLH.x86 ?= $(PATH_SDK_WINDDK_LIB_WLH_ROOT)/i386 +PATH_SDK_WINDDK_LIB_WLH ?= $(PATH_SDK_WINDDK_LIB_WLH.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK_LIB_WNET.amd64?= $(PATH_SDK_WINDDK_LIB_WNET_ROOT)/amd64 +PATH_SDK_WINDDK_LIB_WNET.ia64 ?= $(PATH_SDK_WINDDK_LIB_WNET_ROOT)/ia64 +PATH_SDK_WINDDK_LIB_WNET.x86 ?= $(PATH_SDK_WINDDK_LIB_WNET_ROOT)/i386 +PATH_SDK_WINDDK_LIB_WNET ?= $(PATH_SDK_WINDDK_LIB_WNET.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK_LIB_WXP.x86 ?= $(PATH_SDK_WINDDK_LIB_WXP_ROOT)/i386 +PATH_SDK_WINDDK_LIB_WXP ?= $(PATH_SDK_WINDDK_LIB_WXP.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK_LIB_W2K.x86 ?= $(PATH_SDK_WINDDK_LIB_W2K_ROOT)/i386 +PATH_SDK_WINDDK_LIB_W2K ?= $(PATH_SDK_WINDDK_LIB_W2K.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK_LIB.amd64 ?= $(PATH_SDK_WINDDK_LIB_WLH.amd64) +PATH_SDK_WINDDK_LIB.ia64 ?= $(PATH_SDK_WINDDK_LIB_WLH.ia64) +PATH_SDK_WINDDK_LIB.x86 ?= $(PATH_SDK_WINDDK_LIB_WLH.x86) +PATH_SDK_WINDDK_LIB ?= $(PATH_SDK_WINDDK_LIB.$(KBUILD_TARGET_ARCH)) + +# General Properties used by kBuild +SDK_WINDDK_DEFS.amd64 ?= _AMD64_ AMD64 _WIN64 +SDK_WINDDK_DEFS.ia64 ?= _IA64_=1 IA64=1 _WIN64 _MSC_EXTENSIONS +SDK_WINDDK_DEFS.x86 ?= _X86_=1 i386=1 STD_CALL +SDK_WINDDK_INCS ?= \ + $(PATH_SDK_WINDDK_INC_API) \ + $(PATH_SDK_WINDDK_INC_DDK) +# The compiler tool(s) will have to select the appropriate crt includes. +SDK_WINDDK_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK_LIB_WLH.amd64) +SDK_WINDDK_LIBPATH.ia64 ?= $(PATH_SDK_WINDDK_LIB_WLH.ia64) +SDK_WINDDK_LIBPATH.x86 ?= $(PATH_SDK_WINDDK_LIB_WLH.x86) + +# +# CDFS defines for the various build environments. Just to give an idea what +# you should put in your templates and target DEFS. +# + +# Vista / Server Longhorn x64 Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0600 WINVER=0x0600 _WIN32_IE=0x0700 NTDDI_VERSION=0x06000000 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL +# Vista / Server Longhorn ia64 Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0600 WINVER=0x0600 _WIN32_IE=0x0700 NTDDI_VERSION=0x06000000 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL NO_HW_DETECT _MSC_EXTENSIONS _MERCED_A0_=1 FPO=0 +# Vista / Server Longhorn x86 Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0600 WINVER=0x0600 _WIN32_IE=0x0700 NTDDI_VERSION=0x06000000 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL STD_CALL FPO=0 +# Windows Server 2003 amd64 Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0502 WINVER=0x0502 _WIN32_IE=0x0603 NTDDI_VERSION=0x05020100 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL +# Windows Server 2003 ia64 Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0502 WINVER=0x0502 _WIN32_IE=0x0603 NTDDI_VERSION=0x05020100 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL NO_HW_DETECT _MSC_EXTENSIONS _MERCED_A0_=1 FPO=0 +# Windows Server 2003 x86 Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0502 WINVER=0x0502 _WIN32_IE=0x0603 NTDDI_VERSION=0x05020100 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL STD_CALL FPO=0 +# Windows XP Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0501 WINVER=0x0501 _WIN32_IE=0x0603 NTDDI_VERSION=0x05010200 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL STD_CALL FPO=0 +# Windows 2000 Free: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0500 WINVER=0x0500 _WIN32_IE=0x0501 NTDDI_VERSION=0x05000400 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL STD_CALL FPO=0 +# Windows 2000 Checked: NT_INST=0 WIN32=100 _WIN32_WINNT=0x0500 WINVER=0x0500 _WIN32_IE=0x0501 NTDDI_VERSION=0x05000400 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 WIN32_LEAN_AND_MEAN=1 CONDITION_HANDLING=1 DEVL=1 NDEBUG __BUILDMACHINE__=WinDDK _DLL STD_CALL FPO=0 MSC_NOOPT + +# Some notes about the defines: +# NTDDI_VERSION indicates the target NT version, looks kind of important to get right. +# _WIN32_WINNT, WINVER and _WIN32_IE are used by a bunch of headers for selecting features. +# WIN32_LEAN_AND_MEAN is used by api\WINDOWS.H to drop a bunch of includes. +# WIN32 is just used for some ifdef'ing by a handful headers. +# __BUILDMACHINE__ is used by api\common.ver (for resources it seems). +# STD_CALL is used by ddk\stdcall.inc (masm). +# DEVL governs the IF_NTOS_DEBUG() macro in ddk\wdm.h. +# NDEBUG is used by crt\assert.h dictated by the standards. +# CONDITION_HANDLING, FPO, KMDF_MAJOR_VERSION, KMDF_MINOR_VERSION, MSC_NOOPT and NT_INST are not referenced in any headers. + diff --git a/kBuild/sdks/WINDDK71.kmk b/kBuild/sdks/WINDDK71.kmk new file mode 100644 index 0000000..5ac75ca --- /dev/null +++ b/kBuild/sdks/WINDDK71.kmk @@ -0,0 +1,107 @@ +# $Id: WINDDK71.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 7 DDK, v7.1. +# Defaults to $(KBUILD_TARGET_ARCH). Base SDK. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDK71 := The Microsoft Windows 7 DDK, v7.1. \ + Defaults to $(KBUILD_TARGET_ARCH). Base SDK. + +# SDK Specific Properties +ifndef PATH_SDK_WINDDK71 + PATH_SDK_WINDDK71 := $(wildcard $(KBUILD_DEVTOOLS_TRG)/ddk/7600.16385.1*) + ifeq ($(PATH_SDK_WINDDK71),) + PATH_SDK_WINDDK71 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/ddk/7600.16385.1*) + endif + ifeq ($(PATH_SDK_WINDDK71),) + PATH_SDK_WINDDK71 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/ddk/7600.16385.1*) + endif + ifeq ($(PATH_SDK_WINDDK71),) + ifeq ($(KBUILD_HOST),win) + PATH_SDK_WINDDK71 := $(wildcard C:/WinDDK/7600.16385.1*) + endif + endif + ifneq ($(PATH_SDK_WINDDK71),) + PATH_SDK_WINDDK71 := $(lastword $(sort $(PATH_SDK_WINDDK71))) + else + $(warning kBuild: PATH_SDK_WINDDK71 couldn't be determined!) + PATH_SDK_WINDDK71 := $(KBUILD_DEVTOOLS)/win.x86/ddk/7600.16385.1-not-found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_WINDDK71 := $(PATH_SDK_WINDDK71) +endif + +PATH_SDK_WINDDK71_INC ?= $(PATH_SDK_WINDDK71)/inc +PATH_SDK_WINDDK71_INC_API ?= $(PATH_SDK_WINDDK71_INC)/api +PATH_SDK_WINDDK71_INC_CRT ?= $(PATH_SDK_WINDDK71_INC)/crt +PATH_SDK_WINDDK71_INC_DDK ?= $(PATH_SDK_WINDDK71_INC)/ddk + +PATH_SDK_WINDDK71_LIB_ROOT ?= $(PATH_SDK_WINDDK71)/lib +PATH_SDK_WINDDK71_LIB_WLH_ROOT ?= $(PATH_SDK_WINDDK71_LIB_ROOT)/wlh +PATH_SDK_WINDDK71_LIB_WNET_ROOT ?= $(PATH_SDK_WINDDK71_LIB_ROOT)/wnet +PATH_SDK_WINDDK71_LIB_WXP_ROOT ?= $(PATH_SDK_WINDDK71_LIB_ROOT)/wxp +PATH_SDK_WINDDK71_LIB_W2K_ROOT ?= $(PATH_SDK_WINDDK71_LIB_ROOT)/w2k +PATH_SDK_WINDDK71_LIB_WDF_ROOT ?= $(PATH_SDK_WINDDK71_LIB_ROOT)/w2k + +PATH_SDK_WINDDK71_LIB_WLH.amd64 ?= $(PATH_SDK_WINDDK71_LIB_WLH_ROOT)/amd64 +PATH_SDK_WINDDK71_LIB_WLH.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WLH_ROOT)/ia64 +PATH_SDK_WINDDK71_LIB_WLH.x86 ?= $(PATH_SDK_WINDDK71_LIB_WLH_ROOT)/i386 +PATH_SDK_WINDDK71_LIB_WLH ?= $(PATH_SDK_WINDDK71_LIB_WLH.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK71_LIB_WNET.amd64?= $(PATH_SDK_WINDDK71_LIB_WNET_ROOT)/amd64 +PATH_SDK_WINDDK71_LIB_WNET.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WNET_ROOT)/ia64 +PATH_SDK_WINDDK71_LIB_WNET.x86 ?= $(PATH_SDK_WINDDK71_LIB_WNET_ROOT)/i386 +PATH_SDK_WINDDK71_LIB_WNET ?= $(PATH_SDK_WINDDK71_LIB_WNET.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK71_LIB_WXP.x86 ?= $(PATH_SDK_WINDDK71_LIB_WXP_ROOT)/i386 +PATH_SDK_WINDDK71_LIB_WXP ?= $(PATH_SDK_WINDDK71_LIB_WXP.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK71_LIB_W2K.x86 ?= $(PATH_SDK_WINDDK71_LIB_W2K_ROOT)/i386 +PATH_SDK_WINDDK71_LIB_W2K ?= $(PATH_SDK_WINDDK71_LIB_W2K.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK71_LIB.amd64 ?= $(PATH_SDK_WINDDK71_LIB_WLH.amd64) +PATH_SDK_WINDDK71_LIB.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WLH.ia64) +PATH_SDK_WINDDK71_LIB.x86 ?= $(PATH_SDK_WINDDK71_LIB_WLH.x86) +PATH_SDK_WINDDK71_LIB ?= $(PATH_SDK_WINDDK71_LIB.$(KBUILD_TARGET_ARCH)) + +# General Properties used by kBuild +SDK_WINDDK71_DEFS.amd64 ?= _AMD64_ AMD64 _WIN64 +SDK_WINDDK71_DEFS.ia64 ?= _IA64_=1 IA64=1 _WIN64 _MSC_EXTENSIONS +SDK_WINDDK71_DEFS.x86 ?= _X86_=1 i386=1 STD_CALL +SDK_WINDDK71_INCS ?= \ + $(PATH_SDK_WINDDK71_INC_API) \ + $(PATH_SDK_WINDDK71_INC_DDK) +# The compiler tool(s) will have to select the appropriate crt includes. +SDK_WINDDK71_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK71_LIB_WLH.amd64) +SDK_WINDDK71_LIBPATH.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WLH.ia64) +SDK_WINDDK71_LIBPATH.x86 ?= $(PATH_SDK_WINDDK71_LIB_WLH.x86) + diff --git a/kBuild/sdks/WINDDK71WLH.kmk b/kBuild/sdks/WINDDK71WLH.kmk new file mode 100644 index 0000000..7b29885 --- /dev/null +++ b/kBuild/sdks/WINDDK71WLH.kmk @@ -0,0 +1,47 @@ +# $Id: WINDDK71WLH.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 7 DDKs, v7.1, Targeting Vista and 2008 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDK71WLH := The Microsoft Windows 7 DDKs, v7.1, Targeting Vista and 2008 (KBUILD_TARGET_ARCH). +SDK_WINDDK71WLH_EXTENDS = WINDDK71 +SDK_WINDDK71WLH_DEFS ?= WIN32=100 _WIN32_WINNT=0x0600 WINVER=0x0600 _WIN32_IE=0x0700 NTDDI_VERSION=0x06000000 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 +SDK_WINDDK71WLH_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK71_LIB_WLH.amd64) +SDK_WINDDK71WLH_LIBPATH.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WLH.ia64) +SDK_WINDDK71WLH_LIBPATH.x86 ?= $(PATH_SDK_WINDDK71_LIB_WLH.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK71 sdk, so use those variables where ever possible +PATH_SDK_WINDDK71WLH_LIB.amd64?= $(PATH_SDK_WINDDK71_LIB_WLH.amd64) +PATH_SDK_WINDDK71WLH_LIB.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WLH.ia64) +PATH_SDK_WINDDK71WLH_LIB.x86 ?= $(PATH_SDK_WINDDK71_LIB_WLH.x86) +PATH_SDK_WINDDK71WLH_LIB ?= $(PATH_SDK_WINDDK71WLH_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINDDK71WNET.kmk b/kBuild/sdks/WINDDK71WNET.kmk new file mode 100644 index 0000000..2dbde56 --- /dev/null +++ b/kBuild/sdks/WINDDK71WNET.kmk @@ -0,0 +1,47 @@ +# $Id: WINDDK71WNET.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 7 DDKs, v7.1, Targeting Windows Server 2003 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDK71WNET := The Microsoft Windows 7 DDKs, v7.1, Targeting Windows Server 2003 (KBUILD_TARGET_ARCH). +SDK_WINDDK71WNET_EXTENDS = WINDDK71 +SDK_WINDDK71WNET_DEFS ?= WIN32=100 _WIN32_WINNT=0x0502 WINVER=0x0502 _WIN32_IE=0x0603 NTDDI_VERSION=0x05020100 +SDK_WINDDK71WNET_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK71_LIB_WNET.amd64) +SDK_WINDDK71WNET_LIBPATH.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WNET.ia64) +SDK_WINDDK71WNET_LIBPATH.x86 ?= $(PATH_SDK_WINDDK71_LIB_WNET.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK71 sdk, so use those variables where ever possible +PATH_SDK_WINDDK71WNET_LIB.amd64?= $(PATH_SDK_WINDDK71_LIB_WNET.amd64) +PATH_SDK_WINDDK71WNET_LIB.ia64 ?= $(PATH_SDK_WINDDK71_LIB_WNET.ia64) +PATH_SDK_WINDDK71WNET_LIB.x86 ?= $(PATH_SDK_WINDDK71_LIB_WNET.x86) +PATH_SDK_WINDDK71WNET_LIB ?= $(PATH_SDK_WINDDK71WNET_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINDDK71WXP.kmk b/kBuild/sdks/WINDDK71WXP.kmk new file mode 100644 index 0000000..61814a2 --- /dev/null +++ b/kBuild/sdks/WINDDK71WXP.kmk @@ -0,0 +1,43 @@ +# $Id: WINDDK71WXP.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 7 DDK, v7.1, Targeting Windows XP (x86). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDK71WXP := The Microsoft Windows 7 DDK, v7.1, Targeting Windows XP (x86). +SDK_WINDDK71WXP_EXTENDS = WINDDK71 +SDK_WINDDK71WXP_DEFS ?= WIN32=100 _WIN32_WINNT=0x0501 WINVER=0x0501 _WIN32_IE=0x0603 NTDDI_VERSION=0x05010200 +SDK_WINDDK71WXP_LIBPATH.x86 ?= $(PATH_SDK_WINDDK71_LIB_WXP.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK71 sdk, so use those variables where ever possible +PATH_SDK_WINDDK71WXP_LIB.x86 ?= $(PATH_SDK_WINDDK71_LIB_WXP.x86) +PATH_SDK_WINDDK71WXP_LIB ?= $(PATH_SDK_WINDDK71WXP_LIB.x86) + diff --git a/kBuild/sdks/WINDDK80.kmk b/kBuild/sdks/WINDDK80.kmk new file mode 100644 index 0000000..3fecd3b --- /dev/null +++ b/kBuild/sdks/WINDDK80.kmk @@ -0,0 +1,98 @@ +# $Id: WINDDK80.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 8 DDK. +# Defaults to $(KBUILD_TARGET_ARCH). Base SDK. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDK80 := The Microsoft Windows 8 DDK. \ + Defaults to $(KBUILD_TARGET_ARCH). Base SDK. + +# SDK Specific Properties +ifndef PATH_SDK_WINDDK80 + PATH_SDK_WINDDK80 := $(wildcard $(KBUILD_DEVTOOLS_TRG)/ddk/v8*) + ifeq ($(PATH_SDK_WINDDK80),) + PATH_SDK_WINDDK80 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/ddk/v8*) + endif + ifeq ($(PATH_SDK_WINDDK80),) + PATH_SDK_WINDDK80 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/ddk/v8*) + endif + ifneq ($(PATH_SDK_WINDDK80),) + PATH_SDK_WINDDK80 := $(lastword $(sort $(PATH_SDK_WINDDK80))) + else + $(warning kBuild: PATH_SDK_WINDDK80 couldn't be determined!) + PATH_SDK_WINDDK80 := $(KBUILD_DEVTOOLS)/win.x86/ddk/v8.0/not/found + endif +else + # Resolve any fancy stuff once and for all. + PATH_SDK_WINDDK80 := $(PATH_SDK_WINDDK80) +endif + +PATH_SDK_WINDDK80_INC ?= $(PATH_SDK_WINDDK80)/Include +PATH_SDK_WINDDK80_INC_UM ?= $(PATH_SDK_WINDDK80_INC)/um +PATH_SDK_WINDDK80_INC_KM ?= $(PATH_SDK_WINDDK80_INC)/km +PATH_SDK_WINDDK80_INC_KM_CRT ?= $(PATH_SDK_WINDDK80_INC_KM)/crt +PATH_SDK_WINDDK80_INC_SHARED ?= $(PATH_SDK_WINDDK80_INC)/Shared + +PATH_SDK_WINDDK80_LIB_ROOT ?= $(PATH_SDK_WINDDK80)/Lib +PATH_SDK_WINDDK80_LIB_W8_ROOT ?= $(PATH_SDK_WINDDK80_LIB_ROOT)/win8 +PATH_SDK_WINDDK80_LIB_W7_ROOT ?= $(PATH_SDK_WINDDK80_LIB_ROOT)/win7 +PATH_SDK_WINDDK80_LIB_WLH_ROOT ?= $(PATH_SDK_WINDDK80_LIB_ROOT)/wlh +PATH_SDK_WINDDK80_LIB_WDF_ROOT ?= $(PATH_SDK_WINDDK80_LIB_ROOT)/wdf +PATH_SDK_WINDDK80_LIB_MFC_ROOT ?= $(PATH_SDK_WINDDK80_LIB_ROOT)/Mfc +PATH_SDK_WINDDK80_LIB_ATL_ROOT ?= $(PATH_SDK_WINDDK80_LIB_ROOT)/Atl + +PATH_SDK_WINDDK80_LIB_W8.amd64 ?= $(PATH_SDK_WINDDK80_LIB_W8_ROOT)/km/x64 +PATH_SDK_WINDDK80_LIB_W8.x86 ?= $(PATH_SDK_WINDDK80_LIB_W8_ROOT)/km/x86 +PATH_SDK_WINDDK80_LIB_W8 ?= $(PATH_SDK_WINDDK80_LIB_W8.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK80_LIB_W7.amd64 ?= $(PATH_SDK_WINDDK80_LIB_W7_ROOT)/km/x64 +PATH_SDK_WINDDK80_LIB_W7.x86 ?= $(PATH_SDK_WINDDK80_LIB_W7_ROOT)/km/x86 +PATH_SDK_WINDDK80_LIB_W7 ?= $(PATH_SDK_WINDDK80_LIB_W7.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK80_LIB_WLH.amd64 ?= $(PATH_SDK_WINDDK80_LIB_WLH_ROOT)/km/x64 +PATH_SDK_WINDDK80_LIB_WLH.x86 ?= $(PATH_SDK_WINDDK80_LIB_WLH_ROOT)/km/x86 +PATH_SDK_WINDDK80_LIB_WLH ?= $(PATH_SDK_WINDDK80_LIB_WLH.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINDDK80_LIB.amd64 ?= $(PATH_SDK_WINDDK80_LIB_WLH.amd64) +PATH_SDK_WINDDK80_LIB.x86 ?= $(PATH_SDK_WINDDK80_LIB_WLH.x86) +PATH_SDK_WINDDK80_LIB ?= $(PATH_SDK_WINDDK80_LIB.$(KBUILD_TARGET_ARCH)) + +# General Properties used by kBuild +SDK_WINDDK80_DEFS.amd64 ?= _AMD64_ AMD64 _WIN64 +SDK_WINDDK80_DEFS.x86 ?= _X86_=1 i386=1 STD_CALL +SDK_WINDDK80_INCS ?= \ + $(PATH_SDK_WINDDK80_INC_KM) \ + $(PATH_SDK_WINDDK80_INC_UM) \ + $(PATH_SDK_WINDDK80_INC_SHARED) \ +# The compiler tool(s) will have to select the appropriate crt includes. +SDK_WINDDK80_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK80_LIB_WLH.amd64) +SDK_WINDDK80_LIBPATH.x86 ?= $(PATH_SDK_WINDDK80_LIB_WLH.x86) + diff --git a/kBuild/sdks/WINDDK80W8.kmk b/kBuild/sdks/WINDDK80W8.kmk new file mode 100644 index 0000000..08b571c --- /dev/null +++ b/kBuild/sdks/WINDDK80W8.kmk @@ -0,0 +1,46 @@ +# $Id: WINDDK80W8.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows 8 DDKs, Targeting Windows 8 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDK80W8 := The Microsoft Windows 8 DDKs, Targeting Windows 8 (KBUILD_TARGET_ARCH). +SDK_WINDDK80W8_EXTENDS = WINDDK80 +SDK_WINDDK80W8_DEFS ?= WIN32=100 _WIN32_WINNT=0x0602 WINVER=0x0602 _WIN32_IE=0x0A00 NTDDI_VERSION=0x06020000 \ + KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 +SDK_WINDDK80W8_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK80_LIB_W8.amd64) +SDK_WINDDK80W8_LIBPATH.x86 ?= $(PATH_SDK_WINDDK80_LIB_W8.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK80 sdk, so use those variables where ever possible +PATH_SDK_WINDDK80W8_LIB.amd64?= $(PATH_SDK_WINDDK80_LIB_W8.amd64) +PATH_SDK_WINDDK80W8_LIB.x86 ?= $(PATH_SDK_WINDDK80_LIB_W8.x86) +PATH_SDK_WINDDK80W8_LIB ?= $(PATH_SDK_WINDDK80W8_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINDDKW2K.kmk b/kBuild/sdks/WINDDKW2K.kmk new file mode 100644 index 0000000..318f9a6 --- /dev/null +++ b/kBuild/sdks/WINDDKW2K.kmk @@ -0,0 +1,43 @@ +# $Id: WINDDKW2K.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows Vista and Server 2008 DDKs, Targeting Windows 2000 (x86). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDKW2K := The Microsoft Windows Vista and Server 2008 DDKs, Targeting Windows 2000 (x86). +SDK_WINDDKW2K_EXTENDS = WINDDK +SDK_WINDDKW2K_DEFS ?= WIN32=100 _WIN32_WINNT=0x0500 WINVER=0x0500 _WIN32_IE=0x0501 NTDDI_VERSION=0x05000400 +SDK_WINDDKW2K_LIBPATH.x86 ?= $(PATH_SDK_WINDDK_LIB_W2K.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK sdk, so use those variables where ever possible +PATH_SDK_WINDDKW2K_LIB.x86 ?= $(PATH_SDK_WINDDK_LIB_W2K.x86) +PATH_SDK_WINDDKW2K_LIB ?= $(PATH_SDK_WINDDKW2K_LIB.x86) + diff --git a/kBuild/sdks/WINDDKWLH.kmk b/kBuild/sdks/WINDDKWLH.kmk new file mode 100644 index 0000000..63952a0 --- /dev/null +++ b/kBuild/sdks/WINDDKWLH.kmk @@ -0,0 +1,47 @@ +# $Id: WINDDKWLH.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows Vista and Server 2008 DDKs, Targeting Vista and 2008 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDKWLH := The Microsoft Windows Vista and Server 2008 DDKs, Targeting Vista and 2008 (KBUILD_TARGET_ARCH). +SDK_WINDDKWLH_EXTENDS = WINDDK +SDK_WINDDKWLH_DEFS ?= WIN32=100 _WIN32_WINNT=0x0600 WINVER=0x0600 _WIN32_IE=0x0700 NTDDI_VERSION=0x06000000 KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=005 +SDK_WINDDKWLH_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK_LIB_WLH.amd64) +SDK_WINDDKWLH_LIBPATH.ia64 ?= $(PATH_SDK_WINDDK_LIB_WLH.ia64) +SDK_WINDDKWLH_LIBPATH.x86 ?= $(PATH_SDK_WINDDK_LIB_WLH.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK sdk, so use those variables where ever possible +PATH_SDK_WINDDKWLH_LIB.amd64?= $(PATH_SDK_WINDDK_LIB_WLH.amd64) +PATH_SDK_WINDDKWLH_LIB.ia64 ?= $(PATH_SDK_WINDDK_LIB_WLH.ia64) +PATH_SDK_WINDDKWLH_LIB.x86 ?= $(PATH_SDK_WINDDK_LIB_WLH.x86) +PATH_SDK_WINDDKWLH_LIB ?= $(PATH_SDK_WINDDKWLH_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINDDKWNET.kmk b/kBuild/sdks/WINDDKWNET.kmk new file mode 100644 index 0000000..f4b092e --- /dev/null +++ b/kBuild/sdks/WINDDKWNET.kmk @@ -0,0 +1,47 @@ +# $Id: WINDDKWNET.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows Vista and Server 2008 DDKs, Targeting Windows Server 2003 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDKWNET := The Microsoft Windows Vista and Server 2008 DDKs, Targeting Windows Server 2003 (KBUILD_TARGET_ARCH). +SDK_WINDDKWNET_EXTENDS = WINDDK +SDK_WINDDKWNET_DEFS ?= WIN32=100 _WIN32_WINNT=0x0502 WINVER=0x0502 _WIN32_IE=0x0603 NTDDI_VERSION=0x05020100 +SDK_WINDDKWNET_LIBPATH.amd64 ?= $(PATH_SDK_WINDDK_LIB_WNET.amd64) +SDK_WINDDKWNET_LIBPATH.ia64 ?= $(PATH_SDK_WINDDK_LIB_WNET.ia64) +SDK_WINDDKWNET_LIBPATH.x86 ?= $(PATH_SDK_WINDDK_LIB_WNET.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK sdk, so use those variables where ever possible +PATH_SDK_WINDDKWNET_LIB.amd64?= $(PATH_SDK_WINDDK_LIB_WNET.amd64) +PATH_SDK_WINDDKWNET_LIB.ia64 ?= $(PATH_SDK_WINDDK_LIB_WNET.ia64) +PATH_SDK_WINDDKWNET_LIB.x86 ?= $(PATH_SDK_WINDDK_LIB_WNET.x86) +PATH_SDK_WINDDKWNET_LIB ?= $(PATH_SDK_WINDDKWNET_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINDDKWXP.kmk b/kBuild/sdks/WINDDKWXP.kmk new file mode 100644 index 0000000..8df29d5 --- /dev/null +++ b/kBuild/sdks/WINDDKWXP.kmk @@ -0,0 +1,43 @@ +# $Id: WINDDKWXP.kmk 3121 2017-10-31 10:58:59Z bird $ +## @file +# kBuild SDK - The Microsoft Windows Vista and Server 2008 DDKs, Targeting Windows XP (x86). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINDDKWXP := The Microsoft Windows Vista and Server 2008 DDKs, Targeting Windows XP (x86). +SDK_WINDDKWXP_EXTENDS = WINDDK +SDK_WINDDKWXP_DEFS ?= WIN32=100 _WIN32_WINNT=0x0501 WINVER=0x0501 _WIN32_IE=0x0603 NTDDI_VERSION=0x05010200 +SDK_WINDDKWXP_LIBPATH.x86 ?= $(PATH_SDK_WINDDK_LIB_WXP.x86) + +# SDK Specific Properties. +# Note! extends the WINDDK sdk, so use those variables where ever possible +PATH_SDK_WINDDKWXP_LIB.x86 ?= $(PATH_SDK_WINDDK_LIB_WXP.x86) +PATH_SDK_WINDDKWXP_LIB ?= $(PATH_SDK_WINDDKWXP_LIB.x86) + diff --git a/kBuild/sdks/WINPSDK.kmk b/kBuild/sdks/WINPSDK.kmk new file mode 100644 index 0000000..9f24a38 --- /dev/null +++ b/kBuild/sdks/WINPSDK.kmk @@ -0,0 +1,161 @@ +# $Id: WINPSDK.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Windows Platform SDK, targeting (KBUILD_TARGET). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINPSDK := The Windows Platform SDK, targeting (KBUILD_TARGET). + +# SDK Specific Properties +ifndef PATH_SDK_WINPSDK + PATH_SDK_WINPSDK := $(wildcard $(KBUILD_DEVTOOLS_BLD)/sdk/2*) + ifeq ($(PATH_SDK_WINPSDK),) + PATH_SDK_WINPSDK := $(wildcard $(KBUILD_DEVTOOLS_TRG)/sdk/2*) + endif + ifeq ($(PATH_SDK_WINPSDK),) + PATH_SDK_WINPSDK := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/sdk/2*) + endif + ifeq ($(PATH_SDK_WINPSDK),) + PATH_SDK_WINPSDK := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/sdk/2*) + endif + ifneq ($(PATH_SDK_WINPSDK),) + PATH_SDK_WINPSDK := $(lastword $(sort $(PATH_SDK_WINPSDK))) + else + $(warning kBuild: PATH_SDK_WINPSDK couldn't be determined!) + PATH_SDK_WINPSDK := $(KBUILD_DEVTOOLS_BLD)/sdk/not/found + endif +else + PATH_SDK_WINPSDK := $(PATH_SDK_WINPSDK) +endif + +ifndef PATH_SDK_WINPSDK_INC +PATH_SDK_WINPSDK_INC := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WINPSDK)/Include) +endif + +ifndef PATH_SDK_WINPSDK_LIB.x86 +PATH_SDK_WINPSDK_LIB.x86 := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Ll][Ii][Bb]) $(PATH_SDK_WINPSDK)/Lib) +endif +ifndef PATH_SDK_WINPSDK_LIB.amd64 +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) +endif +ifndef PATH_SDK_WINPSDK_LIB.ia64 +PATH_SDK_WINPSDK_LIB.ia64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Ll][Ii][Bb]/[Ii][Aa]64) $(PATH_SDK_WINPSDK)/Lib/IA64) +endif +PATH_SDK_WINPSDK_LIB ?= $(PATH_SDK_WINPSDK_LIB.$(KBUILD_TARGET_ARCH)) + +ifndef PATH_SDK_WINPSDK_BIN +PATH_SDK_WINPSDK_BIN := $(firstword $(wildcard $(PATH_SDK_WINPSDK)/[Bb][Ii][Nn]) $(PATH_SDK_WINPSDK)/Bin) +endif +ifndef PATH_SDK_WINPSDK_BIN_AMD64 +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) +endif +ifndef PATH_SDK_WINPSDK_BIN_IA64 +PATH_SDK_WINPSDK_BIN_IA64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK_BIN)/[Ww][Ii][Nn]64) $(PATH_SDK_WINPSDK_BIN)/win64) +endif + + +# General Properties used by kBuild +SDK_WINPSDK_INCS ?= $(PATH_SDK_WINPSDK_INC) +SDK_WINPSDK_LIBPATH.x86 ?= $(PATH_SDK_WINPSDK_LIB.x86) +SDK_WINPSDK_LIBPATH.amd64 ?= $(PATH_SDK_WINPSDK_LIB.amd64) +SDK_WINPSDK_LIBPATH.ia64 ?= $(PATH_SDK_WINPSDK_LIB.ia64) +SDK_WINPSDK_LIBS.x86 ?= \ + $(PATH_SDK_WINPSDK_LIB.x86)/Kernel32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/User32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/Gdi32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/AdvAPI32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/shell32.lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/ShLwApi.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/SetupAPI.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/Uuid.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/Version.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/WS2_32.Lib \ + \ + $(PATH_SDK_WINPSDK_LIB.x86)/Ole32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/OleAut32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/OleDlg.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/RpcRT4.Lib \ + \ + $(PATH_SDK_WINPSDK_LIB.x86)/DbgHelp.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/ImageHlp.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/IPHlpApi.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/ComCtl32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/ComDlg32.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/WinSpool.Lib \ + $(PATH_SDK_WINPSDK_LIB.x86)/WinMM.Lib +SDK_WINPSDK_LIBS.amd64 ?= \ + $(PATH_SDK_WINPSDK_LIB.amd64)/Kernel32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/User32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/Gdi32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/AdvAPI32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/Shell32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/ShLwApi.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/SetupAPI.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/Uuid.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/Version.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/WS2_32.Lib \ + \ + $(PATH_SDK_WINPSDK_LIB.amd64)/Ole32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/OleAut32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/OleDlg.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/RpcRT4.Lib \ + \ + $(PATH_SDK_WINPSDK_LIB.amd64)/DbgHelp.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/ImageHlp.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/IPHlpApi.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/ComCtl32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/ComDlg32.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/WinSpool.Lib \ + $(PATH_SDK_WINPSDK_LIB.amd64)/WinMM.Lib +SDK_WINPSDK_LIBS.ia64 ?= \ + $(PATH_SDK_WINPSDK_LIB.ia64)/Kernel32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/User32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/Gdi32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/AdvAPI32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/Shell32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/ShLwApi.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/SetupAPI.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/Uuid.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/Version.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/WS2_32.Lib \ + \ + $(PATH_SDK_WINPSDK_LIB.ia64)/Ole32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/OleAut32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/OleDlg.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/RpcRT4.Lib \ + \ + $(PATH_SDK_WINPSDK_LIB.ia64)/DbgHelp.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/ImageHlp.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/IPHlpApi.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/ComCtl32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/ComDlg32.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/WinSpool.Lib \ + $(PATH_SDK_WINPSDK_LIB.ia64)/WinMM.Lib + diff --git a/kBuild/sdks/WINPSDK71.kmk b/kBuild/sdks/WINPSDK71.kmk new file mode 100644 index 0000000..1330f56 --- /dev/null +++ b/kBuild/sdks/WINPSDK71.kmk @@ -0,0 +1,161 @@ +# $Id: WINPSDK71.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Windows Platform SDK v7.1, targeting (KBUILD_TARGET). +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINPSDK71 := The Windows Platform SDK v7.1, targeting (KBUILD_TARGET). + +# SDK Specific Properties +ifndef PATH_SDK_WINPSDK71 + PATH_SDK_WINPSDK71 := $(wildcard $(KBUILD_DEVTOOLS_BLD)/sdk/v7.1*) + ifeq ($(PATH_SDK_WINPSDK71),) + PATH_SDK_WINPSDK71 := $(wildcard $(KBUILD_DEVTOOLS_TRG)/sdk/v7.1*) + endif + ifeq ($(PATH_SDK_WINPSDK71),) + PATH_SDK_WINPSDK71 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/sdk/v7.1*) + endif + ifeq ($(PATH_SDK_WINPSDK71),) + PATH_SDK_WINPSDK71 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/sdk/v7.1*) + endif + ifneq ($(PATH_SDK_WINPSDK71),) + PATH_SDK_WINPSDK71 := $(lastword $(sort $(PATH_SDK_WINPSDK71))) + else + $(warning kBuild: PATH_SDK_WINPSDK71 couldn't be determined!) + PATH_SDK_WINPSDK71 := $(KBUILD_DEVTOOLS_BLD)/sdk/v7.1-not-found + endif +else + PATH_SDK_WINPSDK71 := $(PATH_SDK_WINPSDK71) +endif + +ifndef PATH_SDK_WINPSDK71_INC +PATH_SDK_WINPSDK71_INC := $(firstword $(wildcard $(PATH_SDK_WINPSDK71)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WINPSDK71)/Include) +endif + +ifndef PATH_SDK_WINPSDK71_LIB.x86 +PATH_SDK_WINPSDK71_LIB.x86 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71)/[Ll][Ii][Bb]) $(PATH_SDK_WINPSDK71)/Lib) +endif +ifndef PATH_SDK_WINPSDK71_LIB.amd64 +PATH_SDK_WINPSDK71_LIB.amd64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71)/[Ll][Ii][Bb]/[Aa][Mm][Dd]64 $(PATH_SDK_WINPSDK71)/[Ll][Ii][Bb]/[xX]64) $(PATH_SDK_WINPSDK71)/Lib/AMD64) +endif +ifndef PATH_SDK_WINPSDK71_LIB.ia64 +PATH_SDK_WINPSDK71_LIB.ia64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71)/[Ll][Ii][Bb]/[Ii][Aa]64) $(PATH_SDK_WINPSDK71)/Lib/IA64) +endif +PATH_SDK_WINPSDK71_LIB ?= $(PATH_SDK_WINPSDK71_LIB.$(KBUILD_TARGET_ARCH)) + +ifndef PATH_SDK_WINPSDK71_BIN +PATH_SDK_WINPSDK71_BIN := $(firstword $(wildcard $(PATH_SDK_WINPSDK71)/[Bb][Ii][Nn]) $(PATH_SDK_WINPSDK71)/Bin) +endif +ifndef PATH_SDK_WINPSDK71_BIN_AMD64 +PATH_SDK_WINPSDK71_BIN_AMD64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71_BIN)/[Ww][Ii][Nn]64/[Xx]86/[Aa][Mm][Dd]64 $(PATH_SDK_WINPSDK71_BIN)/[Ww][Ii][Nn]64/[Xx]86) $(PATH_SDK_WINPSDK71_BIN)/win64/AMD64) +endif +ifndef PATH_SDK_WINPSDK71_BIN_IA64 +PATH_SDK_WINPSDK71_BIN_IA64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71_BIN)/[Ww][Ii][Nn]64) $(PATH_SDK_WINPSDK71_BIN)/win64) +endif + + +# General Properties used by kBuild +SDK_WINPSDK71_INCS ?= $(PATH_SDK_WINPSDK71_INC) +SDK_WINPSDK71_LIBPATH.x86 ?= $(PATH_SDK_WINPSDK71_LIB.x86) +SDK_WINPSDK71_LIBPATH.amd64 ?= $(PATH_SDK_WINPSDK71_LIB.amd64) +SDK_WINPSDK71_LIBPATH.ia64 ?= $(PATH_SDK_WINPSDK71_LIB.ia64) +SDK_WINPSDK71_LIBS.x86 ?= \ + $(PATH_SDK_WINPSDK71_LIB.x86)/Kernel32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/User32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/Gdi32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/AdvAPI32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/shell32.lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/ShLwApi.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/SetupAPI.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/Uuid.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/Version.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/WS2_32.Lib \ + \ + $(PATH_SDK_WINPSDK71_LIB.x86)/Ole32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/OleAut32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/OleDlg.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/RpcRT4.Lib \ + \ + $(PATH_SDK_WINPSDK71_LIB.x86)/DbgHelp.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/ImageHlp.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/IPHlpApi.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/ComCtl32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/ComDlg32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/WinSpool.Lib \ + $(PATH_SDK_WINPSDK71_LIB.x86)/WinMM.Lib +SDK_WINPSDK71_LIBS.amd64 ?= \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/Kernel32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/User32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/Gdi32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/AdvAPI32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/Shell32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/ShLwApi.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/SetupAPI.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/Uuid.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/Version.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/WS2_32.Lib \ + \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/Ole32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/OleAut32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/OleDlg.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/RpcRT4.Lib \ + \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/DbgHelp.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/ImageHlp.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/IPHlpApi.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/ComCtl32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/ComDlg32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/WinSpool.Lib \ + $(PATH_SDK_WINPSDK71_LIB.amd64)/WinMM.Lib +SDK_WINPSDK71_LIBS.ia64 ?= \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/Kernel32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/User32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/Gdi32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/AdvAPI32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/Shell32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/ShLwApi.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/SetupAPI.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/Uuid.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/Version.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/WS2_32.Lib \ + \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/Ole32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/OleAut32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/OleDlg.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/RpcRT4.Lib \ + \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/DbgHelp.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/ImageHlp.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/IPHlpApi.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/ComCtl32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/ComDlg32.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/WinSpool.Lib \ + $(PATH_SDK_WINPSDK71_LIB.ia64)/WinMM.Lib + diff --git a/kBuild/sdks/WINPSDK71INCS.kmk b/kBuild/sdks/WINPSDK71INCS.kmk new file mode 100644 index 0000000..3ab712d --- /dev/null +++ b/kBuild/sdks/WINPSDK71INCS.kmk @@ -0,0 +1,90 @@ +# $Id: WINPSDK71INCS.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Windows Platform SDK v7.1, targeting (KBUILD_TARGET) but +# without any libraries or LIBPATH properties. +# Basically for finding specstrings.h when using the DDK. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINPSDK71INCS := The Windows Platform SDK v7.1, targeting (KBUILD_TARGET) but \ + without any library or LIBPATH properties. \ + Basically for finding specstrings.h when using the DDK. + +# SDK Specific Properties +ifndef PATH_SDK_WINPSDK71INCS + ifdef PATH_SDK_WINPSDK71 + PATH_SDK_WINPSDK71INCS := $(PATH_SDK_WINPSDK71) + else + PATH_SDK_WINPSDK71INCS := $(wildcard $(KBUILD_DEVTOOLS_BLD)/sdk/v7.1*) + ifeq ($(PATH_SDK_WINPSDK71INCS),) + PATH_SDK_WINPSDK71INCS := $(wildcard $(KBUILD_DEVTOOLS_TRG)/sdk/v7.1*) + endif + ifeq ($(PATH_SDK_WINPSDK71INCS),) + PATH_SDK_WINPSDK71INCS := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/sdk/v7.1*) + endif + ifeq ($(PATH_SDK_WINPSDK71INCS),) + PATH_SDK_WINPSDK71INCS := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/sdk/v7.1*) + endif + ifneq ($(PATH_SDK_WINPSDK71INCS),) + PATH_SDK_WINPSDK71INCS := $(lastword $(sort $(PATH_SDK_WINPSDK71INCS))) + else + $(warning kBuild: PATH_SDK_WINPSDK71INCS couldn't be determined!) + PATH_SDK_WINPSDK71INCS := $(KBUILD_DEVTOOLS_BLD)/sdk/v7.1-not-found + endif + endif +else + PATH_SDK_WINPSDK71INCS := $(PATH_SDK_WINPSDK71INCS) +endif +ifndef PATH_SDK_WINPSDK71INCS_INC +PATH_SDK_WINPSDK71INCS_INC := $(firstword $(wildcard $(PATH_SDK_WINPSDK71INCS)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WINPSDK71INCS)/Include) +endif + +ifndef PATH_SDK_WINPSDK71INCS_LIB.x86 +PATH_SDK_WINPSDK71INCS_LIB.x86 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71INCS)/[Ll][Ii][Bb]) $(PATH_SDK_WINPSDK71INCS)/Lib) +endif +ifndef PATH_SDK_WINPSDK71INCS_LIB.amd64 +PATH_SDK_WINPSDK71INCS_LIB.amd64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71INCS)/[Ll][Ii][Bb]/[Aa][Mm][Dd]64) $(PATH_SDK_WINPSDK71INCS)/Lib/AMD64) +endif +PATH_SDK_WINPSDK71INCS_LIB ?= $(PATH_SDK_WINPSDK71INCS_LIB.$(KBUILD_TARGET_ARCH)) + +ifndef PATH_SDK_WINPSDK71INCS_BIN +PATH_SDK_WINPSDK71INCS_BIN := $(firstword $(wildcard $(PATH_SDK_WINPSDK71INCS)/[Bb][Ii][Nn]) $(PATH_SDK_WINPSDK71INCS)/Bin) +endif +ifndef PATH_SDK_WINPSDK71INCS_BIN_AMD64 +PATH_SDK_WINPSDK71INCS_BIN_AMD64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71INCS_BIN)/[Ww][Ii][Nn]64/[Xx]86/[Aa][Mm][Dd]64) $(PATH_SDK_WINPSDK71INCS_BIN)/win64/AMD64) +endif +ifndef PATH_SDK_WINPSDK71INCS_BIN_IA64 +PATH_SDK_WINPSDK71INCS_BIN_IA64 := $(firstword $(wildcard $(PATH_SDK_WINPSDK71INCS_BIN)/[Ww][Ii][Nn]64) $(PATH_SDK_WINPSDK71INCS_BIN)/win64) +endif + + +# General Properties used by kBuild +SDK_WINPSDK71INCS_INCS ?= $(PATH_SDK_WINPSDK71INCS_INC) + diff --git a/kBuild/sdks/WINPSDKINCS.kmk b/kBuild/sdks/WINPSDKINCS.kmk new file mode 100644 index 0000000..e7c8b69 --- /dev/null +++ b/kBuild/sdks/WINPSDKINCS.kmk @@ -0,0 +1,93 @@ +# $Id: WINPSDKINCS.kmk 3418 2020-08-21 11:02:13Z bird $ +## @file +# kBuild SDK - The Windows Platform SDK, targeting (KBUILD_TARGET) but +# without any libraries or LIBPATH properties. +# Basically for finding specstrings.h when using the DDK. +# + +# +# Copyright (c) 2006-2017 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINPSDKINCS := The Windows Platform SDK, targeting (KBUILD_TARGET) but \ + without any library or LIBPATH properties. \ + Basically for finding specstrings.h when using the DDK. + +# SDK Specific Properties +ifndef PATH_SDK_WINPSDKINCS + ifdef PATH_SDK_WINPSDK + PATH_SDK_WINPSDKINCS := $(PATH_SDK_WINPSDK) + else + PATH_SDK_WINPSDKINCS := $(wildcard $(KBUILD_DEVTOOLS_BLD)/sdk/2*) + ifeq ($(PATH_SDK_WINPSDKINCS),) + PATH_SDK_WINPSDKINCS := $(wildcard $(KBUILD_DEVTOOLS_TRG)/sdk/2*) + endif + ifeq ($(PATH_SDK_WINPSDKINCS),) + PATH_SDK_WINPSDKINCS := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/sdk/2*) + endif + ifeq ($(PATH_SDK_WINPSDKINCS),) + PATH_SDK_WINPSDKINCS := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/sdk/2*) + endif + ifeq ($(PATH_SDK_WINPSDKINCS),) + PATH_SDK_WINPSDKINCS := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/sdk/2*) + endif + ifneq ($(PATH_SDK_WINPSDKINCS),) + PATH_SDK_WINPSDKINCS := $(lastword $(sort $(PATH_SDK_WINPSDKINCS))) + else + $(warning kBuild: PATH_SDK_WINPSDKINCS couldn't be determined!) + PATH_SDK_WINPSDKINCS := $(KBUILD_DEVTOOLS_BLD)/sdk/not/found + endif + endif +else + PATH_SDK_WINPSDKINCS := $(PATH_SDK_WINPSDKINCS) +endif +ifndef PATH_SDK_WINPSDKINCS_INC +PATH_SDK_WINPSDKINCS_INC := $(firstword $(wildcard $(PATH_SDK_WINPSDKINCS)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WINPSDKINCS)/Include) +endif + +ifndef PATH_SDK_WINPSDKINCS_LIB.x86 +PATH_SDK_WINPSDKINCS_LIB.x86 := $(firstword $(wildcard $(PATH_SDK_WINPSDKINCS)/[Ll][Ii][Bb]) $(PATH_SDK_WINPSDKINCS)/Lib) +endif +ifndef PATH_SDK_WINPSDKINCS_LIB.amd64 +PATH_SDK_WINPSDKINCS_LIB.amd64 := $(firstword $(wildcard $(PATH_SDK_WINPSDKINCS)/[Ll][Ii][Bb]/[Aa][Mm][Dd]64) $(PATH_SDK_WINPSDKINCS)/Lib/AMD64) +endif +PATH_SDK_WINPSDKINCS_LIB ?= $(PATH_SDK_WINPSDKINCS_LIB.$(KBUILD_TARGET_ARCH)) + +ifndef PATH_SDK_WINPSDKINCS_BIN +PATH_SDK_WINPSDKINCS_BIN := $(firstword $(wildcard $(PATH_SDK_WINPSDKINCS)/[Bb][Ii][Nn]) $(PATH_SDK_WINPSDKINCS)/Bin) +endif +ifndef PATH_SDK_WINPSDKINCS_BIN_AMD64 +PATH_SDK_WINPSDKINCS_BIN_AMD64 := $(firstword $(wildcard $(PATH_SDK_WINPSDKINCS_BIN)/[Ww][Ii][Nn]64/[Xx]86/[Aa][Mm][Dd]64) $(PATH_SDK_WINPSDKINCS_BIN)/win64/AMD64) +endif +ifndef PATH_SDK_WINPSDKINCS_BIN_IA64 +PATH_SDK_WINPSDKINCS_BIN_IA64 := $(firstword $(wildcard $(PATH_SDK_WINPSDKINCS_BIN)/[Ww][Ii][Nn]64) $(PATH_SDK_WINPSDKINCS_BIN)/win64) +endif + + +# General Properties used by kBuild +SDK_WINPSDKINCS_INCS ?= $(PATH_SDK_WINPSDKINCS_INC) + diff --git a/kBuild/sdks/WINSDK10-KM-W7.kmk b/kBuild/sdks/WINSDK10-KM-W7.kmk new file mode 100644 index 0000000..22e70c0 --- /dev/null +++ b/kBuild/sdks/WINSDK10-KM-W7.kmk @@ -0,0 +1,51 @@ +# $Id: WINSDK10-KM-W7.kmk 3508 2021-12-16 11:05:20Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, kernel mode, Targeting Windows 7 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2021 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10-KM.kmk +endif + +SDK_WINSDK10-KM-W7 := The Microsoft Windows 10 SDK, kernel mode, Targeting Windows 7 (KBUILD_TARGET_ARCH). +SDK_WINSDK10-KM-W7_EXTENDS := WINSDK10-KM +SDK_WINSDK10-KM-W7_DEFS ?= WIN32=100 _WIN32_WINNT=0x0601 WINVER=0x0601 _WIN32_IE=0x0800 NTDDI_VERSION=0x06010000 \ + KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=007 +SDK_WINSDK10-KM-W7_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_KM_LIB_W7.x86) +SDK_WINSDK10-KM-W7_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_KM_LIB_W7.amd64) +SDK_WINSDK10-KM-W7_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_KM_LIB_W7.arm32) + +# SDK Specific Properties. +PATH_SDK_WINSDK10-KM-W7_LIB.x86 ?= $(PATH_SDK_WINSDK10_KM_LIB_W7.x86) +PATH_SDK_WINSDK10-KM-W7_LIB.amd64?= $(PATH_SDK_WINSDK10_KM_LIB_W7.amd64) +PATH_SDK_WINSDK10-KM-W7_LIB.arm32?= $(PATH_SDK_WINSDK10_KM_LIB_W7.arm32) +PATH_SDK_WINSDK10-KM-W7_LIB ?= $(PATH_SDK_WINSDK10-KM-W7_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINSDK10-KM-W8.kmk b/kBuild/sdks/WINSDK10-KM-W8.kmk new file mode 100644 index 0000000..b6d9ea3 --- /dev/null +++ b/kBuild/sdks/WINSDK10-KM-W8.kmk @@ -0,0 +1,51 @@ +# $Id: WINSDK10-KM-W8.kmk 3508 2021-12-16 11:05:20Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, kernel mode, Targeting Windows 8 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2021 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10-KM.kmk +endif + +SDK_WINSDK10-KM-W8 := The Microsoft Windows 10 SDK, kernel mode, Targeting Windows 8 (KBUILD_TARGET_ARCH). +SDK_WINSDK10-KM-W8_EXTENDS := WINSDK10-KM +SDK_WINSDK10-KM-W8_DEFS ?= WIN32=100 _WIN32_WINNT=0x0602 WINVER=0x0602 _WIN32_IE=0x0A00 NTDDI_VERSION=0x06020000 \ + KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=011 +SDK_WINSDK10-KM-W8_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_KM_LIB_W8.x86) +SDK_WINSDK10-KM-W8_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_KM_LIB_W8.amd64) +SDK_WINSDK10-KM-W8_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_KM_LIB_W8.arm32) + +# SDK Specific Properties. +PATH_SDK_WINSDK10-KM-W8_LIB.x86 ?= $(PATH_SDK_WINSDK10_KM_LIB_W8.x86) +PATH_SDK_WINSDK10-KM-W8_LIB.amd64?= $(PATH_SDK_WINSDK10_KM_LIB_W8.amd64) +PATH_SDK_WINSDK10-KM-W8_LIB.arm32?= $(PATH_SDK_WINSDK10_KM_LIB_W8.arm32) +PATH_SDK_WINSDK10-KM-W8_LIB ?= $(PATH_SDK_WINSDK10-KM-W8_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINSDK10-KM-W81.kmk b/kBuild/sdks/WINSDK10-KM-W81.kmk new file mode 100644 index 0000000..c2538b8 --- /dev/null +++ b/kBuild/sdks/WINSDK10-KM-W81.kmk @@ -0,0 +1,51 @@ +# $Id: WINSDK10-KM-W81.kmk 3508 2021-12-16 11:05:20Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, kernel mode, Targeting Windows 8.1 (KBUILD_TARGET_ARCH). +# + +# +# Copyright (c) 2006-2021 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10-KM.kmk +endif + +SDK_WINSDK10-KM-W81 := The Microsoft Windows 10 SDK, kernel mode, Targeting Windows 8.1 (KBUILD_TARGET_ARCH). +SDK_WINSDK10-KM-W81_EXTENDS := WINSDK10-KM +SDK_WINSDK10-KM-W81_DEFS ?= WIN32=100 _WIN32_WINNT=0x0603 WINVER=0x0603 _WIN32_IE=0x0A00 NTDDI_VERSION=0x06030000 \ + KMDF_MAJOR_VERSION=01 KMDF_MINOR_VERSION=013 +SDK_WINSDK10-KM-W81_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_KM_LIB_W81.x86) +SDK_WINSDK10-KM-W81_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_KM_LIB_W81.amd64) +SDK_WINSDK10-KM-W81_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_KM_LIB_W81.arm32) + +# SDK Specific Properties. +PATH_SDK_WINSDK10-KM-W81_LIB.x86 ?= $(PATH_SDK_WINSDK10_KM_LIB_W81.x86) +PATH_SDK_WINSDK10-KM-W81_LIB.amd64?= $(PATH_SDK_WINSDK10_KM_LIB_W81.amd64) +PATH_SDK_WINSDK10-KM-W81_LIB.arm32?= $(PATH_SDK_WINSDK10_KM_LIB_W81.arm32) +PATH_SDK_WINSDK10-KM-W81_LIB ?= $(PATH_SDK_WINSDK10-KM-W81_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINSDK10-KM.kmk b/kBuild/sdks/WINSDK10-KM.kmk new file mode 100644 index 0000000..f5f8484 --- /dev/null +++ b/kBuild/sdks/WINSDK10-KM.kmk @@ -0,0 +1,59 @@ +# $Id: WINSDK10-KM.kmk 3507 2021-12-16 01:35:08Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, kernel mode. +# + +# +# Copyright (c) 2006-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10.kmk +endif + +SDK_WINSDK10-KM := The Microsoft Windows 10 SDK, kernel mode. +SDK_WINSDK10-KM_DEFS.amd64 ?= _AMD64_ AMD64 _WIN64 +SDK_WINSDK10-KM_DEFS.x86 ?= _X86_=1 i386=1 STD_CALL +SDK_WINSDK10-KM_DEFS.arm32 ?= #?? +SDK_WINSDK10-KM_DEFS.arm64 ?= #?? +SDK_WINSDK10-KM_INCS ?= \ + $(PATH_SDK_WINSDK10_KM_INC) \ + $(PATH_SDK_WINSDK10_SHARED_INC) +SDK_WINSDK10-KM_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_KM_LIB.x86) +SDK_WINSDK10-KM_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_KM_LIB.amd64) +SDK_WINSDK10-KM_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_KM_LIB.arm32) +SDK_WINSDK10-KM_LIBPATH.arm64 ?= $(PATH_SDK_WINSDK10_KM_LIB.arm64) + +# Path variables for smoothing the transistion from older PSDKs. +PATH_SDK_WINSDK10_KM = $(PATH_SDK_WINSDK10) + +PATH_SDK_WINSDK10-KM_LIB.x86 = $(PATH_SDK_WINSDK10_KM_LIB.x86) +PATH_SDK_WINSDK10-KM_LIB.amd64 = $(PATH_SDK_WINSDK10_KM_LIB.amd64) +PATH_SDK_WINSDK10-KM_LIB.arm32 = $(PATH_SDK_WINSDK10_KM_LIB.arm32) +PATH_SDK_WINSDK10-KM_LIB.arm64 = $(PATH_SDK_WINSDK10_KM_LIB.arm64) +PATH_SDK_WINSDK10-KM_LIB ?= $(PATH_SDK_WINSDK10_KM_LIB.$(KBUILD_TARGET_ARCH)) + diff --git a/kBuild/sdks/WINSDK10-UCRT-INCS.kmk b/kBuild/sdks/WINSDK10-UCRT-INCS.kmk new file mode 100644 index 0000000..682ce07 --- /dev/null +++ b/kBuild/sdks/WINSDK10-UCRT-INCS.kmk @@ -0,0 +1,40 @@ +# $Id: WINSDK10-UCRT-INCS.kmk 3320 2020-04-16 22:19:22Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, Universal CRT, includes only. +# + +# +# Copyright (c) 2006-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10.kmk +endif + +SDK_WINSDK10-UCRT-INCS := The Microsoft Windows 10 SDK, Universal CRT, only includes. +SDK_WINSDK10-UCRT-INCS_INCS ?= $(PATH_SDK_WINSDK10_UCRT_INC) + diff --git a/kBuild/sdks/WINSDK10-UCRT-STATIC.kmk b/kBuild/sdks/WINSDK10-UCRT-STATIC.kmk new file mode 100644 index 0000000..d1ab310 --- /dev/null +++ b/kBuild/sdks/WINSDK10-UCRT-STATIC.kmk @@ -0,0 +1,56 @@ +# $Id: WINSDK10-UCRT-STATIC.kmk 3320 2020-04-16 22:19:22Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, Universal CRT, DLL linking. +# + +# +# Copyright (c) 2006-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10.kmk +endif + +SDK_WINSDK10-UCRT-STATIC := The Microsoft Windows 10 SDK, Universal CRT, static linking. +SDK_WINSDK10-UCRT-STATIC_INCS ?= $(PATH_SDK_WINSDK10_UCRT_INC) +SDK_WINSDK10-UCRT-STATIC_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.x86) +SDK_WINSDK10-UCRT-STATIC_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.amd64) +SDK_WINSDK10-UCRT-STATIC_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.arm32) +SDK_WINSDK10-UCRT-STATIC_LIBPATH.arm64 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.arm64) +ifndef SDK_WINSDK10-UCRT-STATIC_LIBS.amd64 +SDK_WINSDK10-UCRT-STATIC_LIBS.amd64 := $(PATH_SDK_WINSDK10_UCRT_LIB.amd64)/$(SDK_WINSDK10_UCRT_STATIC_NAME) +endif +ifndef SDK_WINSDK10-UCRT-STATIC_LIBS.arm32 +SDK_WINSDK10-UCRT-STATIC_LIBS.arm32 := $(PATH_SDK_WINSDK10_UCRT_LIB.arm32)/$(SDK_WINSDK10_UCRT_STATIC_NAME) +endif +ifndef SDK_WINSDK10-UCRT-STATIC_LIBS.arm64 +SDK_WINSDK10-UCRT-STATIC_LIBS.arm64 := $(PATH_SDK_WINSDK10_UCRT_LIB.arm32)/$(SDK_WINSDK10_UCRT_STATIC_NAME) +endif +ifndef SDK_WINSDK10-UCRT-STATIC_LIBS.x86 +SDK_WINSDK10-UCRT-STATIC_LIBS.x86 := $(PATH_SDK_WINSDK10_UCRT_LIB.x86)/$(SDK_WINSDK10_UCRT_STATIC_NAME) +endif + diff --git a/kBuild/sdks/WINSDK10-UCRT.kmk b/kBuild/sdks/WINSDK10-UCRT.kmk new file mode 100644 index 0000000..f1d0483 --- /dev/null +++ b/kBuild/sdks/WINSDK10-UCRT.kmk @@ -0,0 +1,56 @@ +# $Id: WINSDK10-UCRT.kmk 3320 2020-04-16 22:19:22Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, Universal CRT, DLL linking. +# + +# +# Copyright (c) 2006-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10.kmk +endif + +SDK_WINSDK10-UCRT := The Microsoft Windows 10 SDK, Universal CRT, DLL linking. +SDK_WINSDK10-UCRT_INCS ?= $(PATH_SDK_WINSDK10_UCRT_INC) +SDK_WINSDK10-UCRT_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.x86) +SDK_WINSDK10-UCRT_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.amd64) +SDK_WINSDK10-UCRT_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.arm32) +SDK_WINSDK10-UCRT_LIBPATH.arm64 ?= $(PATH_SDK_WINSDK10_UCRT_LIB.arm64) +ifndef SDK_WINSDK10-UCRT_LIBS.amd64 +SDK_WINSDK10-UCRT_LIBS.amd64 := $(PATH_SDK_WINSDK10_UCRT_LIB.amd64)/$(SDK_WINSDK10_UCRT_IMPLIB_NAME) +endif +ifndef SDK_WINSDK10-UCRT_LIBS.arm32 +SDK_WINSDK10-UCRT_LIBS.arm32 := $(PATH_SDK_WINSDK10_UCRT_LIB.arm32)/$(SDK_WINSDK10_UCRT_IMPLIB_NAME) +endif +ifndef SDK_WINSDK10-UCRT_LIBS.arm64 +SDK_WINSDK10-UCRT_LIBS.arm64 := $(PATH_SDK_WINSDK10_UCRT_LIB.arm32)/$(SDK_WINSDK10_UCRT_IMPLIB_NAME) +endif +ifndef SDK_WINSDK10-UCRT_LIBS.x86 +SDK_WINSDK10-UCRT_LIBS.x86 := $(PATH_SDK_WINSDK10_UCRT_LIB.x86)/$(SDK_WINSDK10_UCRT_IMPLIB_NAME) +endif + diff --git a/kBuild/sdks/WINSDK10-UM-INCS.kmk b/kBuild/sdks/WINSDK10-UM-INCS.kmk new file mode 100644 index 0000000..890b0ea --- /dev/null +++ b/kBuild/sdks/WINSDK10-UM-INCS.kmk @@ -0,0 +1,42 @@ +# $Id: WINSDK10-UM-INCS.kmk 3500 2021-12-14 09:38:34Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, user mode includes only. +# + +# +# Copyright (c) 2006-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10.kmk +endif + +SDK_WINSDK10-UM-INCS := The Microsoft Windows 10 SDK, user mode includes only. +SDK_WINSDK10-UM-INCS_INCS ?= \ + $(PATH_SDK_WINSDK10_UM_INC) \ + $(PATH_SDK_WINSDK10_SHARED_INC) + diff --git a/kBuild/sdks/WINSDK10-UM.kmk b/kBuild/sdks/WINSDK10-UM.kmk new file mode 100644 index 0000000..3773cb4 --- /dev/null +++ b/kBuild/sdks/WINSDK10-UM.kmk @@ -0,0 +1,69 @@ +# $Id: WINSDK10-UM.kmk 3501 2021-12-14 21:54:48Z bird $ +## @file +# kBuild SDK - Derives from WINSDK10.kmk, user mode. +# + +# +# Copyright (c) 2006-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +ifndef SDK_WINSDK10 + include $(KBUILD_PATH)/sdks/WINSDK10.kmk +endif + +SDK_WINSDK10-UM := The Microsoft Windows 10 SDK, user mode. +SDK_WINSDK10-UM_INCS ?= \ + $(PATH_SDK_WINSDK10_UM_INC) \ + $(PATH_SDK_WINSDK10_SHARED_INC) +SDK_WINSDK10-UM_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_UM_LIB.x86) +SDK_WINSDK10-UM_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_UM_LIB.amd64) +SDK_WINSDK10-UM_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_UM_LIB.arm32) +SDK_WINSDK10-UM_LIBPATH.arm64 ?= $(PATH_SDK_WINSDK10_UM_LIB.arm64) +ifndef SDK_WINSDK10-UM_LIBS.amd64 +SDK_WINSDK10-UM_LIBS.amd64 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.amd64)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif +ifndef SDK_WINSDK10-UM_LIBS.arm32 +SDK_WINSDK10-UM_LIBS.arm32 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.arm32)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif +ifndef SDK_WINSDK10-UM_LIBS.arm64 +SDK_WINSDK10-UM_LIBS.arm64 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.arm64)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif +ifndef SDK_WINSDK10-UM_LIBS.x86 +SDK_WINSDK10-UM_LIBS.x86 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.x86)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif + +# Path variables for smoothing the transistion from older PSDKs. +PATH_SDK_WINSDK10_UM = $(PATH_SDK_WINSDK10) + +PATH_SDK_WINSDK10-UM_LIB.x86 = $(PATH_SDK_WINSDK10_UM_LIB.x86) +PATH_SDK_WINSDK10-UM_LIB.amd64 = $(PATH_SDK_WINSDK10_UM_LIB.amd64) +PATH_SDK_WINSDK10-UM_LIB.arm32 = $(PATH_SDK_WINSDK10_UM_LIB.arm32) +PATH_SDK_WINSDK10-UM_LIB.arm64 = $(PATH_SDK_WINSDK10_UM_LIB.arm64) +PATH_SDK_WINSDK10-UM_LIB ?= $(PATH_SDK_WINSDK10_UM_LIB.$(KBUILD_TARGET_ARCH)) + +PATH_SDK_WINSDK10-UM_BIN ?= $(PATH_SDK_WINSDK10_BIN) + diff --git a/kBuild/sdks/WINSDK10.kmk b/kBuild/sdks/WINSDK10.kmk new file mode 100644 index 0000000..bec1ce9 --- /dev/null +++ b/kBuild/sdks/WINSDK10.kmk @@ -0,0 +1,256 @@ +# $Id: WINSDK10.kmk 3511 2021-12-16 12:00:28Z bird $ +## @file +# kBuild SDK - The Microsoft Windows SDK v10. +# + +# +# Copyright (c) 2006-2020 knut st. osmundsen +# +# This file is part of kBuild. +# +# kBuild is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# kBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with kBuild; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# As a special exception you are granted permission to include this file, via +# the kmk include directive, as you wish without this in itself causing the +# resulting makefile, program or whatever to be covered by the GPL license. +# This exception does not however invalidate any other reasons why the makefile, +# program, whatever should not be covered the GPL. +# +# + +SDK_WINSDK10 := The Windows Platform SDK v10, targeting (KBUILD_TARGET). + +ifndef INCLUDED_WIN_COMMON_KMK + include $(KBUILD_PATH)/win-common.kmk +endif + +# +# SDK Specific Properties +# + +## @def PATH_SDK_WINSDK10 +## The base path of the Windows 10 SDK. +## @def SDK_WINSDK10_VERSION +## The SDK version for subdirectories. +ifndef PATH_SDK_WINSDK10 + ifndef SDK_WINSDK10_VERSION + PATH_SDK_WINSDK10 := $(firstfile $(foreachfile toolsdir, \ + $(KBUILD_DEVTOOLS_BLD) $(KBUILD_DEVTOOLS_TRG) $(KBUILD_DEVTOOLS)/win.x86 $(KBUILD_DEVTOOLS)/win.amd64 \ + , $(rsortfiles $(qwildcard ,$(toolsdir)/sdk/v10*/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]/10.0.*)))) + ifeq ($(PATH_SDK_WINSDK10),) + PATH_SDK_WINSDK10 := $(firstfile $(foreachfile progfilesdir,$(WINCMN_PROGRAM_FILES_LIST)\ + ,$(rsortfiles $(qwildcard ,$(progfilesdir)/Windows\ Kits/10/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]/10.0.*)) )) + ifeq ($(PATH_SDK_WINSDK10),) + $(warning kBuild: PATH_SDK_WINSDK10 couldn't be determined!) + PATH_SDK_WINSDK10 := $(KBUILD_DEVTOOLS_BLD)/sdk/v10-not-found/Include/10.0.10240.0 + endif + endif + SDK_WINSDK10_VERSION := $(qnotdir ,$(PATH_SDK_WINSDK10)) + else + PATH_SDK_WINSDK10 := $(firstfile $(foreachfile toolsdir, \ + $(KBUILD_DEVTOOLS_BLD) $(KBUILD_DEVTOOLS_TRG) $(KBUILD_DEVTOOLS)/win.x86 $(KBUILD_DEVTOOLS)/win.amd64 \ + , $(rsortfiles $(qwildcard ,$(toolsdir)/sdk/v10*/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]/$(SDK_WINSDK10_VERSION))))) + ifeq ($(PATH_SDK_WINSDK10),) + PATH_SDK_WINSDK10 := $(firstfile $(foreachfile progfilesdir,$(WINCMN_PROGRAM_FILES_LIST)\ + ,$(rsortfiles $(qwildcard ,$(progfilesdir)/Windows\ Kits/10/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]/$(SDK_WINSDK10_VERSION))) )) + ifeq ($(PATH_SDK_WINSDK10),) + $(warning kBuild: PATH_SDK_WINSDK10 couldn't be determined!) + PATH_SDK_WINSDK10 := $(KBUILD_DEVTOOLS_BLD)/sdk/v10-not-found/Include/$(SDK_WINSDK10_VERSION) + endif + endif + SDK_WINSDK10_VERSION := $(qnotdir ,$(PATH_SDK_WINSDK10)) + endif + PATH_SDK_WINSDK10 := $(substr $(qdir ,$(PATH_SDK_WINSDK10)),1,-9) +else + PATH_SDK_WINSDK10 := $(PATH_SDK_WINSDK10) + ifndef SDK_WINSDK10_VERSION + SDK_WINSDK10_VERSION := $(qnotdir ,$(firstfile $(rsortfiles $(qwildcard ,$(PATH_SDK_WINSDK10)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]/10.0.*)))) + ifeq ($(SDK_WINSDK10_VERSION),) + $(warning kBuild: SDK_WINSDK10_VERSION could not be determined for PATH_SDK_WINSDK10=$(PATH_SDK_WINSDK10)) + SDK_WINSDK10_VERSION := 10.0.10240.0 + endif + endif +endif + +# Non-versioned base directory paths: +ifndef PATH_SDK_WINSDK10_BASE_INC +PATH_SDK_WINSDK10_BASE_INC := $(firstfile $(qwildcard ,$(PATH_SDK_WINSDK10)/[Ii][Nn][Cc][Ll][Uu][Dd][Ee]) $(PATH_SDK_WINSDK10)/Include) +endif +ifndef PATH_SDK_WINSDK10_BASE_LIB +PATH_SDK_WINSDK10_BASE_LIB := $(firstfile $(qwildcard ,$(PATH_SDK_WINSDK10)/[Ll][Ii][Bb]) $(PATH_SDK_WINSDK10)/lib) +endif +ifndef PATH_SDK_WINSDK10_BASE_BIN +PATH_SDK_WINSDK10_BASE_BIN := $(firstfile $(qwildcard ,$(PATH_SDK_WINSDK10)/[Bb][Ii][Nn]) $(PATH_SDK_WINSDK10)/bin) +endif + +# Universal CRT (UCRT). +ifndef PATH_SDK_WINSDK10_UCRT_INC +PATH_SDK_WINSDK10_UCRT_INC := $(PATH_SDK_WINSDK10_BASE_INC)/$(SDK_WINSDK10_VERSION)/ucrt +endif +ifndef PATH_SDK_WINSDK10_UCRT_LIB.amd64 +PATH_SDK_WINSDK10_UCRT_LIB.amd64 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/ucrt/x64 +endif +ifndef PATH_SDK_WINSDK10_UCRT_LIB.arm32 +PATH_SDK_WINSDK10_UCRT_LIB.arm32 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/ucrt/arm +endif +ifndef PATH_SDK_WINSDK10_UCRT_LIB.arm64 +PATH_SDK_WINSDK10_UCRT_LIB.arm64 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/ucrt/arm64 +endif +ifndef PATH_SDK_WINSDK10_UCRT_LIB.x86 +PATH_SDK_WINSDK10_UCRT_LIB.x86 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/ucrt/x86 +endif +PATH_SDK_WINSDK10_UCRT_LIB = $(PATH_SDK_WINSDK10_UCRT_LIB.$(KBUILD_TARGET_ARCH)) +SDK_WINSDK10_UCRT_IMPLIB_NAME := ucrt.lib +SDK_WINSDK10_UCRT_IMPLIB_DBG_NAME := ucrtd.lib +SDK_WINSDK10_UCRT_STATIC_NAME := libucrt.lib +SDK_WINSDK10_UCRT_STATIC_DBG_NAME := libucrtd.lib + +# Shared API headers +ifndef PATH_SDK_WINSDK10_SHARED_INC +PATH_SDK_WINSDK10_SHARED_INC := $(PATH_SDK_WINSDK10_BASE_INC)/$(SDK_WINSDK10_VERSION)/shared +endif + +# User-mode API (MS WIN SDK) +ifndef PATH_SDK_WINSDK10_UM_INC +PATH_SDK_WINSDK10_UM_INC := $(PATH_SDK_WINSDK10_BASE_INC)/$(SDK_WINSDK10_VERSION)/um +endif +ifndef PATH_SDK_WINSDK10_UM_LIB.amd64 +PATH_SDK_WINSDK10_UM_LIB.amd64 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/um/x64 +endif +ifndef PATH_SDK_WINSDK10_UM_LIB.arm32 +PATH_SDK_WINSDK10_UM_LIB.arm32 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/um/arm +endif +ifndef PATH_SDK_WINSDK10_UM_LIB.arm64 +PATH_SDK_WINSDK10_UM_LIB.arm64 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/um/arm64 +endif +ifndef PATH_SDK_WINSDK10_UM_LIB.x86 +PATH_SDK_WINSDK10_UM_LIB.x86 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/um/x86 +endif +PATH_SDK_WINSDK10_UM_LIB = $(PATH_SDK_WINSDK10_UM_LIB.$(KBUILD_TARGET_ARCH)) +ifndef SDK_WINSDK10_UM_LIB_NAMES +SDK_WINSDK10_UM_LIB_NAMES := \ + Kernel32.Lib \ + User32.Lib \ + Gdi32.Lib \ + AdvAPI32.Lib \ + shell32.lib \ + ShLwApi.Lib \ + SetupAPI.Lib \ + Uuid.Lib \ + Version.Lib \ + WS2_32.Lib \ + \ + Ole32.Lib \ + OleAut32.Lib \ + OleDlg.Lib \ + RpcRT4.Lib \ + DbgHelp.Lib \ + \ + ImageHlp.Lib \ + IPHlpApi.Lib \ + ComCtl32.Lib \ + ComDlg32.Lib \ + WinSpool.Lib \ + WinMM.Lib +endif + +# Kernel-mode API headers (WDK). +ifndef PATH_SDK_WINSDK10_KM_INC +PATH_SDK_WINSDK10_KM_INC := $(PATH_SDK_WINSDK10_BASE_INC)/$(SDK_WINSDK10_VERSION)/km +endif + +# Kernel-mode API libraries (WDK). +ifndef PATH_SDK_WINSDK10_KM_LIB.amd64 +PATH_SDK_WINSDK10_KM_LIB.amd64 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/km/x64 +endif +ifndef PATH_SDK_WINSDK10_KM_LIB.arm32 +PATH_SDK_WINSDK10_KM_LIB.arm32 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/km/arm +endif +ifndef PATH_SDK_WINSDK10_KM_LIB.arm64 +PATH_SDK_WINSDK10_KM_LIB.arm64 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/km/arm64 +endif +ifndef PATH_SDK_WINSDK10_KM_LIB.x86 +PATH_SDK_WINSDK10_KM_LIB.x86 := $(PATH_SDK_WINSDK10_BASE_LIB)/$(SDK_WINSDK10_VERSION)/km/x86 +endif +PATH_SDK_WINSDK10_KM_LIB = $(PATH_SDK_WINSDK10_KM_LIB.$(KBUILD_TARGET_ARCH)) + +# Kernel-mode API libraries for Windows 7 (WDK). +ifndef PATH_SDK_WINSDK10_KM_LIB_W7.amd64 +PATH_SDK_WINSDK10_KM_LIB_W7.amd64 := $(PATH_SDK_WINSDK10_BASE_LIB)/win7/km/x64 +endif +ifndef PATH_SDK_WINSDK10_KM_LIB_W7.x86 +PATH_SDK_WINSDK10_KM_LIB_W7.x86 := $(PATH_SDK_WINSDK10_BASE_LIB)/win7/km/x86 +endif +PATH_SDK_WINSDK10_KM_LIB_W7 = $(PATH_SDK_WINSDK10_KM_LIB_W7.$(KBUILD_TARGET_ARCH)) + +# Kernel-mode API libraries for Windows 8 (WDK). +ifndef PATH_SDK_WINSDK10_KM_LIB_W8.amd64 +PATH_SDK_WINSDK10_KM_LIB_W8.amd64 := $(PATH_SDK_WINSDK10_BASE_LIB)/win8/km/x64 +endif +ifndef PATH_SDK_WINSDK10_KM_LIB_W8.arm32 +PATH_SDK_WINSDK10_KM_LIB_W8.arm32 := $(PATH_SDK_WINSDK10_BASE_LIB)/win8/km/arm +endif +ifndef PATH_SDK_WINSDK10_KM_LIB_W8.x86 +PATH_SDK_WINSDK10_KM_LIB_W8.x86 := $(PATH_SDK_WINSDK10_BASE_LIB)/win8/km/x86 +endif +PATH_SDK_WINSDK10_KM_LIB_W8 = $(PATH_SDK_WINSDK10_KM_LIB_W8.$(KBUILD_TARGET_ARCH)) + +# Kernel-mode API libraries for Windows 8.1 (WDK). +ifndef PATH_SDK_WINSDK10_KM_LIB_W81.amd64 +PATH_SDK_WINSDK10_KM_LIB_W81.amd64 := $(PATH_SDK_WINSDK10_BASE_LIB)/winv6.3/km/x64 +endif +ifndef PATH_SDK_WINSDK10_KM_LIB_W81.arm32 +PATH_SDK_WINSDK10_KM_LIB_W81.arm32 := $(PATH_SDK_WINSDK10_BASE_LIB)/winv6.3/km/arm +endif +ifndef PATH_SDK_WINSDK10_KM_LIB_W81.x86 +PATH_SDK_WINSDK10_KM_LIB_W81.x86 := $(PATH_SDK_WINSDK10_BASE_LIB)/winv6.3/km/x86 +endif +PATH_SDK_WINSDK10_KM_LIB_W81 = $(PATH_SDK_WINSDK10_KM_LIB_W81.$(KBUILD_TARGET_ARCH)) + +# Binary directory for host. +ifndef PATH_SDK_WINSDK10_BIN + ifeq ($(KBUILD_HOST_ARCH),amd64) +PATH_SDK_WINSDK10_BIN := $(PATH_SDK_WINSDK10_BASE_BIN)/$(SDK_WINSDK10_VERSION)/x64 + else ifeq ($(KBUILD_HOST_ARCH),arm) +PATH_SDK_WINSDK10_BIN := $(PATH_SDK_WINSDK10_BASE_BIN)/$(SDK_WINSDK10_VERSION)/arm + else +PATH_SDK_WINSDK10_BIN := $(PATH_SDK_WINSDK10_BASE_BIN)/$(SDK_WINSDK10_VERSION)/$(KBUILD_HOST_ARCH) + endif +endif + +# +# Properties used by kBuild. +# +SDK_WINSDK10_INCS ?= \ + $(PATH_SDK_WINSDK10_UM_INC) \ + $(PATH_SDK_WINSDK10_SHARED_INC) +SDK_WINSDK10_LIBPATH.amd64 ?= $(PATH_SDK_WINSDK10_UM_LIB.amd64) +SDK_WINSDK10_LIBPATH.arm32 ?= $(PATH_SDK_WINSDK10_UM_LIB.arm32) +SDK_WINSDK10_LIBPATH.arm64 ?= $(PATH_SDK_WINSDK10_UM_LIB.arm64) +SDK_WINSDK10_LIBPATH.x86 ?= $(PATH_SDK_WINSDK10_UM_LIB.x86) +ifndef SDK_WINSDK10_LIBS.amd64 +SDK_WINSDK10_LIBS.amd64 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.amd64)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif +ifndef SDK_WINSDK10_LIBS.arm32 +SDK_WINSDK10_LIBS.arm32 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.arm32)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif +ifndef SDK_WINSDK10_LIBS.arm64 +SDK_WINSDK10_LIBS.arm64 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.arm64)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif +ifndef SDK_WINSDK10_LIBS.x86 +SDK_WINSDK10_LIBS.x86 := $(addprefix $(PATH_SDK_WINSDK10_UM_LIB.x86)/,$(SDK_WINSDK10_UM_LIB_NAMES)) +endif + -- cgit v1.2.3