Makefile.kmk revision 3c5c04d7b0973be0757addef8ba44b9352b38386
af062818b47340eef15700d2f0211576ba3506eevboxsync# Makefile for the Wine D3D related dlls for VirtualBox.
e64031e20c39650a7bc902a3e1aba613b9415deevboxsync# Copyright (C) 2009 Oracle Corporation
af062818b47340eef15700d2f0211576ba3506eevboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
af062818b47340eef15700d2f0211576ba3506eevboxsync# available from http://www.virtualbox.org. This file is free software;
af062818b47340eef15700d2f0211576ba3506eevboxsync# you can redistribute it and/or modify it under the terms of the GNU
af062818b47340eef15700d2f0211576ba3506eevboxsync# General Public License (GPL) as published by the Free Software
af062818b47340eef15700d2f0211576ba3506eevboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
af062818b47340eef15700d2f0211576ba3506eevboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
af062818b47340eef15700d2f0211576ba3506eevboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
af062818b47340eef15700d2f0211576ba3506eevboxsyncSUB_DEPTH = ../../../../../..
af062818b47340eef15700d2f0211576ba3506eevboxsyncinclude $(KBUILD_PATH)/subheader.kmk
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsync# @todo: get rid of libwine completely (currently used for xpdm.x86 builds only)
912b8dafdda09a31ee01d57d31afc4df96b80218vboxsynclibWine_TEMPLATE = VBOXGUESTR3NPDLL
af062818b47340eef15700d2f0211576ba3506eevboxsynclibWine_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL __i386__ \
af062818b47340eef15700d2f0211576ba3506eevboxsync DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BINDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_BINDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BIN_TO_DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_DATADIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BIN_TO_DATADIR=\"\"
af062818b47340eef15700d2f0211576ba3506eevboxsynclibWine_INCS := $(PATH_SUB_CURRENT)/include
af062818b47340eef15700d2f0211576ba3506eevboxsynclibWine_SOURCES := \
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncDLLS += wined3d
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsync# @todo: all .amd64 and .x86 stuff below is to get rid of libwine for amd64
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsync# and keep it for .x86 to avoid regressions
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsync# this should be generalized in the future
af062818b47340eef15700d2f0211576ba3506eevboxsyncwined3d_TEMPLATE = VBOXGUESTR3NPDLL
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3d_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
af062818b47340eef15700d2f0211576ba3506eevboxsync DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BINDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_BINDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BIN_TO_DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_DATADIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BIN_TO_DATADIR=\"\"
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncif "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
8daece1012c8dac65e6b148c77e189161ffc43f1vboxsync wined3d_DEFS += WINE_NO_DEBUG_MSGS
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3d_DEFS.amd64 += VBOX_WINE_WITHOUT_LIBWINE
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3d_INCS.x86 := $(PATH_SUB_CURRENT)/include
af062818b47340eef15700d2f0211576ba3506eevboxsyncwined3d_SOURCES := \
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsync $(PATH_STAGE_LIB)/libWine$(VBOX_SUFF_LIB)
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsyncifdef VBOX_WITH_WDDM
0614bee07b5f88aa8803df43fde6d7185a9a7fffvboxsyncDLLS += wined3dwddm
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_EXTENDS = wined3d
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsyncif defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_INCS = vbox/libWineStub/include
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_INCS.x86 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_LIBS.x86 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_DEFS = $(subst __i386__,,$(wined3d_DEFS)) VBOX_WITH_WDDM VBOX_WINE_WITHOUT_LIBWINE
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_DEFS.x86 = $(NO_SUCH_VARIABLE)
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncwined3dwddm_SOURCES = $(subst wined3d.def,wined3dwddm.def,$(wined3d_SOURCES)) vbox/libWineStub/debug.c wined3d/vboxext.c
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_SOURCES.x86 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_SOURCES.amd64 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_SDKS = WINDDKWLH
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_SDKS.amd64 = $(NO_SUCH_VARIABLE)
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsync#VBOX_WINE_WITH_IPRT is used for debugging currently to enable Assert & stuff
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsyncifdef VBOX_WINE_WITH_IPRT
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsyncwined3dwddm_LIBS += \
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsync $(VBOX_LIB_VBGL_R3)
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsyncwined3dwddm_DEFS += VBOX_WINE_WITH_IPRT
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncifdef VBOX_WINE_WITH_SINGLE_CONTEXT
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncwined3dwddm_DEFS += VBOX_WINE_WITH_SINGLE_CONTEXT
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncDLLS.amd64 += wined3dwddm-x86
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm-x86_EXTENDS = wined3dwddm
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncwined3dwddm-x86_BLD_TRG_ARCH = x86
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsyncifdef VBOX_WINE_WITH_IPRT
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsyncwined3dwddm-x86_LIBS = \
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsync $(VBOX_LIB_IPRT_GUEST_R3_X86) \
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsync $(VBOX_LIB_VBGL_R3_X86)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm-x86_DEFS = $(wined3dwddm_DEFS) VBOX_WDDM_WOW64
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncDLLS += VBoxD3D8
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncVBoxD3D8_TEMPLATE = VBOXGUESTR3NPDLL
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D8_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
af062818b47340eef15700d2f0211576ba3506eevboxsync DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BINDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_BINDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BIN_TO_DLLDIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync LIB_TO_DATADIR=\"\" \
af062818b47340eef15700d2f0211576ba3506eevboxsync BIN_TO_DATADIR=\"\"
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncif "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
8daece1012c8dac65e6b148c77e189161ffc43f1vboxsync VBoxD3D8_DEFS += WINE_NO_DEBUG_MSGS
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D8_DEFS.amd64 += VBOX_WINE_WITHOUT_LIBWINE
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D8_INCS.x86 := $(PATH_SUB_CURRENT)/include
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncVBoxD3D8_SOURCES := \
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsync $(PATH_STAGE_LIB)/libWine$(VBOX_SUFF_LIB)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D8_LIBS = \
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsync $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncDLLS += VBoxD3D9
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncVBoxD3D9_TEMPLATE = VBOXGUESTR3NPDLL
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync DLLDIR=\"\" \
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync BINDIR=\"\" \
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync LIB_TO_BINDIR=\"\" \
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync LIB_TO_DLLDIR=\"\" \
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync BIN_TO_DLLDIR=\"\" \
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync LIB_TO_DATADIR=\"\" \
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync BIN_TO_DATADIR=\"\"
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncif "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
efc2dd03ce4c5327b18fd0493dde207135d4cc6evboxsync VBoxD3D9_DEFS += WINE_NO_DEBUG_MSGS
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9_DEFS.amd64 += VBOX_WINE_WITHOUT_LIBWINE
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9_INCS.x86 := $(PATH_SUB_CURRENT)/include
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncVBoxD3D9_SOURCES := \
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsync $(PATH_STAGE_LIB)/libWine$(VBOX_SUFF_LIB)
c956475d30580345549e914629db5a9535a01bfbvboxsyncVBoxD3D9_LIBS = \
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsync $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsyncifdef VBOX_WITH_WDDM
0614bee07b5f88aa8803df43fde6d7185a9a7fffvboxsyncDLLS += VBoxD3D9wddm
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_EXTENDS = VBoxD3D9
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsyncif defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_INCS = vbox/libWineStub/include
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_INCS.x86 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_DEFS.x86 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_DEFS += $(subst __i386__,,$(VBoxD3D9_DEFS)) VBOX_WITH_WDDM VBOX_WINE_WITHOUT_LIBWINE IN_VBOXWINEEX
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_SOURCES = $(VBoxD3D9_SOURCES) d3d9/d3d9wddm.def vbox/libWineStub/debug.c
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_SOURCES.x86 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_SOURCES.amd64 = $(NO_SUCH_VARIABLE)
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsyncVBoxD3D9wddm_LIBS = $(PATH_STAGE_LIB)/wined3dwddm$(VBOX_SUFF_LIB)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_LIBS.x86 = $(NO_SUCH_VARIABLE)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_SDKS = WINDDKWLH
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_SDKS.amd64 = $(NO_SUCH_VARIABLE)
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncifdef VBOX_WINE_WITH_IPRT
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncVBoxD3D9wddm_LIBS += \
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsync $(VBOX_LIB_VBGL_R3)
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncVBoxD3D9wddm_DEFS += VBOX_WINE_WITH_IPRT
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncDLLS.amd64 += VBoxD3D9wddm-x86
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm-x86_EXTENDS = VBoxD3D9wddm
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncVBoxD3D9wddm-x86_BLD_TRG_ARCH = x86
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsyncVBoxD3D9wddm-x86_LIBS = $(PATH_STAGE_LIB)/wined3dwddm-x86$(VBOX_SUFF_LIB)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm-x86_DEFS = $(VBoxD3D9wddm_DEFS) VBOX_WDDM_WOW64
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncifdef VBOX_WINE_WITH_IPRT
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncVBoxD3D9wddm-x86_LIBS += \
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsync $(VBOX_LIB_IPRT_GUEST_R3_X86) \
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsync $(VBOX_LIB_VBGL_R3_X86)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncDLLS += d3d8
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d8_TEMPLATE = VBOXGUESTR3NPDLL
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncd3d8_INCS.x86 := $(PATH_SUB_CURRENT)/include
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d8_SOURCES = \
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncDLLS += d3d9
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d9_TEMPLATE = VBOXGUESTR3NPDLL
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncd3d9_INCS.x86 := $(PATH_SUB_CURRENT)/include
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d9_SOURCES = \
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncinclude $(KBUILD_PATH)/subfooter.kmk