VirtualBox

Changeset 16875 in vbox for trunk/src/VBox/Additions/WINNT


Ignore:
Timestamp:
Feb 17, 2009 9:15:53 PM (16 years ago)
Author:
vboxsync
Message:

crOpenGL: additions makefiles cleanup

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  
    11# $Id$
    22## @file
    3 # Sub-Makefile for the VirtualBox Windows Chromium OpenGL ICD.
     3# Sub-Makefile for the VirtualBox Guest OpenGL part
    44#
    55
     
    2323include $(KBUILD_PATH)/subheader.kmk
    2424
    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#
     28BLDDIRS += \
     29        $(VBOX_PATH_CROGL_GENFILES)/
     30
     31DLLS += VBoxOGL VBoxOGLarrayspu VBoxOGLpassthroughspu VBoxOGLpackspu
     32
     33#
     34# VBoxOGL
     35#
     36VBoxOGL_TEMPLATE       = VBOXCROGLR3GUESTDLL
     37VBoxOGL_INCS           = .
     38ifeq ($(KBUILD_TARGET),win)
     39#fixme?, INTERMEDIATES.win ain't working
     40 VBoxOGL_INTERMEDIATES += $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h
    3141endif
    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    := \
     42VBoxOGL_SOURCES        = \
    11943        load.c \
    12044        stub.c \
    12145        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
     49VBoxOGL_SOURCES.linux  = \
     50        glx.c \
     51        xfont.c \
     52        $(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm
     53VBoxOGL_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
     60VBoxOGL_CLEAN          = \
     61        $(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c \
     62        $(VBOX_PATH_CROGL_GENFILES)/NULLfuncs.c \
     63        $(VBOX_PATH_CROGL_GENFILES)/tsfuncs.c
     64VBoxOGL_CLEAN.linux    = \
     65        $(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm
     66VBoxOGL_CLEAN.win      = \
     67        $(VBOX_PATH_CROGL_GENFILES)/windows_exports.asm \
     68        $(VBOX_PATH_CROGL_GENFILES)/cropengl.def
     69VBoxOGL_LIBS = \
    13670        $(VBOX_LIB_IPRT_GUEST_R3) \
    13771        $(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)
     74if1of ($(KBUILD_TARGET),linux solaris)
    14175 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) \
    14676        Xcomposite
    14777endif
    14878
     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
     87ifeq ($(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)
     99else 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)
     107endif
     108
     109#
     110# VBoxOGLarrayspu
     111#
     112VBoxOGLarrayspu_TEMPLATE      = VBOXCROGLR3GUESTDLL
     113VBoxOGLarrayspu_INCS          = \
     114        array
     115VBoxOGLarrayspu_INCS.darwin  += $(PATH_OUT)/obj/VBoxOGL
     116VBoxOGLarrayspu_INTERMEDIATES = \
     117        $(VBOX_PATH_CROGL_GENFILES)/state/cr_currentpointers.h \
     118        $(VBOX_PATH_CROGL_GENFILES)/state/cr_statefuncs.h
     119VBoxOGLarrayspu_SOURCES       = \
     120        array/arrayspu.c \
     121        array/arrayspu_config.c \
     122        array/arrayspu_init.c
     123VBoxOGLarrayspu_SOURCES.win   = \
     124        array/arrayspu.def
     125VBoxOGLarrayspu_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#
     133VBoxOGLpassthroughspu_TEMPLATE    = VBOXCROGLR3GUESTDLL
     134VBoxOGLpassthroughspu_INCS        = \
     135        passthrough
     136VBoxOGLpassthroughspu_SOURCES     = \
     137        passthrough/passthroughspu_init.c \
     138        $(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c
     139VBoxOGLpassthroughspu_SOURCES.win = \
     140        passthrough/passthrough.def
     141VBoxOGLpassthroughspu_CLEAN       = \
     142        $(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c
     143VBoxOGLpassthroughspu_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#
     155VBoxOGLpackspu_TEMPLATE      = VBOXCROGLR3GUESTDLL
     156VBoxOGLpackspu_DEFS          = TRACKS_STATE=1 PACKS=1
     157VBoxOGLpackspu_INCS          = \
     158        pack
     159VBoxOGLpackspu_INTERMEDIATES = \
     160        $(VBOX_PATH_CROGL_GENFILES)/packspu_proto.h
     161VBoxOGLpackspu_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
     176VBoxOGLpackspu_SOURCES.win = \
     177        pack/pack.def
     178VBoxOGLpackspu_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
     184VBoxOGLpackspu_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
    149208include $(KBUILD_PATH)/subfooter.kmk
    150209
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette