Makefile.kmk revision 6cd9e4d9b3398c78dfee8363a3ad75a33304d76c
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
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncwined3d_DEFS += VBOX_WINE_WITH_SINGLE_SWAPCHAIN_CONTEXT
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncwined3d_DEFS += VBOX_WINE_WITHOUT_LIBWINE
af062818b47340eef15700d2f0211576ba3506eevboxsyncwined3d_SOURCES := \
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncwined3d_SDKS = WINDDKWLH
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsync# wined3d now using iprt/asm.h, which includes iprt/assert.h, so iprt is required
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncwined3d_LIBS += \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_VBGL_R3)
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncwined3d_DEFS += VBOX_WINE_WITH_IPRT
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsyncifdef VBOX_WITH_WDDM
0614bee07b5f88aa8803df43fde6d7185a9a7fffvboxsyncDLLS += wined3dwddm
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_EXTENDS = wined3d
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsync if defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm_INCS = vbox/libWineStub/include
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncwined3dwddm_DEFS = $(subst VBOX_WINE_WITH_SINGLE_SWAPCHAIN_CONTEXT,,$(wined3d_DEFS))
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncwined3dwddm_DEFS += VBOX_WITH_WDDM VBOX_WINE_WITH_SINGLE_CONTEXT
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncwined3dwddm_SOURCES = $(subst wined3d.def,wined3dwddm.def,$(wined3d_SOURCES)) vbox/VBoxDbgGl.c
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncDLLS.amd64 += wined3dwddm-x86
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm-x86_EXTENDS = wined3dwddm
9ee431cac56f7b56e2197f78dae4d469b180be7avboxsyncwined3dwddm-x86_BLD_TRG_ARCH = x86
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsync# wined3d now using iprt/asm.h, which includes iprt/assert.h, so iprt is required
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsyncwined3dwddm-x86_LIBS = \
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsync $(VBOX_LIB_IPRT_GUEST_R3_X86) \
2ecff1c2f70f10cf06821afc18116b764c53fb5evboxsync $(VBOX_LIB_VBGL_R3_X86)
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncwined3dwddm-x86_DEFS = $(wined3dwddm_DEFS) VBOX_WDDM_WOW64
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsyncendif # ifdef VBOX_WITH_WDDM
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
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D8_DEFS += VBOX_WINE_WITHOUT_LIBWINE
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D8_SOURCES := \
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D8_LIBS = \
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsync $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D8_SDKS = WINDDKWLH
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncifdef VBOX_WINE_WITH_IPRT
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncVBoxD3D8_LIBS += \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_VBGL_R3)
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncVBoxD3D8_DEFS += VBOX_WINE_WITH_IPRT
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)
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsync VBoxD3D9_DEFS += WINE_NO_DEBUG_MSGS
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D9_DEFS += VBOX_WINE_WITHOUT_LIBWINE
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncVBoxD3D9_SOURCES := \
c956475d30580345549e914629db5a9535a01bfbvboxsyncVBoxD3D9_LIBS = \
3b3bc8a9383a065307e540b83fc3a3d6c548a082vboxsync $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D9_SDKS = WINDDKWLH
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncifdef VBOX_WINE_WITH_IPRT
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncVBoxD3D9_LIBS += \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_VBGL_R3)
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncVBoxD3D9_DEFS += VBOX_WINE_WITH_IPRT
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsyncifdef VBOX_WITH_WDDM
0614bee07b5f88aa8803df43fde6d7185a9a7fffvboxsyncDLLS += VBoxD3D9wddm
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_EXTENDS = VBoxD3D9
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsync if defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsync VBoxD3D9wddm_INSTTYPE = none
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsync VBoxD3D9wddm_DEBUG_INSTTYPE = both
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncVBoxD3D9wddm_INCS = vbox/libWineStub/include
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D9wddm_DEFS += $(VBoxD3D9_DEFS) VBOX_WITH_WDDM VBOX_WINE_WITHOUT_LIBWINE IN_VBOXWINEEX
6decafdf89f825b3af922ab6fa02345e08e5be7bvboxsyncVBoxD3D9wddm_SOURCES = $(subst d3d9xpdm.def,d3d9wddm.def,$(VBoxD3D9_SOURCES))
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncVBoxD3D9wddm_LIBS = $(subst $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB),$(PATH_STAGE_LIB)/wined3dwddm$(VBOX_SUFF_LIB),$(VBoxD3D9_LIBS))
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
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsync ifdef VBOX_WINE_WITH_IPRT
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsyncVBoxD3D9wddm-x86_LIBS += \
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsync $(VBOX_LIB_IPRT_GUEST_R3_X86) \
3c5c04d7b0973be0757addef8ba44b9352b38386vboxsync $(VBOX_LIB_VBGL_R3_X86)
6cd9e4d9b3398c78dfee8363a3ad75a33304d76cvboxsyncendif # ifdef VBOX_WITH_WDDM
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncDLLS += d3d8
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d8_TEMPLATE = VBOXGUESTR3NPDLL
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncd3d8_INCS.x86 := $(PATH_SUB_CURRENT)/include
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d8_SOURCES = \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncifdef VBOX_WINE_WITH_IPRT
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncd3d8_LIBS += \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_VBGL_R3)
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncd3d8_DEFS += VBOX_WINE_WITH_IPRT
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncDLLS += d3d9
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d9_TEMPLATE = VBOXGUESTR3NPDLL
9a5befd0a4c36b07cd78a71dcacfa289fbdc93c7vboxsyncd3d9_INCS.x86 := $(PATH_SUB_CURRENT)/include
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncd3d9_SOURCES = \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncifdef VBOX_WINE_WITH_IPRT
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncd3d9_LIBS += \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsync $(VBOX_LIB_VBGL_R3)
d2432596ad0325b8a9b42552ce4fcd251f37fcc3vboxsyncd3d9_DEFS += VBOX_WINE_WITH_IPRT
4ca627b809c47f842ea1e994ae06516fc70ade2avboxsyncinclude $(KBUILD_PATH)/subfooter.kmk