VirtualBox

Changeset 15336 in vbox for trunk/src


Ignore:
Timestamp:
Dec 11, 2008 9:00:40 PM (16 years ago)
Author:
vboxsync
Message:

Use VBoxREMImp, hope this fixes the 32-bit linux issue...

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/recompiler_new/Makefile.kmk

    r15323 r15336  
    6262endif
    6363
     64## @todo Note to self (bird): Convert this mess to use NAME (that property didn't exist when the REM_MOD hack was first made I think).
     65
    6466# For 64-bit Windows we currently use gcc (due to MSVC unaware of such a novel
    6567# thing as C99, a lot of GCC extensions deployed by QEMU and calling convention
    6668# differences) to cross-compile code to Linux/ELF and dynamically generate invocation wrappers.
    6769if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), win.amd64)
     70 VBOX_USE_REM2 = 1
    6871 REM_MOD := VBoxREM2
    6972else
     
    7578#
    7679ifeq ($(REM_MOD),VBoxREM2)
    77  SYSMODS     += VBoxREM2
     80 SYSMODS += VBoxREM2
    7881endif
    7982
    8083ifndef VBOX_USE_REM64
    81  ifeq ($(KBUILD_TARGET),win)
    82   DLLS        += VBoxREM
    83  else
    84   ## @todo this is wrong, proper DLLS are DLLS not IMPORT_LIBS. nice try ;-)
    85   IMPORT_LIBS += VBoxREM
    86  endif
     84 DLLS    += VBoxREM
    8785endif
    8886
     
    10199$(REM_MOD)_CFLAGS.release += -fno-gcse -O2
    102100$(REM_MOD)_CFLAGS.profile  = $($(REM_MOD)_CFLAGS.release)
    103 VBoxREM_LIBS               = \
    104         $(LIB_VMM) \
    105         $(LIB_RUNTIME)
    106101$(REM_MOD)_DEFS           += IN_RING3 $(ARCH_BITS_DEFS)
    107102# Temporary hack, to allow running with oldish GCC
     
    171166$(REM_MOD)_INCS           += \
    172167        Sun/crt
     168$(REM_MOD)_SYSSUFF         = .rel
     169endif
     170ifdef VBOX_USE_REM2
    173171$(REM_MOD)_LIBS            = \
    174172        $(PATH_LIB)/RuntimeR3NoCRTGCC$(VBOX_SUFF_LIB)
    175 $(REM_MOD)_SYSSUFF         = .rel
     173else
     174$(REM_MOD)_LIBS            = \
     175        $(LIB_VMM) \
     176        $(LIB_RUNTIME)
     177$(REM_MOD)_LIBS.darwin     = \
     178        $(TARGET_VBoxREMImp)
    176179endif
    177180
     
    189192# The VBoxREM2 wrapper.
    190193#
     194## @todo Note to self: Merge with VBoxREMSel, call it VBoxREMWrapper and use name.
    191195VBoxREM_TEMPLATE           = VBOXR3
    192196VBoxREM_DEFS               = IN_REM_R3 $(if $(VBOX_WITH_VMI),VBOX_WITH_VMI,)
     
    199203
    200204ifdef VBOX_USE_REM64
     205## @todo Note to self: One should be the default config (VBoxREM) with a NAME, the 64 bit varian should be done like here.
     206 DLL                   += VBoxREM32 VBoxREM64 VBoxREMSel
    201207 VBoxREM32_EXTENDS    = VBoxREM
    202208 VBoxREM32_EXTENDS_BY = appending
    203209 VBoxREM32_TEMPLATE   = $(VBoxREM_TEMPLATE)
    204  VBoxREM32_LIBS       = $(LIB_RUNTIME)
    205210 VBoxREM32_LDFLAGS.darwin = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxREM32.dylib -undefined dynamic_lookup
    206211
     
    209214 VBoxREM64_TEMPLATE   = $(VBoxREM_TEMPLATE)
    210215 VBoxREM64_DEFS       = VBOX_ENABLE_VBOXREM64
    211  VBoxREM64_LIBS       = $(LIB_RUNTIME)
    212216 VBoxREM64_LDFLAGS.darwin = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxREM64.dylib -undefined dynamic_lookup
    213217
    214218 VBoxREMSel_TEMPLATE    = VBOXR3
    215219 VBoxREMSel_NAME        = VBoxREM
    216  VBoxREMImp_INST        = $(INST_LIB)# what's this about?
    217220 VBoxREMSel_DEFS        = IN_REM_R3 $(if $(VBOX_WITH_VMI),VBOX_WITH_VMI,)    \
    218221                          VBOX_WITH_NEW_RECOMPILER VBOX_USE_BITNESS_SELECTOR
     
    221224 VBoxREMSel_LDFLAGS.darwin = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxREM.dylib -undefined dynamic_lookup
    222225
    223  ifeq ($(KBUILD_TARGET), win)
    224   DLL                  += VBoxREM32 VBoxREM64 VBoxREMSel
    225  else
    226   IMPORT_LIBS          += VBoxREM32 VBoxREM64 VBoxREMSel
    227  endif
    228 
    229226endif # USE_VBOXREM64
    230227
    231228
    232 if1of ($(KBUILD_TARGET), os2 win)
    233229#
    234230# The VBoxREM import library.
     
    248244VBoxREMImp_SOURCES.win     = VBoxREM.def
    249245VBoxREMImp_SOURCES.os2     = $(PATH_VBoxREMImp)/VBoxREMOS2.def
    250  ifeq ($(filter win os2,$(KBUILD_TARGET)),)
     246 ifn1of ($(KBUILD_TARGET), os2 win)
    251247VBoxREMImp_SOURCES         = $(PATH_VBoxREMImp)/VBoxREMImp.c
    252248VBoxREMImp_CLEAN           = $(PATH_VBoxREMImp)/VBoxREMImp.c
    253249 endif
    254  ifneq ($(filter-out darwin os2 win,$(KBUILD_TARGET)),)
     250 ifn1of ($(KBUILD_TARGET), darwin os2 win)
    255251VBoxREMImp_SONAME          = VBoxREM$(SUFF_DLL)
    256252 endif
    257 VBoxREMImp_LDFLAGS.l4      = -T$(L4_LIBDIR)/../main_rel.ld -nostdlib
     253VBoxREMImp_LDFLAGS.darwin   = -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxREM.dylib
     254VBoxREMImp_LDFLAGS.l4       = -T$(L4_LIBDIR)/../main_rel.ld -nostdlib
    258255
    259256$$(PATH_VBoxREMImp)/VBoxREMImp.c: $(VBOX_PATH_RECOMPILER_SRC)/VBoxREM.def $(VBOX_PATH_RECOMPILER_SRC)/Sun/deftoimp.sed $(MAKEFILE_CURRENT) | $$(dir $$@)
     
    274271                --output $@ \
    275272                $<
    276 endif # USE_REM_IMP
    277273
    278274
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