# $Id: Makefile.kmk 42503 2012-08-01 12:16:38Z vboxsync $ ## @file # Sub-Makefile for the IPRT testcases. # # # Copyright (C) 2006-2012 Oracle Corporation # # This file is part of VirtualBox Open Source Edition (OSE), as # available from http://www.virtualbox.org. This file is free software; # you can redistribute it and/or modify it under the terms of the GNU # General Public License (GPL) as published by the Free Software # Foundation, in version 2 as it comes in the "COPYING" file of the # VirtualBox OSE distribution. VirtualBox OSE is distributed in the # hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. # # The contents of this file may alternatively be used under the terms # of the Common Development and Distribution License Version 1.0 # (CDDL) only, as it comes in the "COPYING.CDDL" file of the # VirtualBox OSE distribution, in which case the provisions of the # CDDL are applicable instead of those of the GPL. # # You may elect to license modified versions of this file under the # terms and conditions of either the GPL or the CDDL or both. # SUB_DEPTH = ../../../.. include $(KBUILD_PATH)/subheader.kmk ifdef VBOX_WITH_TESTCASES # # Globals # # WARNING: Careful with this wrt to the other sub-makefiles this joins. # TEMPLATE = VBOXR3TSTEXE # Defined by the parent makefile as well (for errmsgdata.h). IPRT_OUT_DIR ?= $(PATH_TARGET)/Runtime # # Target lists # PROGRAMS += \ tstRTAssertCompile \ tstRTAvl \ tstRTBase64 \ tstRTBitOperations \ tstRTCidr \ tstRTCritSect \ tstRTCType \ tstRTDigest \ tstDir \ tstDir-2 \ tstDir-3 \ tstRTDvm \ tstEnv \ tstRTErrUnique \ tstFile \ tstRTFileAio \ tstRTFileAppend-1 \ tstRTFileGetSize-1 \ tstFileLock \ tstFork \ tstRTFsQueries \ tstRTFilesystem \ tstRTGetOpt \ tstRTGetOptArgv \ tstHandleTable \ tstRTHeapOffset \ tstRTHeapSimple \ tstRTInlineAsm \ tstIprtList \ tstIprtMiniString \ tstLdr \ tstLdrLoad \ tstRTList \ tstRTLockValidator \ tstLog \ tstMemAutoPtr \ tstRTMemEf \ tstRTMemCache \ tstRTMemPool \ tstRTMemWipe \ tstMove \ tstMp-1 \ tstOnce \ tstRTPath \ tstRTPipe \ tstRTPoll \ tstRTPrfIO \ tstRTProcCreateEx \ tstRTProcCreatePrf \ tstRTProcQueryUsername \ tstPrfRT \ tstRand \ tstRTReqPool \ tstRTSemEventMulti \ tstSemMutex \ tstSemPingPong \ tstRTSemRW \ tstRTSemXRoads \ tstRTSort \ tstRTStrAlloc \ tstRTStrCache \ tstRTStrCatCopy \ tstRTStrFormat \ tstStrSimplePattern \ tstStrToNum \ tstRTStrVersion \ tstRTSymlink \ tstRTSystemQueryDmi \ tstRTSystemQueryOsInfo \ tstRTTcp-1 \ tstRTTemp \ tstRTDirCreateUniqueNumbered \ tstTermCallbacks \ tstThread-1 \ tstRTThreadPoke \ tstRTThreadExecutionTime \ tstTime \ tstTime-2 \ tstTime-3 \ tstTime-4 \ tstTimer \ tstTimerLR \ tstRTTimeSpec \ tstUtf8 \ tstRTUuid \ tstRTCircBuf \ tstRTManifest \ tstRTUri \ tstVector PROGRAMS.win += \ tstRTProcWait \ tstRTCritSectW32 \ tstFileAppendWin-1 \ ntGetTimerResolution PROGRAMS.linux += \ tstRTProcWait \ tstRTProcIsRunningByName \ tstRTBitOperationsPIC3 \ tstRTInlineAsmPIC \ tstRTInlineAsmPIC3 PROGRAMS.solaris += \ tstRTCoreDump PROGRAMS.l4 += \ tstIoCtl PROGRAMS.darwin += \ tstDarwinSched \ tstRTDarwinMachKernel ifdef VBOX_WITH_LIBCURL PROGRAMS += \ tstRTS3 endif if1of ($(KBUILD_TARGET_ARCH), amd64 x86) PROGRAMS += \ tstLdr-2 \ tstLdr-3 \ tstLdr-4 \ tstNoCrt-1 \ tstRTR0MemUserKernelDriver \ tstRTR0SemMutexDriver \ tstRTR0TimerDriver \ tstR0ThreadPreemptionDriver \ tstTSC SYSMODS += \ tstLdrObjR0 \ tstRTR0MemUserKernel \ tstRTR0SemMutex \ tstRTR0Timer \ tstR0ThreadPreemption ifdef VBOX_WITH_RAW_MODE SYSMODS += tstLdrObj endif if1of ($(KBUILD_TARGET), solaris darwin) PROGRAMS += tstRTR0DbgKrnlInfoDriver SYSMODS += tstRTR0DbgKrnlInfo endif endif if1of ($(VBOX_LDR_FMT)), lx pe) LIBRARIES += \ tstLdr-4Imp endif # # Target configs in almost alphabetical order. # tstRTAssertCompile_TEMPLATE = VBOXR3TSTEXE tstRTAssertCompile_INSTTYPE = none tstRTAssertCompile_SOURCES = tstRTAssertCompile.cpp tstRTAvl_TEMPLATE = VBOXR3TSTEXE tstRTAvl_SOURCES = tstRTAvl.cpp tstRTBase64_TEMPLATE = VBOXR3TSTEXE tstRTBase64_SOURCES = tstRTBase64.cpp tstRTBitOperations_TEMPLATE = VBOXR3TSTEXE tstRTBitOperations_SOURCES = tstRTBitOperations.cpp tstRTBitOperationsPIC3_TEMPLATE = VBOXR3TSTEXE tstRTBitOperationsPIC3_SOURCES = tstRTBitOperations.cpp tstRTBitOperationsPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3 tstRTBitOperationsPIC3_DEFS = PIC tstRTCidr_TEMPLATE = VBOXR3TSTEXE tstRTCidr_SOURCES = tstRTCidr.cpp tstRTCritSect_TEMPLATE = VBOXR3TSTEXE tstRTCritSect_SOURCES = tstRTCritSect.cpp tstRTCritSectW32_TEMPLATE = VBOXR3TSTEXE tstRTCritSectW32_SOURCES = tstRTCritSect.cpp tstRTCritSectW32_DEFS = TRY_WIN32_CRIT tstRTCType_TEMPLATE = VBOXR3TSTEXE tstRTCType_SOURCES = tstRTCType.cpp tstRTDigest_SOURCES = tstRTDigest.cpp tstDir_TEMPLATE = VBOXR3TSTEXE tstDir_SOURCES = tstDir.cpp tstDir-2_TEMPLATE = VBOXR3TSTEXE tstDir-2_SOURCES = tstDir-2.cpp tstDir-3_TEMPLATE = VBOXR3TSTEXE tstDir-3_SOURCES = tstDir-3.cpp tstRTDvm_TEMPLATE = VBOXR3TSTEXE tstRTDvm_SOURCES = tstRTDvm.cpp tstEnv_TEMPLATE = VBOXR3TSTEXE tstEnv_SOURCES = tstEnv.cpp tstRTErrUnique_SOURCES = tstRTErrUnique.cpp tstRTErrUnique_INCS = $(IPRT_OUT_DIR)/ tstRTErrUnique.cpp_DEPS = $(IPRT_OUT_DIR)/errmsgdata.h # generate by ../Makefile.kmk tstFile_TEMPLATE = VBOXR3TSTEXE tstFile_SOURCES = tstFile.cpp tstRTFileAio_SOURCES = VBOXR3TSTEXE tstRTFileAio_SOURCES = tstRTFileAio.cpp tstRTFileAppend-1_TEMPLATE = VBOXR3TSTEXE tstRTFileAppend-1_SOURCES = tstRTFileAppend-1.cpp tstRTFileGetSize-1_TEMPLATE = VBOXR3TSTEXE tstRTFileGetSize-1_SOURCES = tstRTFileGetSize-1.cpp tstFileAppendWin-1_TEMPLATE = VBOXR3TSTEXE tstFileAppendWin-1_SOURCES = tstFileAppendWin-1.cpp tstFileLock_TEMPLATE = VBOXR3TSTEXE tstFileLock_SOURCES = tstFileLock.cpp tstFork_TEMPLATE = VBOXR3TSTEXE tstFork_SOURCES = tstFork.cpp tstRTFsQueries_TEMPLATE = VBOXR3TSTEXE tstRTFsQueries_SOURCES = tstRTFsQueries.cpp tstRTFilesystem_TEMPLATE = VBOXR3TSTEXE tstRTFilesystem_SOURCES = tstRTFilesystem.cpp tstRTGetOpt_TEMPLATE = VBOXR3TSTEXE tstRTGetOpt_SOURCES = tstRTGetOpt.cpp tstRTGetOptArgv_TEMPLATE = VBOXR3TSTEXE tstRTGetOptArgv_SOURCES = tstRTGetOptArgv.cpp tstHandleTable_SOURCES = tstHandleTable.cpp tstRTHeapOffset_TEMPLATE = VBOXR3TSTEXE tstRTHeapOffset_SOURCES = tstRTHeapOffset.cpp tstRTHeapSimple_TEMPLATE = VBOXR3TSTEXE tstRTHeapSimple_SOURCES = tstRTHeapSimple.cpp tstIoCtl_TEMPLATE = VBOXR3TSTEXE tstIoCtl_SOURCES = tstIoCtl.cpp tstRTInlineAsm_TEMPLATE = VBOXR3TSTEXE tstRTInlineAsm_SOURCES = tstRTInlineAsm.cpp tstRTInlineAsmPIC_TEMPLATE = VBOXR3TSTEXE tstRTInlineAsmPIC_SOURCES = tstRTInlineAsm.cpp tstRTInlineAsmPIC_CXXFLAGS = -fPIC tstRTInlineAsmPIC_DEFS = PIC tstRTInlineAsmPIC3_TEMPLATE = VBOXR3TSTEXE tstRTInlineAsmPIC3_SOURCES = tstRTInlineAsm.cpp tstRTInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3 tstRTInlineAsmPIC3_DEFS = PIC tstIprtList_TEMPLATE = VBOXR3TSTEXE tstIprtList_SOURCES = tstIprtList.cpp tstIprtMiniString_TEMPLATE = VBOXR3TSTEXE tstIprtMiniString_SOURCES = tstIprtMiniString.cpp tstLdr_TEMPLATE = VBOXR3TSTEXE tstLdr_SOURCES = tstLdr.cpp tstLdr-2_TEMPLATE = VBOXR3TSTEXE tstLdr-2_SOURCES = tstLdr-2.cpp tstLdr-2_DEFS = IN_DIS tstLdr-2_LIBS = \ $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) ifdef VBOX_WITH_RAW_MODE tstLdrObj_TEMPLATE = VBoxRc tstLdrObj_INST = $(INST_TESTCASE) tstLdrObj_SYSSUFF = .gc tstLdrObj_SOURCES = tstLdrObj.cpp tstLdrObj_DEFS = IN_DIS IN_RT_RC DIS_CORE_ONLY ifeq ($(VBOX_LDR_FMT32),elf) tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION endif tstLdrObj_LIBS = \ $(PATH_STAGE_LIB)/DisasmRC$(VBOX_SUFF_LIB) \ $(PATH_STAGE_LIB)/RuntimeRC$(VBOX_SUFF_LIB) ifeq ($(VBOX_LDR_FMT32),pe) tstLdrObj_LIBS += \ $(PATH_STAGE_LIB)/VMMRCBuiltin$(VBOX_SUFF_LIB) endif # PE ifeq ($(VBOX_LDR_FMT32),elf) tstLdrObj_LDFLAGS = -e Entrypoint endif ifeq ($(VBOX_LDR_FMT32),lx) tstLdrObj_LIBS += \ $(PATH_STAGE_LIB)/VMMRCBuiltin$(VBOX_SUFF_LIB) endif endif # VBOX_WITH_RAW_MODE tstLdr-3_TEMPLATE = VBOXR3TSTEXE tstLdr-3_SOURCES = tstLdr-3.cpp tstLdr-3_DEFS = IN_DIS tstLdr-3_LIBS = \ $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) tstLdr-4Imp_TEMPLATE = VBoxR0 ifeq ($(VBOX_LDR_FMT),lx) tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def else ifeq ($(VBOX_LDR_FMT),pe) tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def endif tstLdrObjR0_TEMPLATE = VBoxR0 tstLdrObjR0_INST = $(INST_TESTCASE) tstLdrObjR0_SYSSUFF = .r0 tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp tstLdrObjR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY ifeq ($(VBOX_LDR_FMT32),elf) tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION endif ifn1of ($(KBUILD_TARGET), win) tstLdrObjR0_CXXFLAGS = $(VBOX_GCC_Wno-array_bounds) endif tstLdrObjR0_LIBS = \ $(PATH_STAGE_LIB)/DisasmR0$(VBOX_SUFF_LIB) \ $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) ifeq ($(VBOX_LDR_FMT),pe) tstLdrObjR0_LIBS += \ $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) \ $(TARGET_tstLdr-4Imp) endif ifeq ($(VBOX_LDR_FMT),elf) tstLdrObjR0_LDFLAGS = -e Entrypoint endif ifeq ($(VBOX_LDR_FMT),lx) tstLdrObjR0_LIBS += \ $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) \ $(TARGET_tstLdr-4Imp) endif tstLdr-4_TEMPLATE = VBOXR3TSTEXE tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp tstLdr-4_DEFS = IN_DIS tstLdr-4_LIBS = \ $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) tstLdrLoad_TEMPLATE = VBOXR3TSTEXE tstLdrLoad_SOURCES = tstLdrLoad.cpp tstRTList_TEMPLATE = VBOXR3TSTEXE tstRTList_SOURCES = tstRTList.cpp tstRTLockValidator_TEMPLATE = VBOXR3TSTEXE tstRTLockValidator_SOURCES = tstRTLockValidator.cpp tstLog_TEMPLATE = VBOXR3TSTEXE tstLog_SOURCES = tstLog.cpp tstMemAutoPtr_TEMPLATE = VBOXR3TSTEXE tstMemAutoPtr_SOURCES = tstMemAutoPtr.cpp tstRTMemEf_TEMPLATE = VBOXR3TSTEXE tstRTMemEf_SOURCES = tstRTMemEf.cpp tstRTMemCache_TEMPLATE = VBOXR3TSTEXE tstRTMemCache_SOURCES = tstRTMemCache.cpp tstRTMemPool_TEMPLATE = VBOXR3TSTEXE tstRTMemPool_SOURCES = tstRTMemPool.cpp tstRTMemWipe_TEMPLATE = VBOXR3TSTEXE tstRTMemWipe_SOURCES = tstRTMemWipe.cpp tstMove_TEMPLATE = VBOXR3TSTEXE tstMove_SOURCES = tstMove.cpp tstMp-1_TEMPLATE = VBOXR3TSTEXE tstMp-1_SOURCES = tstMp-1.cpp tstNoCrt-1_TEMPLATE = VBOXR3TSTEXE tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES tstNoCrt-1_SOURCES = \ tstNoCrt-1.cpp \ ../common/string/memcpy.asm \ ../common/string/mempcpy.asm \ ../common/string/memmove.asm \ ../common/string/memset.asm \ ../common/string/memchr.asm \ ../common/string/memcmp.asm \ ../common/string/strchr.asm \ ../common/string/strcmp.asm \ ../common/string/strcpy.asm \ ../common/string/strlen.asm tstOnce_TEMPLATE = VBOXR3TSTEXE tstOnce_SOURCES = tstOnce.cpp tstRTPath_TEMPLATE = VBOXR3TSTEXE tstRTPath_SOURCES = tstRTPath.cpp tstRTPipe_TEMPLATE = VBOXR3TSTEXE tstRTPipe_SOURCES = tstRTPipe.cpp tstRTPoll_TEMPLATE = VBOXR3TSTEXE tstRTPoll_SOURCES = tstRTPoll.cpp tstPrfRT_TEMPLATE = VBOXR3TSTEXE tstPrfRT_SOURCES = tstPrfRT.cpp tstRTPrfIO_TEMPLATE = VBOXR3TSTEXE tstRTPrfIO_SOURCES = tstRTPrfIO.cpp tstRTProcCreateEx_TEMPLATE = VBOXR3TSTEXE tstRTProcCreateEx_SOURCES = tstRTProcCreateEx.cpp tstRTProcCreatePrf_TEMPLATE = VBOXR3TSTEXE tstRTProcCreatePrf_SOURCES = tstRTProcCreatePrf.cpp tstRTProcQueryUsername_TEMPLATE = VBOXR3TSTEXE tstRTProcQueryUsername_SOURCES = tstRTProcQueryUsername.cpp tstRTProcWait_TEMPLATE = VBOXR3TSTEXE tstRTProcWait_SOURCES = tstRTProcWait.cpp tstRTProcIsRunningByName_TEMPLATE = VBOXR3TSTEXE tstRTProcIsRunningByName_SOURCES = tstRTProcIsRunningByName.cpp tstRand_TEMPLATE = VBOXR3TSTEXE tstRand_SOURCES = tstRand.cpp tstRTReqPool_TEMPLATE = VBOXR3TSTEXE tstRTReqPool_SOURCES = tstRTReqPool.cpp tstRTS3_TEMPLATE = VBOXR3TSTEXE tstRTS3_SOURCES = tstRTS3.cpp tstSemMutex_TEMPLATE = VBOXR3TSTEXE tstSemMutex_SOURCES = tstSemMutex.cpp tstRTSemEventMulti_TEMPLATE = VBOXR3TSTEXE tstRTSemEventMulti_SOURCES = tstRTSemEventMulti.cpp tstRTSemRW_TEMPLATE = VBOXR3TSTEXE tstRTSemRW_SOURCES = tstRTSemRW.cpp tstSemPingPong_TEMPLATE = VBOXR3TSTEXE tstSemPingPong_SOURCES = tstSemPingPong.cpp tstRTSemXRoads_TEMPLATE = VBOXR3TSTEXE tstRTSemXRoads_SOURCES = tstRTSemXRoads.cpp tstRTSort_TEMPLATE = VBOXR3TSTEXE tstRTSort_SOURCES = tstRTSort.cpp tstRTStrAlloc_TEMPLATE = VBOXR3TSTEXE tstRTStrAlloc_SOURCES = tstRTStrAlloc.cpp tstRTStrCache_TEMPLATE = VBOXR3TSTEXE tstRTStrCache_SOURCES = tstRTStrCache.cpp tstRTStrCatCopy_TEMPLATE = VBOXR3TSTEXE tstRTStrCatCopy_SOURCES = tstRTStrCatCopy.cpp tstRTStrFormat_TEMPLATE = VBOXR3TSTEXE tstRTStrFormat_SOURCES = tstRTStrFormat.cpp tstStrSimplePattern_TEMPLATE = VBOXR3TSTEXE tstStrSimplePattern_SOURCES = tstStrSimplePattern.cpp tstStrToNum_TEMPLATE = VBOXR3TSTEXE tstStrToNum_SOURCES = tstStrToNum.cpp tstRTStrVersion_TEMPLATE = VBOXR3TSTEXE tstRTStrVersion_SOURCES = tstRTStrVersion.cpp tstRTSymlink_TEMPLATE = VBOXR3TSTEXE tstRTSymlink_SOURCES = tstRTSymlink.cpp tstRTSystemQueryDmi_TEMPLATE = VBOXR3TSTEXE tstRTSystemQueryDmi_SOURCES = tstRTSystemQueryDmi.cpp tstRTSystemQueryOsInfo_TEMPLATE = VBOXR3TSTEXE tstRTSystemQueryOsInfo_SOURCES = tstRTSystemQueryOsInfo.cpp tstRTTcp-1_TEMPLATE = VBOXR3TSTEXE tstRTTcp-1_SOURCES = tstRTTcp-1.cpp tstRTTemp_TEMPLATE = VBOXR3TSTEXE tstRTTemp_SOURCES = tstRTTemp.cpp tstRTDirCreateUniqueNumbered_TEMPLATE = VBOXR3TSTEXE tstRTDirCreateUniqueNumbered_SOURCES = tstRTDirCreateUniqueNumbered.cpp tstTermCallbacks_TEMPLATE = VBOXR3TSTEXE tstTermCallbacks_SOURCES = tstTermCallbacks.cpp tstThread-1_TEMPLATE = VBOXR3TSTEXE tstThread-1_SOURCES = tstThread-1.cpp tstRTThreadPoke_TEMPLATE = VBOXR3TSTEXE tstRTThreadPoke_SOURCES = tstRTThreadPoke.cpp tstRTThreadExecutionTime_TEMPLATE = VBOXR3TSTEXE tstRTThreadExecutionTime_SOURCES = tstRTThreadExecutionTime.cpp tstTime_TEMPLATE = VBOXR3TSTEXE tstTime_SOURCES = tstTime.cpp tstTime-2_TEMPLATE = VBOXR3TSTEXE tstTime-2_SOURCES = tstTime-2.cpp tstTime-3_TEMPLATE = VBOXR3TSTEXE tstTime-3_SOURCES = tstTime-3.cpp tstTime-4_TEMPLATE = VBOXR3TSTEXE tstTime-4_SOURCES = tstTime-4.cpp tstTimer_TEMPLATE = VBOXR3TSTEXE tstTimer_SOURCES = tstTimer.cpp tstTimerLR_TEMPLATE = VBOXR3TSTEXE tstTimerLR_SOURCES = tstTimerLR.cpp tstRTTimeSpec_TEMPLATE = VBOXR3TSTEXE tstRTTimeSpec_SOURCES = tstRTTimeSpec.cpp tstTSC_SOURCES = tstTSC.cpp tstTSC_CXXFLAGS.linux += -O3 tstRTUuid_TEMPLATE = VBOXR3TSTEXE tstRTUuid_SOURCES = tstRTUuid.cpp tstUtf8_TEMPLATE = VBOXR3TSTEXE tstUtf8_SOURCES = tstUtf8.cpp tstRTCircBuf_TEMPLATE = VBOXR3TSTEXE tstRTCircBuf_SOURCES = tstRTCircBuf.cpp tstRTManifest_TEMPLATE = VBOXR3TSTEXE tstRTManifest_SOURCES = tstRTManifest.cpp tstRTUri_TEMPLATE = VBOXR3TSTEXE tstRTUri_SOURCES = tstRTUri.cpp tstRTCoreDump_TEMPLACE = VBOXR3TSTEXE tstRTCoreDump_SOURCES = tstRTCoreDump.cpp tstVector_TEMPLATE = VBOXR3TSTEXE tstVector_SOURCES = tstVector.cpp # # Ring-0 testcases. # ## @todo create a template for compiling the ring-0 part. tstRTR0DbgKrnlInfo_TEMPLATE = VBoxR0 tstRTR0DbgKrnlInfo_INST = $(INST_TESTCASE) tstRTR0DbgKrnlInfo_DEFS = IN_RT_R0 tstRTR0DbgKrnlInfo_SYSSUFF = .r0 tstRTR0DbgKrnlInfo_SOURCES = tstRTR0DbgKrnlInfo.cpp tstRTR0DbgKrnlInfo_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) if1of ($(VBOX_LDR_FMT), pe lx) tstRTR0DbgKrnlInfo_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) endif tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBOXR3TSTEXE tstRTR0DbgKrnlInfoDriver_SOURCES = tstRTR0DbgKrnlInfoDriver.cpp tstRTR0MemUserKernel_TEMPLATE = VBoxR0 tstRTR0MemUserKernel_INST = $(INST_TESTCASE) tstRTR0MemUserKernel_DEFS = IN_RT_R0 tstRTR0MemUserKernel_SYSSUFF = .r0 tstRTR0MemUserKernel_SOURCES = tstRTR0MemUserKernel.cpp tstRTR0MemUserKernel_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) if1of ($(VBOX_LDR_FMT), pe lx) tstRTR0MemUserKernel_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) endif tstRTR0MemUserKernelDriver_TEMPLATE = VBOXR3TSTEXE tstRTR0MemUserKernelDriver_SOURCES = tstRTR0MemUserKernelDriver.cpp tstRTR0SemMutex_TEMPLATE = VBoxR0 tstRTR0SemMutex_INST = $(INST_TESTCASE) tstRTR0SemMutex_DEFS = IN_RT_R0 tstRTR0SemMutex_SYSSUFF = .r0 tstRTR0SemMutex_SOURCES = tstRTR0SemMutex.cpp tstRTR0SemMutex_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) if1of ($(VBOX_LDR_FMT), pe lx) tstRTR0SemMutex_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) endif tstRTR0SemMutexDriver_TEMPLATE = VBOXR3TSTEXE tstRTR0SemMutexDriver_SOURCES = tstRTR0SemMutexDriver.cpp tstRTR0Timer_TEMPLATE = VBoxR0 tstRTR0Timer_INST = $(INST_TESTCASE) tstRTR0Timer_DEFS = IN_RT_R0 tstRTR0Timer_SYSSUFF = .r0 tstRTR0Timer_SOURCES = tstRTR0Timer.cpp tstRTR0Timer_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) if1of ($(VBOX_LDR_FMT), pe lx) tstRTR0Timer_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) endif tstRTR0TimerDriver_TEMPLATE = VBOXR3TSTEXE tstRTR0TimerDriver_SOURCES = tstRTR0TimerDriver.cpp tstR0ThreadPreemption_TEMPLATE = VBoxR0 tstR0ThreadPreemption_INST = $(INST_TESTCASE) tstR0ThreadPreemption_DEFS = IN_RT_R0 tstR0ThreadPreemption_SYSSUFF = .r0 tstR0ThreadPreemption_SOURCES = tstR0ThreadPreemption.cpp tstR0ThreadPreemption_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) if1of ($(VBOX_LDR_FMT), pe lx) tstR0ThreadPreemption_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) endif tstR0ThreadPreemptionDriver_TEMPLATE = VBOXR3TSTEXE tstR0ThreadPreemptionDriver_SOURCES = tstR0ThreadPreemptionDriver.cpp # # Odds and ends. # tstDarwinSched_TEMPLATE = VBOXR3TSTEXE tstDarwinSched_SOURCES = tstDarwinSched.cpp tstRTDarwinMachKernel_TEMPLATE = VBOXR3TSTEXE tstRTDarwinMachKernel_INCS = ../include tstRTDarwinMachKernel_SOURCES = \ tstRTDarwinMachKernel.cpp \ ../r0drv/darwin/dbgkrnlinfo-r0drv-darwin.cpp ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp ntGetTimerResolution_SDKS.win = ReorderCompilerIncs $(VBOX_WINPSDK) $(VBOX_WINDDK) VBOX_NTDLL endif # VBOX_WITH_TESTCASES include $(FILE_KBUILD_SUB_FOOTER)