VirtualBox

Changeset 95127 in vbox


Ignore:
Timestamp:
May 27, 2022 12:05:05 PM (3 years ago)
Author:
vboxsync
Message:

IPRT/Makefile.kmk: Better dependencies for the .def file generation/processing (noexcept/c++17).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/Makefile.kmk

    r95113 r95127  
    23612361        r3/win/dllmain-win.cpp \
    23622362         $(VBoxRT_0_OUTDIR)/VBoxRT.def
     2363VBoxRT_CLEAN.win              += \
     2364        $(VBoxRT_0_OUTDIR)/VBoxRT.def
    23632365VBoxRT_INCS                   := $(RuntimeR3_INCS)
    23642366VBoxRT_INCS.$(KBUILD_TARGET)  := $(RuntimeR3_INCS.$(KBUILD_TARGET))
     
    24152417        /delayload:oleaut32.dll \
    24162418        /delayload:advapi32.dll
    2417 
    2418 if1of ($(DLLS), VBoxRT)
    2419 VBoxRT_CLEAN += $(VBoxRT_0_OUTDIR)/VBoxRT.def
    2420 $$(VBoxRT_0_OUTDIR)/VBoxRT.def: \
    2421                 $(PATH_SUB_CURRENT)/r3/win/VBoxRT-$$(if-expr $$(KBUILD_TARGET_ARCH) == amd64,win64,win32).def \
    2422                 $(if-expr defined(VBOX_WITH_OPENSSL3)\
    2423                 ,$(PATH_SUB_CURRENT)/r3/win/VBoxRT-openssl-3.0.def \
    2424                 ,$(PATH_SUB_CURRENT)/r3/win/VBoxRT-openssl-1.1plus.def )\
    2425                 $(if-expr "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" && defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES)\
    2426                 ,$(PATH_SUB_CURRENT)/r3/win/VBoxRT-msvcr100-win32.def ,) \
    2427                 | $$(dir $$@) #$(PATH_SUB_CURRENT)/r3/win/VBoxRT-msvcp100-win32.def
    2428         $(RM) -f -- $@
    2429         $(SED)  --output "$@" \
    2430                 $(if-expr "$(KBUILD_TARGET_ARCH)" == "x86"  ,-e "/not-x86/d",  -e "/only-x86/d") \
    2431                 $(if-expr "$(KBUILD_TARGET_ARCH)" == "amd64",-e "/not-amd64/d",-e "/only-amd64/d") \
    2432                 $(if-expr "$(KBUILD_TARGET_ARCH)" == "arm64",-e "/not-arm64/d",-e "/only-arm64/d") \
    2433                 $(if-expr "$(substr $(if-expr $(KBUILD_TARGET) != 'win',$(VBOX_GCC_std), $(VBOX_VCC_std)),-2)" >= "17" \
    2434                                                             ,-e "/before-noexcept/d", -e "/after-noexcept/d") \
    2435                 $^
    2436 endif
    24372419
    24382420if1of (VBoxRT,$(DLLS))
     
    25032485endif # linux
    25042486
     2487if1of ($(DLLS), VBoxRT)
     2488 # .def file for windows.
     2489 $(call KB_FN_DO_PASS0_ON_TARGET,VBoxRT)
     2490 $(VBoxRT_0_OUTDIR)/VBoxRT.def: \
     2491                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-$$(if-expr $$(KBUILD_TARGET_ARCH) == amd64,win64,win32).def \
     2492                $(if-expr defined(VBOX_WITH_OPENSSL3)\
     2493                ,$(PATH_SUB_CURRENT)/r3/win/VBoxRT-openssl-3.0.def \
     2494                ,$(PATH_SUB_CURRENT)/r3/win/VBoxRT-openssl-1.1plus.def )\
     2495                $(if-expr "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" && defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES)\
     2496                ,$(PATH_SUB_CURRENT)/r3/win/VBoxRT-msvcr100-win32.def ,) \
     2497                | $$(dir $$@) #$(PATH_SUB_CURRENT)/r3/win/VBoxRT-msvcp100-win32.def
     2498        $(RM) -f -- $@
     2499        $(SED)  --output "$@" \
     2500                $(if-expr "$(KBUILD_TARGET_ARCH)" == "x86"  ,-e "/not-x86/d",  -e "/only-x86/d") \
     2501                $(if-expr "$(KBUILD_TARGET_ARCH)" == "amd64",-e "/not-amd64/d",-e "/only-amd64/d") \
     2502                $(if-expr "$(KBUILD_TARGET_ARCH)" == "arm64",-e "/not-arm64/d",-e "/only-arm64/d") \
     2503                $(if-expr "$(substr $(if-expr $(KBUILD_TARGET) != 'win',$(VBOX_GCC_std), $(VBOX_VCC_std)),-2)" >= "17" \
     2504                                                            ,-e "/before-noexcept/d", -e "/after-noexcept/d") \
     2505                $^
     2506        $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
     2507 $(call KB_FN_AUTO_CMD_DEPS,$(VBoxRT_0_OUTDIR)/VBoxRT.def)
     2508endif
     2509
    25052510
    25062511#
     
    25572562        $(VBoxRT-x86_0_OUTDIR)/VBoxRT-x86.def
    25582563VBoxRT-x86_CLEAN += $(VBoxRT-x86_0_OUTDIR)/VBoxRT-x86.def
     2564
     2565if1of (VBoxRT-x86,$(DLLS))
     2566 $(call VBOX_SET_VER_INFO_DLL,VBoxRT-x86,VirtualBox 32-bit Runtime)
     2567endif
     2568
    25592569if1of ($(DLLS), VBoxRT-x86)
    2560 $$(VBoxRT-x86_0_OUTDIR)/VBoxRT-x86.def: \
     2570 # .def file for windows.
     2571 $(call KB_FN_DO_PASS0_ON_TARGET,VBoxRT-x86)
     2572 $(VBoxRT-x86_0_OUTDIR)/VBoxRT-x86.def: \
    25612573                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win32.def \
    25622574                | $$(dir $$@) # Hopefully no need to export openssl here.
     
    25682580                $(if-expr "$(substr $(if-expr $(KBUILD_TARGET) != 'win',$(VBOX_GCC_std), $(VBOX_VCC_std)),-2)" >= "17" \
    25692581                                                            ,-e "/before-noexcept/d", -e "/after-noexcept/d") \
    2570                 $^
    2571 endif
    2572 
    2573 if1of (VBoxRT-x86,$(DLLS))
    2574  $(call VBOX_SET_VER_INFO_DLL,VBoxRT-x86,VirtualBox 32-bit Runtime)
     2582                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win32.def
     2583        $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
     2584 $(call KB_FN_AUTO_CMD_DEPS,$(VBoxRT-x86_0_OUTDIR)/VBoxRT-x86.def)
    25752585endif
    25762586
     
    26022612 VBoxRTStableCheck_CLEAN = \
    26032613        $(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm
     2614 $(call KB_FN_DO_PASS0_ON_TARGET,VBoxRTStableCheck)
     2615
    26042616 ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),win.amd64)
    2605 $$(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
    2606        $(PATH_SUB_CURRENT)/VBox/DefToAsmExterns.sed \
    2607         $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
    2608         $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-vcc64.def \
    2609         $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win64.def \
    2610         | $$(dir $$@)
     2617 $(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
     2618                $(PATH_SUB_CURRENT)/VBox/DefToAsmExterns.sed \
     2619                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
     2620                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-vcc64.def \
     2621                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win64.def \
     2622                | $$(dir $$@)
    26112623 else ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),win.x86)
    2612 $$(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
    2613        $(PATH_SUB_CURRENT)/VBox/DefToAsmExternsVcc32.sed \
    2614         $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
    2615         $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-vcc32.def \
    2616         $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win32.def | $$(dir $$@)
     2624 $(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
     2625                $(PATH_SUB_CURRENT)/VBox/DefToAsmExternsVcc32.sed \
     2626                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
     2627                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-vcc32.def \
     2628                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win32.def | $$(dir $$@)
    26172629 else
    2618 $$(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
    2619        $(PATH_SUB_CURRENT)/VBox/DefToAsmExterns.sed \
    2620         $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
    2621         $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-gcc.def | $$(dir $$@)
     2630 $(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
     2631                $(PATH_SUB_CURRENT)/VBox/DefToAsmExterns.sed \
     2632                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
     2633                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-gcc.def | $$(dir $$@)
    26222634 endif
    26232635        $(APPEND) -tn "$@" '%include "iprt/asmdefs.mac"' ''
     
    26342646                                                            ,-e "/before-noexcept/d", -e "/after-noexcept/d") \
    26352647                -f "$<" $(filter %.def, $^)
     2648        $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
     2649 $(call KB_FN_AUTO_CMD_DEPS,$(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm)
     2650
    26362651endif
    26372652endif ## @todo bugref:9898
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