Add PInvoke/SizeParamIndex tests (#19348)
[platform/upstream/coreclr.git] / tests / src / Interop / CMakeLists.txt
1 if(WIN32)
2     list(APPEND LINK_LIBRARIES_ADDITIONAL
3         ole32.lib
4         advapi32.lib
5         OleAut32.lib
6     )
7 endif(WIN32)
8
9 list(APPEND LINK_LIBRARIES_ADDITIONAL platformdefines)
10
11 # Consumed by native test assets
12 SET(CLR_INTEROP_TEST_ROOT ${CMAKE_CURRENT_SOURCE_DIR})
13
14 include_directories(common)
15 add_subdirectory(PInvoke/DllImportPath)
16 add_subdirectory(PInvoke/BestFitMapping/Char)
17 add_subdirectory(PInvoke/BestFitMapping/LPStr)
18 add_subdirectory(PInvoke/Delegate/MarshalDelegateAsField)
19 add_subdirectory(PInvoke/Delegate/MarshalDelegateAsParam)
20 add_subdirectory(PInvoke/Primitives/Int)
21 add_subdirectory(PInvoke/SizeParamIndex/PInvoke/PassingByOut)
22 add_subdirectory(PInvoke/SizeParamIndex/PInvoke/PassingByRef)
23 add_subdirectory(PInvoke/SizeParamIndex/ReversePInvoke/PassingByOut)
24 add_subdirectory(PInvoke/SizeParamIndex/ReversePInvoke/PassingByRef)
25 add_subdirectory(PInvoke/Array/MarshalArrayAsField/LPArrayNative)
26 add_subdirectory(PInvoke/Array/MarshalArrayAsParam/LPArrayNative)
27 add_subdirectory(PInvoke/Miscellaneous/HandleRef)
28 add_subdirectory(PInvoke/Miscellaneous/MultipleAssembliesWithSamePInvoke)
29 add_subdirectory(PInvoke/ExactSpelling)
30 add_subdirectory(PInvoke/AsAny)
31 add_subdirectory(NativeCallable)
32 add_subdirectory(PrimitiveMarshalling/Bool)
33 add_subdirectory(PrimitiveMarshalling/UIntPtr)
34 add_subdirectory(ArrayMarshalling/BoolArray)
35 add_subdirectory(ArrayMarshalling/ByValArray)
36 add_subdirectory(PrimitiveMarshalling/EnumMarshalling)
37 add_subdirectory(FuncPtrAsDelegateParam)
38 add_subdirectory(SimpleStruct)
39 add_subdirectory(StructMarshalling/PInvoke)
40 add_subdirectory(StructMarshalling/ReversePInvoke/MarshalExpStruct)
41 add_subdirectory(StructMarshalling/ReversePInvoke/MarshalSeqStruct)
42 add_subdirectory(BestFitMapping)
43 add_subdirectory(RefInt)
44 add_subdirectory(RefCharArray)
45 add_subdirectory(StringMarshalling/LPSTR)
46 add_subdirectory(StringMarshalling/LPTSTR)
47 add_subdirectory(StringMarshalling/UTF8)
48 add_subdirectory(StringMarshalling/BSTR)
49 add_subdirectory(StringMarshalling/AnsiBSTR)
50 add_subdirectory(MarshalAPI/FunctionPointer)
51 add_subdirectory(MarshalAPI/IUnknown)
52 add_subdirectory(SizeConst)
53 add_subdirectory(DllImportAttribute/ExeFile)
54 add_subdirectory(DllImportAttribute/FileNameContainDot)
55 add_subdirectory(DllImportAttribute/Simple)
56 add_subdirectory(ExecInDefAppDom)
57
58 if(WIN32)
59     add_subdirectory(PInvoke/Varargs)
60     add_subdirectory(PInvoke/NativeCallManagedComVisible)
61     # This test doesn't necessarily need to be Windows-only, but the implementation is very tied to Windows APIs
62     add_subdirectory(PInvoke/DateTime)
63     add_subdirectory(COM/NativeServer)
64     add_subdirectory(COM/NativeClients/Primitives)
65     add_subdirectory(IJW/FakeMscoree)
66
67     # IJW isn't supported on ARM64
68     if(NOT CLR_CMAKE_PLATFORM_ARCH_ARM64)
69         add_subdirectory(IJW/ManagedCallingNative/IjwNativeDll)
70         add_subdirectory(IJW/NativeCallingManaged/IjwNativeCallingManagedDll)
71     endif()
72 endif(WIN32)