xref: /xnu-11417.140.69/tests/vm/Makefile (revision 43a90889846e00bfb5cf1d255cdc0a701a1e05a4)
1INCLUDED_TEST_SOURCE_DIRS += vm
2
3# Revert to legacy vm_test suite until <rdar://problem/56675212> gets solved
4EXCLUDED_SOURCES += vm/vm_allocation.c
5
6EXCLUDED_SOURCES += jumbo_va_spaces_common.c
7
8ifeq ($(PLATFORM),$(filter $(PLATFORM),iphoneos iPhoneOS XROS))
9OTHER_TEST_TARGETS += vm/entitlement_increased_memory_limit vm/entitlement_increased_memory_limit_unentitled vm/entitlement_increased_debugging_memory_limit
10
11vm/entitlement_increased_memory_limit: CODE_SIGN_ENTITLEMENTS = vm/entitlement_increased_memory_limit.entitlements
12vm/entitlement_increased_memory_limit: OTHER_CFLAGS += -DENTITLED=1 jumbo_va_spaces_common.c
13vm/entitlement_increased_memory_limit: OTHER_LDFLAGS += -ldarwintest_utils memorystatus_assertion_helpers.c
14vm/entitlement_increased_memory_limit: vm/entitlement_increased_memory_limit.c
15	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@
16	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none --entitlements $(CODE_SIGN_ENTITLEMENTS) $(SYMROOT)/$@;
17
18vm/entitlement_increased_memory_limit_unentitled: OTHER_LDFLAGS += -ldarwintest_utils memorystatus_assertion_helpers.c
19vm/entitlement_increased_memory_limit_unentitled: vm/entitlement_increased_memory_limit.c jumbo_va_spaces_common.c
20	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@
21
22vm/entitlement_increased_debugging_memory_limit: CODE_SIGN_ENTITLEMENTS = vm/entitlement_increased_debugging_memory_limit.entitlements
23vm/entitlement_increased_debugging_memory_limit: OTHER_CFLAGS += -DENTITLED_DEBUGGING=1 jumbo_va_spaces_common.c
24vm/entitlement_increased_debugging_memory_limit: OTHER_LDFLAGS += -ldarwintest_utils memorystatus_assertion_helpers.c
25vm/entitlement_increased_debugging_memory_limit: vm/entitlement_increased_memory_limit.c
26	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@
27	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none --entitlements $(CODE_SIGN_ENTITLEMENTS) $(SYMROOT)/$@;
28
29# Patch bincompat entitlement increased memory limit test manually to report an iOS SDK.
30# (Sorry to anyone looking at this in the future. If there's a better way of doing this, please do so)
31ifeq ($(PLATFORM),XROS)
32OTHER_TEST_TARGETS += vm/entitlement_increased_memory_limit_bincompat
33vm/entitlement_increased_memory_limit_bincompat: CODE_SIGN_ENTITLEMENTS = vm/entitlement_increased_memory_limit.entitlements
34vm/entitlement_increased_memory_limit_bincompat: OTHER_CFLAGS += -DENTITLED=1 -DBINCOMPAT=1 jumbo_va_spaces_common.c
35vm/entitlement_increased_memory_limit_bincompat: OTHER_LDFLAGS += -ldarwintest_utils memorystatus_assertion_helpers.c
36vm/entitlement_increased_memory_limit_bincompat: vm/entitlement_increased_memory_limit.c
37	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@.xros
38	$(shell /usr/bin/xcrun -sdk $(SDKROOT) -find vtool) -set-build-version 2 19.0 19.0 -replace -output $(SYMROOT)/$@ $(SYMROOT)/$@.xros
39	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none --entitlements $(CODE_SIGN_ENTITLEMENTS) $(SYMROOT)/$@;
40endif
41
42else
43EXCLUDED_SOURCES += vm/entitlement_increased_memory_limit.c
44endif
45
46ifeq ($(IOS_TEST_COMPAT),YES)
47OTHER_TEST_TARGETS += jumbo_va_spaces_28530648_unentitled jumbo_va_spaces_52551256 vm_phys_footprint_legacy vm/ios13extended_footprint vm/memorystatus_freeze_test vm/memorystatus_freeze_test_entitled vm/entitlement_internal_bands vm/entitlement_internal_bands_unentitled
48
49jumbo_va_spaces_28530648: CODE_SIGN_ENTITLEMENTS = jumbo_va_spaces_28530648.entitlements
50jumbo_va_spaces_28530648: OTHER_CFLAGS += -DENTITLED=1 -DTESTNAME=jumbo_va_spaces_28530648
51jumbo_va_spaces_28530648: jumbo_va_spaces_common.c
52jumbo_va_spaces_28530648: OTHER_LDFLAGS += -ldarwintest_utils
53jumbo_va_spaces_28530648: OTHER_LDFLAGS += -sectcreate __TEXT __info_plist jumbo_va_spaces_28530648-identifier.plist
54
55jumbo_va_spaces_52551256: CODE_SIGN_ENTITLEMENTS = jumbo_va_spaces_52551256.entitlements
56jumbo_va_spaces_52551256: OTHER_CFLAGS += -DENTITLED=1 -DTESTNAME=jumbo_va_spaces_52551256
57jumbo_va_spaces_52551256: OTHER_LDFLAGS += -ldarwintest_utils
58jumbo_va_spaces_52551256: jumbo_va_spaces_28530648.c jumbo_va_spaces_common.c
59	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@
60	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none --entitlements $(CODE_SIGN_ENTITLEMENTS) $(SYMROOT)/$@;
61
62jumbo_va_spaces_28530648_unentitled: OTHER_LDFLAGS += -ldarwintest_utils
63jumbo_va_spaces_28530648_unentitled: OTHER_CFLAGS += -DTESTNAME=jumbo_va_spaces_28530648_unentitled
64
65jumbo_va_spaces_28530648_unentitled: jumbo_va_spaces_28530648.c jumbo_va_spaces_common.c
66	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@
67
68vm/entitlement_internal_bands: CODE_SIGN_ENTITLEMENTS = vm/entitlement_internal_bands.entitlements
69vm/entitlement_internal_bands: OTHER_CFLAGS += -DENTITLED=1
70vm/entitlement_internal_bands: OTHER_LDFLAGS += -ldarwintest_utils
71vm/entitlement_internal_bands: vm/entitlement_internal_bands.c memorystatus_assertion_helpers.c
72	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@
73	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none --entitlements $(CODE_SIGN_ENTITLEMENTS) $(SYMROOT)/$@;
74
75vm/entitlement_internal_bands_unentitled: OTHER_LDFLAGS += -ldarwintest_utils
76vm/entitlement_internal_bands_unentitled: vm/entitlement_internal_bands.c memorystatus_assertion_helpers.c
77	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $^ -o $(SYMROOT)/$@
78	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none $(SYMROOT)/$@;
79
80vm/ios13extended_footprint: CODE_SIGN_ENTITLEMENTS = vm/ios13extended_footprint.entitlements
81vm/ios13extended_footprint: vm/ios13extended_footprint.c
82	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $< -o $(SYMROOT)/$@
83	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none --entitlements $(CODE_SIGN_ENTITLEMENTS) $(SYMROOT)/$@;
84
85vm_phys_footprint_legacy: OTHER_LDFLAGS += -framework CoreFoundation -framework IOSurface
86vm_phys_footprint_legacy: OTHER_CFLAGS += -DLEGACY_FOOTPRINT_ENTITLED=1
87vm_phys_footprint_legacy: CODE_SIGN_ENTITLEMENTS=./legacy_footprint.entitlement
88vm_phys_footprint_legacy: vm_phys_footprint.c
89	$(CC) $(DT_CFLAGS) $(OTHER_CFLAGS) $(CFLAGS) $(DT_LDFLAGS) $(OTHER_LDFLAGS) $(LDFLAGS) $< -o $(SYMROOT)/$@
90
91endif
92
93CUSTOM_TARGETS += vm/hello
94
95vm/hello: vm/hello.c
96	$(CC) $(LDFLAGS) $(CFLAGS) $< -o $(SYMROOT)/$@
97	env CODESIGN_ALLOCATE=$(CODESIGN_ALLOCATE) $(CODESIGN) --force --sign - --timestamp=none $(SYMROOT)/$@;
98
99.PHONY: install-vm/hello
100install-vm/hello: vm/hello
101	mkdir -p $(INSTALLDIR)/vm
102	cp $(SYMROOT)/vm/hello $(INSTALLDIR)/vm/
103
104vm/vm_tainted_executable: vm/hello
105
106vm/vm_ranges: CODE_SIGN_ENTITLEMENTS = ./vm/vm_ranges_entitlement.plist
107
108vm_test_mach_map: CODE_SIGN_ENTITLEMENTS = ./vm_test_mach_map.plist
109
110