VirtualBox

Changeset 106446 in vbox for trunk


Ignore:
Timestamp:
Oct 17, 2024 12:34:37 PM (6 weeks ago)
Author:
vboxsync
Message:

Runtime: Adjust Makefile.kmk to make it build the runtime on win.arm64, bugref:10392

Location:
trunk/src/VBox/Runtime
Files:
1 edited
3 moved

Legend:

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

    r106337 r106446  
    118118 endif
    119119 LIBRARIES.solaris += RuntimeR0Stub
    120  LIBRARIES.win += RuntimeR0Stub RuntimeR3NoCrt
     120 LIBRARIES.win += RuntimeR0Stub
     121 LIBRARIES.win.x86 += RuntimeR3NoCrt
     122 LIBRARIES.win.amd64 += RuntimeR3NoCrt
    121123 ifndef VBOX_WITH_PARFAIT
    122124  LIBRARIES.win.amd64 += RuntimeR3-x86
     
    151153
    152154# Always build the ntdll import libraries on windows.
    153 LIBRARIES.win += RuntimeR3NtDll-x86
     155if1of (amd64 x86, $(KBUILD_TARGET_ARCH) $(KBUILD_HOST_ARCH))
     156 LIBRARIES.win += RuntimeR3NtDll-x86
     157endif
    154158if1of (amd64, $(KBUILD_TARGET_ARCH) $(KBUILD_HOST_ARCH))
    155159 LIBRARIES.win += RuntimeR3NtDll-amd64
     160endif
     161if1of (arm64, $(KBUILD_TARGET_ARCH) $(KBUILD_HOST_ARCH))
     162 LIBRARIES.win += RuntimeR3NtDll-arm64
    156163endif
    157164
     
    337344        RT_WITHOUT_NOCRT_WRAPPERS \
    338345        NOFILEID
    339 if1of ($(KBUILD_TARGET_ARCH), amd64 x86)
     346if1of ($(KBUILD_TARGET_ARCH), amd64 x86 arm64)
    340347 RuntimeBaseR3_DEFS         += \
    341348        IN_SUP_R3
     
    883890        common/asm/ASMMemFill32-generic.cpp \
    884891        common/asm/ASMMemFirstMismatchingU8-generic.cpp \
    885         common/asm/ASMMemFirstNonZero-generic.cpp \
    886         common/misc/zero-alt.S
     892        common/asm/ASMMemFirstNonZero-generic.cpp
    887893RuntimeBaseR3_SOURCES.sparc32 += \
    888894        generic/RTMpGetDescription-generic-stub.cpp \
     
    11101116        r3/win/RTUuidCreate-win.cpp \
    11111117        win/errmsgwin.cpp \
    1112         win/RTErrConvertFromWin32.cpp \
    1113         common/string/mempcpy.asm
     1118        win/RTErrConvertFromWin32.cpp
    11141119
    11151120RuntimeBaseR3_SOURCES.win.amd64 := \
    11161121        $(RuntimeWin64ASM_SOURCES) \
    1117         common/string/memrchr.asm
     1122        common/string/memrchr.asm \
     1123        common/string/mempcpy.asm
    11181124RuntimeBaseR3_SOURCES.win.x86   := \
    11191125        $(RuntimeWin32ASM_SOURCES) \
    1120         common/string/memrchr.asm
     1126        common/string/memrchr.asm \
     1127        common/string/mempcpy.asm
     1128RuntimeBaseR3_SOURCES.win.arm64 := \
     1129        generic/RTMpGetDescription-generic-stub.cpp \
     1130        common/string/memrchr.cpp \
     1131        common/string/mempcpy.cpp \
     1132        common/string/RTStrMemFind32.cpp \
     1133        common/misc/zero.cpp \
     1134        generic/system-page-size-generic.cpp
    11211135
    11221136RuntimeBaseR3_SOURCES.linux = \
     
    12231237        r3/posix/system-page-size-posix.cpp \
    12241238        r3/linux/semevent-linux.cpp \
    1225         r3/linux/semeventmulti-linux.cpp
     1239        r3/linux/semeventmulti-linux.cpp \
     1240        common/misc/zero-alt.S
    12261241 RuntimeBaseR3_SOURCES.linux.arm32 += \
    12271242        generic/RTMpGetDescription-generic-stub.cpp \
    12281243        r3/posix/system-page-size-posix.cpp \
    12291244        r3/linux/semevent-linux.cpp \
    1230         r3/linux/semeventmulti-linux.cpp
     1245        r3/linux/semeventmulti-linux.cpp \
     1246        common/misc/zero-alt.S
    12311247 ifdef RT_NEW_LINUX_MUTEX_CODE
    12321248  RuntimeBaseR3_SOURCES.linux.amd64 += \
     
    14281444        common/string/mempcpy.cpp \
    14291445        common/string/memrchr.cpp \
     1446        common/misc/zero-alt.S \
    14301447        generic/system-page-size-generic.cpp \
    14311448        r3/darwin/RTMpGetDescription-generic.cpp
     
    14331450        common/string/mempcpy.cpp \
    14341451        common/string/memrchr.cpp \
     1452        common/misc/zero-alt.S \
    14351453        generic/system-page-size-generic.cpp \
    14361454        r3/darwin/RTMpGetDescription-generic.cpp
     
    26242642RuntimeBldProg_SOURCES.win = \
    26252643        common/dbg/dbgmoddbghelp.cpp \
    2626         common/string/mempcpy.asm \
    26272644        common/string/RTUtf16End.cpp \
    26282645        common/string/RTUtf16NLenEx.cpp \
     
    27082725RuntimeBldProg_SOURCES.win.amd64 := \
    27092726        $(RuntimeWin64ASM_SOURCES) \
     2727        common/string/mempcpy.asm \
    27102728        common/string/memrchr.asm
    27112729
    27122730RuntimeBldProg_SOURCES.win.x86   := \
    27132731        $(RuntimeWin32ASM_SOURCES) \
     2732        common/string/mempcpy.asm \
    27142733        common/string/memrchr.asm
     2734
     2735RuntimeBldProg_SOURCES.win.arm64 := \
     2736        $(RuntimeBaseR3_SOURCES.win.arm64) \
     2737        r3/win/mp-win.cpp
    27152738
    27162739## @todo reduce this
     
    30853108 $(call KB_FN_DO_PASS0_ON_TARGET,VBoxRT)
    30863109 $(VBoxRT_0_OUTDIR)/VBoxRT.def: \
    3087                 $(PATH_SUB_CURRENT)/r3/win/VBoxRT-$$(if-expr $$(KBUILD_TARGET_ARCH) == amd64,win64,win32).def \
     3110                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-$(KBUILD_TARGET_ARCH).def \
    30883111                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-openssl-3.0.def \
    30893112                $(if-expr "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" && defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) \
     
    31893212#
    31903213ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),win.amd64)
    3191  $(call VBOX_GENERATE_IMPORT_TARGET_FN,VBoxRTImp,VBoxRT,VBox/VBoxRTImp.def VBox/VBoxRTImp-vcc64.def r3/win/VBoxRT-win64.def)
     3214 $(call VBOX_GENERATE_IMPORT_TARGET_FN,VBoxRTImp,VBoxRT,VBox/VBoxRTImp.def VBox/VBoxRTImp-vcc64.def r3/win/VBoxRT-amd64.def)
    31923215else ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),win.x86)
    3193  $(call VBOX_GENERATE_IMPORT_TARGET_FN,VBoxRTImp,VBoxRT,VBox/VBoxRTImp.def VBox/VBoxRTImp-vcc32.def r3/win/VBoxRT-win32.def)
     3216 $(call VBOX_GENERATE_IMPORT_TARGET_FN,VBoxRTImp,VBoxRT,VBox/VBoxRTImp.def VBox/VBoxRTImp-vcc32.def r3/win/VBoxRT-x86.def)
     3217else ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),win.arm64)
     3218 $(call VBOX_GENERATE_IMPORT_TARGET_FN,VBoxRTImp,VBoxRT,VBox/VBoxRTImp.def VBox/VBoxRTImp-vcc-arm64.def r3/win/VBoxRT-arm64.def)
    31943219else
    31953220 $(call VBOX_GENERATE_IMPORT_TARGET_FN,VBoxRTImp,VBoxRT,VBox/VBoxRTImp.def VBox/VBoxRTImp-gcc.def)
     
    32203245                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
    32213246                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-vcc64.def \
    3222                 $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win64.def \
     3247                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-amd64.def \
    32233248                | $$(dir $$@)
    32243249   else ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),win.x86)
     
    32273252                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
    32283253                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-vcc32.def \
    3229                 $(PATH_SUB_CURRENT)/r3/win/VBoxRT-win32.def | $$(dir $$@)
     3254                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-x86.def | $$(dir $$@)
     3255   else ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),win.arm64)
     3256    $(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
     3257                $(PATH_SUB_CURRENT)/VBox/DefToAsmExterns.sed \
     3258                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp.def \
     3259                $(PATH_SUB_CURRENT)/VBox/VBoxRTImp-vcc-arm64.def \
     3260                $(PATH_SUB_CURRENT)/r3/win/VBoxRT-arm64.def \
     3261                | $$(dir $$@)
    32303262   else
    32313263    $(VBoxRTStableCheck_0_OUTDIR)/VBoxRTStableCheckA.asm: \
     
    32883320        common/string/RTStrNICmpAscii.cpp \
    32893321        common/string/RTStrCopy.cpp \
    3290         common/string/RTStrEnd.asm \
    32913322        common/string/RTUtf16Copy.cpp \
    32923323        common/string/utf-16.cpp \
     
    33113342        common/string/strchr.asm \
    33123343        common/string/strcmp.asm \
    3313         common/string/strncmp.asm
     3344        common/string/strncmp.asm \
     3345        common/string/RTStrEnd.asm
     3346
    33143347RuntimeR3NoCrt_SOURCES.amd64 := \
    33153348        common/string/memcpy.asm \
     
    33213354        common/string/strchr.asm \
    33223355        common/string/strcmp.asm \
    3323         common/string/strncmp.asm
     3356        common/string/strncmp.asm \
     3357        common/string/RTStrEnd.asm
    33243358
    33253359RuntimeR3NoCrt_SOURCES.win := \
     
    38023836        common/path/RTPathChangeToUnixSlashes.cpp \
    38033837        common/math/bignum.cpp \
    3804         common/misc/zero.asm \
    38053838        common/string/RTStrPrintHexBytes.cpp \
    38063839        common/string/RTUtf16Copy.cpp \
     
    38163849        generic/memsafer-generic.cpp \
    38173850        common/misc/thread.cpp \
    3818         common/string/memcmp.asm \
    3819         common/string/memchr.asm \
    3820         common/string/memcpy.asm \
    3821         common/string/memset.asm \
    3822         common/string/memmove.asm \
    3823         common/string/strlen.asm \
    38243851        common/string/strncmp.cpp \
    38253852        common/string/strpbrk.cpp \
     
    38593886        r0drv/nt/time-r0drv-nt.cpp \
    38603887        r0drv/nt/timer-r0drv-nt.cpp \
    3861         r0drv/nt/toxic-chkstk-r0drv-nt.asm \
    38623888        r0drv/nt/RTTimerGetSystemGranularity-r0drv-nt.cpp
    38633889
    3864 RuntimeR0Drv_SOURCES.win.amd64 := $(RuntimeWin64ASM_SOURCES)
     3890RuntimeR0Drv_SOURCES.win.amd64 := $(RuntimeWin64ASM_SOURCES) \
     3891        common/misc/zero.asm \
     3892        common/string/memcmp.asm \
     3893        common/string/memchr.asm \
     3894        common/string/memcpy.asm \
     3895        common/string/memset.asm \
     3896        common/string/memmove.asm \
     3897        common/string/strlen.asm \
     3898        r0drv/nt/toxic-chkstk-r0drv-nt.asm
     3899
    38653900RuntimeR0Drv_SOURCES.win.x86   := $(RuntimeWin32ASM_SOURCES) \
     3901        common/misc/zero.asm \
     3902        common/string/memcmp.asm \
     3903        common/string/memchr.asm \
     3904        common/string/memcpy.asm \
     3905        common/string/memset.asm \
     3906        common/string/memmove.asm \
     3907        common/string/strlen.asm \
    38663908        r0drv/nt/nt3fakes-stub-r0drv-nt.cpp \
    3867         r0drv/nt/alloca-x86-r0drv-nt.asm
     3909        r0drv/nt/alloca-x86-r0drv-nt.asm \
     3910        r0drv/nt/toxic-chkstk-r0drv-nt.asm
    38683911
    38693912
     
    44814524                -e 's/^.*;;=[[:space:]]*\([^[:space:]]*\)[[:space:]]*$$/IMPLIB_EXPORT \1/' \
    44824525                $< --append $@
     4526
     4527 RuntimeR3NtDll-arm64_TEMPLATE    = VBoxR3Dll
     4528 RuntimeR3NtDll-arm64_BLD_TRG_ARCH = arm64
     4529 RuntimeR3NtDll-arm64_ARFLAGS     = /NODEFAULTLIB /MACHINE:arm64
     4530 RuntimeR3NtDll-arm64_SOURCES     = \
     4531        r3/win/ntdll-mini-implib.def
    44834532endif
    44844533
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