Makefile.kmk revision 443737ccbda705c1849dae6cf29921bf06ed8e59
247efe202344328bffb8de7e47aee60039cd95e0vboxsync# Makefile for the Wine D3D related dlls for VirtualBox.
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# Copyright (C) 2009 Oracle Corporation
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# available from http://www.virtualbox.org. This file is free software;
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# you can redistribute it and/or modify it under the terms of the GNU
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# General Public License (GPL) as published by the Free Software
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncSUB_DEPTH = ../../../../../..
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncinclude $(KBUILD_PATH)/subheader.kmk
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# @todo: get rid of libwine completely (currently used for xpdm.x86 builds only)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsynclibWine_TEMPLATE = VBOXGUESTR3NPDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsynclibWine_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL __i386__ \
6095269a3237b1ef8bf4edefc11f2d888d8a41ebvboxsync DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BINDIR=\"\" \
247efe202344328bffb8de7e47aee60039cd95e0vboxsync LIB_TO_BINDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BIN_TO_DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_DATADIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BIN_TO_DATADIR=\"\"
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsynclibWine_INCS := $(PATH_SUB_CURRENT)/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsynclibWine_SOURCES := \
dba1919dac01f490c625e0470b528e469c30651dvboxsyncDLLS += wined3d
ec9aa1180070b037866f064ce720254cd9f03721vboxsync# @todo: all .amd64 and .x86 stuff below is to get rid of libwine for amd64
ec9aa1180070b037866f064ce720254cd9f03721vboxsync# and keep it for .x86 to avoid regressions
ec9aa1180070b037866f064ce720254cd9f03721vboxsync# this should be generalized in the future
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncwined3d_TEMPLATE = VBOXGUESTR3NPDLL
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncwined3d_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
ec9aa1180070b037866f064ce720254cd9f03721vboxsync DLLDIR=\"\" \
dba1919dac01f490c625e0470b528e469c30651dvboxsync BINDIR=\"\" \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync LIB_TO_BINDIR=\"\" \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync LIB_TO_DLLDIR=\"\" \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync BIN_TO_DLLDIR=\"\" \
dba1919dac01f490c625e0470b528e469c30651dvboxsync LIB_TO_DATADIR=\"\" \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync BIN_TO_DATADIR=\"\"
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncif "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync wined3d_DEFS += WINE_NO_DEBUG_MSGS
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3d_DEFS.amd64 += VBOX_WINE_WITHOUT_LIBWINE
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncwined3d_INCS.x86 := $(PATH_SUB_CURRENT)/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3d_SOURCES := \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_STAGE_LIB)/libWine$(VBOX_SUFF_LIB)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncifdef VBOX_WITH_WDDM
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS += wined3dwddm
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_EXTENDS = wined3d
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncif defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_INCS = vbox/libWineStub/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_INCS.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_LIBS.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_DEFS = $(subst __i386__,,$(wined3d_DEFS)) VBOX_WITH_WDDM VBOX_WINE_WITHOUT_LIBWINE
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_DEFS.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_SOURCES = $(subst wined3d.def,wined3dwddm.def,$(wined3d_SOURCES)) vbox/libWineStub/debug.c wined3d/vboxext.c
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_SOURCES.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_SOURCES.amd64 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_SDKS = WINDDKWLH
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_SDKS.amd64 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#VBOX_WINE_WITH_IPRT is used for debugging currently to enable Assert & stuff
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncifdef VBOX_WINE_WITH_IPRT
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_LIBS += \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(VBOX_LIB_VBGL_R3)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_DEFS += VBOX_WINE_WITH_IPRT
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm_DEFS += VBOX_WINE_WITH_SINGLE_CONTEXT
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS.amd64 += wined3dwddm-x86
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm-x86_EXTENDS = wined3dwddm
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm-x86_BLD_TRG_ARCH = x86
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncifdef VBOX_WINE_WITH_IPRT
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm-x86_LIBS = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(VBOX_LIB_IPRT_GUEST_R3_X86) \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(VBOX_LIB_VBGL_R3_X86)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncwined3dwddm-x86_DEFS = $(wined3dwddm_DEFS) VBOX_WDDM_WOW64
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS += VBoxD3D8
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D8_TEMPLATE = VBOXGUESTR3NPDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D8_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BINDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_BINDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BIN_TO_DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_DATADIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BIN_TO_DATADIR=\"\"
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncif "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxD3D8_DEFS += WINE_NO_DEBUG_MSGS
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D8_DEFS.amd64 += VBOX_WINE_WITHOUT_LIBWINE
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D8_INCS.x86 := $(PATH_SUB_CURRENT)/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D8_SOURCES := \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_STAGE_LIB)/libWine$(VBOX_SUFF_LIB)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D8_LIBS = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS += VBoxD3D9
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9_TEMPLATE = VBOXGUESTR3NPDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BINDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_BINDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BIN_TO_DLLDIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync LIB_TO_DATADIR=\"\" \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync BIN_TO_DATADIR=\"\"
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncif "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxD3D9_DEFS += WINE_NO_DEBUG_MSGS
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9_DEFS.amd64 += VBOX_WINE_WITHOUT_LIBWINE
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9_INCS.x86 := $(PATH_SUB_CURRENT)/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9_SOURCES := \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_STAGE_LIB)/libWine$(VBOX_SUFF_LIB)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9_LIBS = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncifdef VBOX_WITH_WDDM
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS += VBoxD3D9wddm
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_EXTENDS = VBoxD3D9
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncif defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_INCS = vbox/libWineStub/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_INCS.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_DEFS.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_DEFS += $(subst __i386__,,$(VBoxD3D9_DEFS)) VBOX_WITH_WDDM VBOX_WINE_WITHOUT_LIBWINE IN_VBOXWINEEX
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_SOURCES = $(VBoxD3D9_SOURCES) d3d9/d3d9wddm.def vbox/libWineStub/debug.c
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_SOURCES.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_SOURCES.amd64 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_LIBS = $(PATH_STAGE_LIB)/wined3dwddm$(VBOX_SUFF_LIB)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_LIBS.x86 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_SDKS = WINDDKWLH
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_SDKS.amd64 = $(NO_SUCH_VARIABLE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncifdef VBOX_WINE_WITH_IPRT
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_LIBS += \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
247efe202344328bffb8de7e47aee60039cd95e0vboxsync $(VBOX_LIB_VBGL_R3)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm_DEFS += VBOX_WINE_WITH_IPRT
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS.amd64 += VBoxD3D9wddm-x86
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm-x86_EXTENDS = VBoxD3D9wddm
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxD3D9wddm-x86_BLD_TRG_ARCH = x86
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncVBoxD3D9wddm-x86_LIBS = $(PATH_STAGE_LIB)/wined3dwddm-x86$(VBOX_SUFF_LIB)
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncVBoxD3D9wddm-x86_DEFS = $(VBoxD3D9wddm_DEFS) VBOX_WDDM_WOW64
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncifdef VBOX_WINE_WITH_IPRT
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncVBoxD3D9wddm-x86_LIBS += \
e77749d161a9912b95090202d25c428bc8314dadvboxsync $(VBOX_LIB_IPRT_GUEST_R3_X86) \
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync $(VBOX_LIB_VBGL_R3_X86)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS += d3d8
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncd3d8_TEMPLATE = VBOXGUESTR3NPDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncd3d8_INCS.x86 := $(PATH_SUB_CURRENT)/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncd3d8_SOURCES = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS += d3d9
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncd3d9_TEMPLATE = VBOXGUESTR3NPDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncd3d9_INCS.x86 := $(PATH_SUB_CURRENT)/include
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncd3d9_SOURCES = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncinclude $(KBUILD_PATH)/subfooter.kmk