Changeset 16875 in vbox for trunk/src/VBox/Additions/WINNT
- Timestamp:
- Feb 17, 2009 9:15:53 PM (16 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/crOpenGL
- Files:
-
- 3 deleted
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/crOpenGL/Makefile.kmk
r16480 r16875 1 1 # $Id$ 2 2 ## @file 3 # Sub-Makefile for the VirtualBox Windows Chromium OpenGL ICD.3 # Sub-Makefile for the VirtualBox Guest OpenGL part 4 4 # 5 5 … … 23 23 include $(KBUILD_PATH)/subheader.kmk 24 24 25 ifndef VBOX_BLD_PYTHON 26 if1of ($(KBUILD_HOST), win) 27 VBOX_BLD_PYTHON := $(firstword $(rsort $(wildcard $(PATH_DEVTOOLS)/win.x86/python/v*/python$(HOSTSUFF_EXE))) python-not-found.exe) 28 else 29 VBOX_BLD_PYTHON := python$(HOSTSUFF_EXE) 30 endif 25 # 26 # Target lists. 27 # 28 BLDDIRS += \ 29 $(VBOX_PATH_CROGL_GENFILES)/ 30 31 DLLS += VBoxOGL VBoxOGLarrayspu VBoxOGLpassthroughspu VBoxOGLpackspu 32 33 # 34 # VBoxOGL 35 # 36 VBoxOGL_TEMPLATE = VBOXCROGLR3GUESTDLL 37 VBoxOGL_INCS = . 38 ifeq ($(KBUILD_TARGET),win) 39 #fixme?, INTERMEDIATES.win ain't working 40 VBoxOGL_INTERMEDIATES += $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h 31 41 endif 32 33 ## @todo r=bird: This conflicts with the export you're doing in GuestHost for reasons pointed out there. 34 GLAPI_PATH := $(PATH_ROOT)/src/VBox/GuestHost/OpenGL/glapi_parser 35 if1of ($(KBUILD_HOST), win) 36 export PYTHONPATH := $(GLAPI_PATH);$(PATH_ROOT)/src/VBox/GuestHost/OpenGL/packer;$(PATH_ROOT)/src/VBox/HostServices/SharedOpenGL/crserverlib 37 else 38 export PYTHONPATH := $(GLAPI_PATH):$(PATH_ROOT)/src/VBox/GuestHost/OpenGL/packer:$(PATH_ROOT)/src/VBox/HostServices/SharedOpenGL/crserverlib 39 endif 40 ## @todo r=bird: See GuestHost makefile. 41 APIFILES := $(GLAPI_PATH)/apiutil.py $(GLAPI_PATH)/APIspec.txt 42 43 ## @todo r=bird: This appears to be common between GuestHost and this file, so move up to Config.kmk. Put it before the SDKs or something. 44 ## Also, see comments in the GuestHost makefile. 45 # Actually this 46 VBOXCROGL_GENFILES := VBoxOGLgen 47 PATH_VBOXCROGL_GENFILES := $(PATH_OBJ)/$(VBOXCROGL_GENFILES) 48 PATH_VBOXCROGL_INCLUDE := $(PATH_ROOT)/src/VBox/GuestHost/OpenGL/include 49 50 # Include sub-makefile(s). 51 include $(PATH_SUB_CURRENT)/array/Makefile.kmk 52 include $(PATH_SUB_CURRENT)/pack/Makefile.kmk 53 include $(PATH_SUB_CURRENT)/passthrough/Makefile.kmk 54 55 $$(PATH_VBoxOGL)/cropengl.def: $(PATH_SUB_CURRENT)/defs.py $(APIFILES) | $$(dir $$@) 56 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 57 58 ifeq ($(KBUILD_TARGET),win) 59 $$(PATH_VBoxOGL)/getprocaddress.c: $(PATH_SUB_CURRENT)/windows_getprocaddress.py $(APIFILES) | $$(dir $$@) 60 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 61 else 62 $$(PATH_VBoxOGL)/getprocaddress.c: $(PATH_SUB_CURRENT)/getprocaddress.py $(APIFILES) | $$(dir $$@) 63 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 64 endif 65 66 ifeq ($(KBUILD_TARGET),win) 67 $$(PATH_VBoxOGL)/windows_exports.asm: \ 68 $(PATH_SUB_CURRENT)/windows_i386_exports.py \ 69 $(APIFILES) $(PATH_SUB_CURRENT)/entrypoints.py \ 70 | $$(dir $$@) 71 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 72 $$(PATH_VBoxOGL)/cr_gl.h: $(PATH_SUB_CURRENT)/cr_gl.py $(APIFILES) | $$(dir $$@) 73 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 74 $$(PATH_VBoxOGL)/gen/getprocaddress$(SUFF_OBJ): $(PATH_TARGET)/VBoxOGL/cr_gl.h 75 endif 76 77 ifeq ($(KBUILD_TARGET),linux) 78 $$(PATH_VBoxOGL)/linux_exports.asm: \ 79 $(PATH_SUB_CURRENT)/Linux_i386_exports.py \ 80 $(APIFILES) $(PATH_SUB_CURRENT)/entrypoints.py \ 81 | $$(dir $$@) 82 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 83 endif 84 85 $$(PATH_VBoxOGL)/NULLfuncs.c: $(PATH_SUB_CURRENT)/NULLfuncs.py $(APIFILES) | $$(dir $$@) 86 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 87 88 $$(PATH_VBoxOGL)/tsfuncs.c: $(PATH_SUB_CURRENT)/tsfuncs.py $(APIFILES) | $$(dir $$@) 89 $(VBOX_BLD_PYTHON) $< $(GLAPI_PATH) > $@ 90 91 ## @todo r=bird: See comments elsewhere about the GEN_?_FILES stuff. 92 GEN_C_FILES := getprocaddress.c NULLfuncs.c 93 GEN_C_FILES := $(addprefix $(PATH_TARGET)/VBoxOGL/, $(GEN_C_FILES)) 94 95 GEN_C_FILES.win := cropengl.def 96 GEN_C_FILES.win := $(addprefix $(PATH_TARGET)/VBoxOGL/, $(GEN_C_FILES.win)) 97 98 GEN_ASM_FILES.win := windows_exports.asm 99 GEN_ASM_FILES.win := $(addprefix $(PATH_TARGET)/VBoxOGL/, $(GEN_ASM_FILES.win)) 100 101 GEN_H_FILES.win := cr_gl.h 102 GEN_H_FILES.win := $(addprefix $(PATH_TARGET)/VBoxOGL/, $(GEN_H_FILES.win)) 103 104 THREADSAFE=1 105 106 DLLS += VBoxOGL 107 108 VBoxOGL_TEMPLATE = VBOXGUESTR3NPDLL 109 VBoxOGL_DEFS = CHROMIUM_THREADSAFE VBOX_WITH_HGCM 110 VBoxOGL_DEFS.win = _WIN32_WINNT=0x0500 WINDOWS=1 111 VBoxOGL_DEFS.linux = Linux=1 112 VBoxOGL_DEFS.solaris = SunOS=1 GLEXT_64_TYPES_DEFINED 113 VBoxOGL_INCS := \ 114 $(PATH_SUB_CURRENT) \ 115 $(PATH_VBOXCROGL_INCLUDE) \ 116 $(PATH_VBOXCROGL_GENFILES) \ 117 $(PATH_TARGET)/VBoxOGL 118 VBoxOGL_SOURCES := \ 42 VBoxOGL_SOURCES = \ 119 43 load.c \ 120 44 stub.c \ 121 45 context.c \ 122 $(GEN_C_FILES) 123 VBoxOGL_SOURCES.win := wgl.c icd_drv.c ogl_hgcm.c VBoxCROGL.rc $(GEN_ASM_FILES.win) $(GEN_C_FILES.win) 124 VBoxOGL_SOURCES.linux := $(PATH_TARGET)/VBoxOGL/linux_exports.asm glx.c xfont.c 125 VBoxOGL_DEPS.win := $(GEN_H_FILES.win) 126 VBoxOGL_CLEAN := $(GEN_C_FILES) 127 VBoxOGL_CLEAN.win := $(GEN_ASM_FILES.win) $(GEN_H_FILES.win) $(GEN_C_FILES.win) 128 129 ifeq ($(THREADSAFE), 1) 130 VBoxOGL_DEFS += CHROMIUM_THREADSAFE 131 VBoxOGL_SOURCES += $(PATH_TARGET)/VBoxOGL/tsfuncs.c 132 VBoxOGL_CLEAN += $(PATH_TARGET)/VBoxOGL/tsfuncs.c 133 endif 134 135 VBoxOGL_LIBS.win = \ 46 $(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c \ 47 $(VBOX_PATH_CROGL_GENFILES)/NULLfuncs.c \ 48 $(VBOX_PATH_CROGL_GENFILES)/tsfuncs.c 49 VBoxOGL_SOURCES.linux = \ 50 glx.c \ 51 xfont.c \ 52 $(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm 53 VBoxOGL_SOURCES.win = \ 54 wgl.c \ 55 icd_drv.c \ 56 ogl_hgcm.c \ 57 VBoxCROGL.rc \ 58 $(VBOX_PATH_CROGL_GENFILES)/windows_exports.asm \ 59 $(VBOX_PATH_CROGL_GENFILES)/cropengl.def 60 VBoxOGL_CLEAN = \ 61 $(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c \ 62 $(VBOX_PATH_CROGL_GENFILES)/NULLfuncs.c \ 63 $(VBOX_PATH_CROGL_GENFILES)/tsfuncs.c 64 VBoxOGL_CLEAN.linux = \ 65 $(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm 66 VBoxOGL_CLEAN.win = \ 67 $(VBOX_PATH_CROGL_GENFILES)/windows_exports.asm \ 68 $(VBOX_PATH_CROGL_GENFILES)/cropengl.def 69 VBoxOGL_LIBS = \ 136 70 $(VBOX_LIB_IPRT_GUEST_R3) \ 137 71 $(VBOX_LIB_VBGL_R3) \ 138 $( PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) \139 $(PATH_ OBJ)/VBoxOGLcrutil/VBoxOGLcrutil$(VBOX_SUFF_LIB)140 if1of ($(KBUILD_TARGET), linux solaris) ## @todo r=bird: See dll comment else where.72 $(VBOX_LIB_OGL_CRUTIL) \ 73 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) 74 if1of ($(KBUILD_TARGET),linux solaris) 141 75 VBoxOGL_LIBS += \ 142 $(VBOX_LIB_IPRT_GUEST_R3) \143 $(VBOX_LIB_VBGL_R3) \144 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) \145 $(VBOX_PATH_ADDITIONS)/VBoxOGLcrutil$(VBOX_SUFF_DLL) \146 76 Xcomposite 147 77 endif 148 78 79 # 80 # Generate files for VBoxOGL. 81 # 82 $(VBOX_PATH_CROGL_GENFILES)/NULLfuncs.c: $(PATH_SUB_CURRENT)/NULLfuncs.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 83 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 84 $(VBOX_PATH_CROGL_GENFILES)/tsfuncs.c: $(PATH_SUB_CURRENT)/tsfuncs.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 85 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 86 87 ifeq ($(KBUILD_TARGET),win) 88 $(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c: $(PATH_SUB_CURRENT)/windows_getprocaddress.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 89 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 90 $(VBOX_PATH_CROGL_GENFILES)/cropengl.def: $(PATH_SUB_CURRENT)/defs.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 91 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 92 $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h: $(PATH_SUB_CURRENT)/cr_gl.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 93 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 94 $(VBOX_PATH_CROGL_GENFILES)/windows_exports.asm: \ 95 $(PATH_SUB_CURRENT)/windows_i386_exports.py \ 96 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \ 97 | $$(dir $$@) 98 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 99 else ifeq ($(KBUILD_TARGET),linux) 100 $(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c: $(PATH_SUB_CURRENT)/getprocaddress.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 101 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 102 $(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm: \ 103 $(PATH_SUB_CURRENT)/Linux_i386_exports.py \ 104 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \ 105 | $$(dir $$@) 106 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 107 endif 108 109 # 110 # VBoxOGLarrayspu 111 # 112 VBoxOGLarrayspu_TEMPLATE = VBOXCROGLR3GUESTDLL 113 VBoxOGLarrayspu_INCS = \ 114 array 115 VBoxOGLarrayspu_INCS.darwin += $(PATH_OUT)/obj/VBoxOGL 116 VBoxOGLarrayspu_INTERMEDIATES = \ 117 $(VBOX_PATH_CROGL_GENFILES)/state/cr_currentpointers.h \ 118 $(VBOX_PATH_CROGL_GENFILES)/state/cr_statefuncs.h 119 VBoxOGLarrayspu_SOURCES = \ 120 array/arrayspu.c \ 121 array/arrayspu_config.c \ 122 array/arrayspu_init.c 123 VBoxOGLarrayspu_SOURCES.win = \ 124 array/arrayspu.def 125 VBoxOGLarrayspu_LIBS = \ 126 $(VBOX_LIB_OGL_CRUTIL) \ 127 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) \ 128 $(PATH_LIB)/additions/VBoxOGLcrstate$(VBOX_SUFF_LIB) 129 130 # 131 # VBoxOGLpassthroughspu 132 # 133 VBoxOGLpassthroughspu_TEMPLATE = VBOXCROGLR3GUESTDLL 134 VBoxOGLpassthroughspu_INCS = \ 135 passthrough 136 VBoxOGLpassthroughspu_SOURCES = \ 137 passthrough/passthroughspu_init.c \ 138 $(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c 139 VBoxOGLpassthroughspu_SOURCES.win = \ 140 passthrough/passthrough.def 141 VBoxOGLpassthroughspu_CLEAN = \ 142 $(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c 143 VBoxOGLpassthroughspu_LIBS = \ 144 $(VBOX_LIB_OGL_CRUTIL) 145 146 # 147 # Generate files for VBoxOGLpassthroughspu. 148 # 149 $(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c: $(PATH_SUB_CURRENT)/passthrough/passthrough.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 150 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) 151 152 # 153 # VBoxOGLpackspu 154 # 155 VBoxOGLpackspu_TEMPLATE = VBOXCROGLR3GUESTDLL 156 VBoxOGLpackspu_DEFS = TRACKS_STATE=1 PACKS=1 157 VBoxOGLpackspu_INCS = \ 158 pack 159 VBoxOGLpackspu_INTERMEDIATES = \ 160 $(VBOX_PATH_CROGL_GENFILES)/packspu_proto.h 161 VBoxOGLpackspu_SOURCES = \ 162 pack/packspu_bufferobject.c \ 163 pack/packspu_client.c \ 164 pack/packspu_config.c \ 165 pack/packspu_context.c \ 166 pack/packspu_getstring.c \ 167 pack/packspu_init.c \ 168 pack/packspu_misc.c \ 169 pack/packspu_net.c \ 170 pack/packspu_swapbuf.c \ 171 pack/packspu_pixel.c \ 172 $(VBOX_PATH_CROGL_GENFILES)/packspu.c \ 173 $(VBOX_PATH_CROGL_GENFILES)/packspu_get.c \ 174 $(VBOX_PATH_CROGL_GENFILES)/packspu_flush.c \ 175 $(VBOX_PATH_CROGL_GENFILES)/packspu_beginend.c 176 VBoxOGLpackspu_SOURCES.win = \ 177 pack/pack.def 178 VBoxOGLpackspu_CLEAN = \ 179 $(VBOX_PATH_CROGL_GENFILES)/packspu_proto.h \ 180 $(VBOX_PATH_CROGL_GENFILES)/packspu.c \ 181 $(VBOX_PATH_CROGL_GENFILES)/packspu_get.c \ 182 $(VBOX_PATH_CROGL_GENFILES)/packspu_flush.c \ 183 $(VBOX_PATH_CROGL_GENFILES)/packspu_beginend.c 184 VBoxOGLpackspu_LIBS = \ 185 $(VBOX_LIB_OGL_CRUTIL) \ 186 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) \ 187 $(PATH_LIB)/additions/VBoxOGLcrstate$(VBOX_SUFF_LIB) \ 188 $(PATH_LIB)/additions/VBoxOGLcrpacker$(VBOX_SUFF_LIB) 189 190 # 191 # Generate files for VBoxOGLpackspu. 192 # 193 $(VBOX_PATH_CROGL_GENFILES)/packspu.c: $(addprefix $(PATH_SUB_CURRENT)/pack/,pack.py packspu_special packspu_unimplemented_special) $(VBOX_CROGL_API_FILES) | $$(dir $$@) 194 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D) 195 196 $(VBOX_PATH_CROGL_GENFILES)/packspu_get.c: $(PATH_SUB_CURRENT)/pack/packspu_get.py $(PATH_SUB_CURRENT)/pack/packspu_special $(PATH_ROOT)/src/VBox/HostServices/SharedOpenGL/crserverlib/get_sizes.py $(VBOX_CROGL_API_FILES) | $$(dir $$@) 197 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D) 198 199 $(VBOX_PATH_CROGL_GENFILES)/packspu_flush.c: $(PATH_SUB_CURRENT)/pack/packspu_flush.py $(PATH_SUB_CURRENT)/pack/packspu_flush_special $(VBOX_CROGL_API_FILES) | $$(dir $$@) 200 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D) 201 202 $(VBOX_PATH_CROGL_GENFILES)/packspu_beginend.c: $(PATH_SUB_CURRENT)/pack/packspu_beginend.py $(PATH_SUB_CURRENT)/pack/packspu_vertex_special $(VBOX_CROGL_API_FILES) | $$(dir $$@) 203 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D) 204 205 $(VBOX_PATH_CROGL_GENFILES)/packspu_proto.h: $(addprefix $(PATH_SUB_CURRENT)/pack/,packspu_proto.py packspu_special packspu_unimplemented_special) $(VBOX_CROGL_API_FILES) | $$(dir $$@) 206 $(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D) 207 149 208 include $(KBUILD_PATH)/subfooter.kmk 150 209
Note:
See TracChangeset
for help on using the changeset viewer.