[bcl] Update BCL Linked Size (#17322)
[mono-project.git] / sdks / builds / ios.mk
blob571dbd797a8509fb701f638e6b2749f5a783771e
3 # Targets:
4 # - build-ios-<target>
5 # Build <target>
6 # - package-ios-<target>
7 # Install target into ../out/<target>
8 # - clean-ios-<target>
9 # Clean target
10 # Where <target> is: target32, target32s, target64, sim32, sim64, cross32, cross64
13 ios_FRAMEWORKS_DIR = $(TOP)/sdks/out/ios-frameworks
14 ios_LIBS_DIR = $(TOP)/sdks/out/ios-libs
15 ios_SOURCES_DIR = $(TOP)/sdks/out/ios-sources
16 ios_TPN_DIR = $(TOP)/sdks/out/ios-tpn
17 ios_MONO_VERSION = $(TOP)/sdks/out/ios-mono-version.txt
19 ios_ARCHIVE += ios-frameworks ios-libs ios-sources ios-tpn ios-mono-version.txt
20 ADDITIONAL_PACKAGE_DEPS += $(ios_FRAMEWORKS_DIR) $(ios_LIBS_DIR) $(ios_SOURCES_DIR) $(ios_TPN_DIR) $(ios_MONO_VERSION)
22 ios_PLATFORM_BIN=$(XCODE_DIR)/Toolchains/XcodeDefault.xctoolchain/usr/bin
25 # Device builds
27 # Parameters
28 # $(1): target (target32/target32s/target64)
29 # $(2): host triple
30 # $(3): host arch for compiler (armv7 or arm64)
32 # Flags:
33 # ios-$(1)_AC_VARS
34 # ios-$(1)_SYSROOT
35 # ios-$(1)_CONFIGURE_FLAGS
36 # ios-$(1)_CFLAGS
37 # ios-$(1)_CPPFLAGS
38 # ios-$(1)_CXXFLAGS
39 # ios-$(1)_LDFLAGS
40 # ios-$(1)_BITCODE_MARKER
42 # This handles tvos/watchos as well.
44 define iOSDeviceTemplate
46 _ios-$(1)_CC=$$(CCACHE) $$(ios_PLATFORM_BIN)/clang
47 _ios-$(1)_CXX=$$(CCACHE) $$(ios_PLATFORM_BIN)/clang++
49 _ios-$(1)_AC_VARS= \
50 ac_cv_c_bigendian=no \
51 ac_cv_func_fstatat=no \
52 ac_cv_func_readlinkat=no \
53 ac_cv_func_getpwuid_r=no \
54 ac_cv_func_posix_getpwuid_r=yes \
55 ac_cv_header_curses_h=no \
56 ac_cv_header_localcharset_h=no \
57 ac_cv_header_sys_user_h=no \
58 ac_cv_func_getentropy=no \
59 ac_cv_func_futimens=no \
60 ac_cv_func_utimensat=no \
61 ac_cv_func_shm_open_working_with_mmap=no \
62 mono_cv_sizeof_sunpath=104 \
63 mono_cv_uscore=yes
65 _ios-$(1)_CFLAGS= \
66 $$(ios-$(1)_SYSROOT) \
67 -arch $(3) \
68 -Wl,-application_extension \
69 -fexceptions \
70 $$(ios-$(1)_BITCODE_MARKER)
72 _ios-$(1)_CXXFLAGS= \
73 $$(ios-$(1)_SYSROOT) \
74 -arch $(3) \
75 -Wl,-application_extension \
76 $$(ios-$(1)_BITCODE_MARKER)
78 _ios-$(1)_CPPFLAGS= \
79 -DMONOTOUCH=1 \
80 $$(ios-$(1)_SYSROOT) \
81 -arch $(3) \
82 -DSMALL_CONFIG -D_XOPEN_SOURCE -DHOST_IOS -DHAVE_LARGE_FILE_SUPPORT=1 \
84 _ios-$(1)_LDFLAGS= \
85 -Wl,-no_weak_imports \
86 -arch $(3) \
87 -framework CoreFoundation \
88 -lobjc -lc++
90 _ios-$(1)_CONFIGURE_FLAGS = \
91 --disable-boehm \
92 --disable-btls \
93 --disable-executables \
94 --disable-icall-tables \
95 --disable-iconv \
96 --disable-mcs-build \
97 --disable-nls \
98 --disable-visibility-hidden \
99 --enable-dtrace=no \
100 --enable-icall-export \
101 --enable-maintainer-mode \
102 --enable-minimal=ssa,com,interpreter,jit,portability,assembly_remapping,attach,verifier,full_messages,appdomains,security,sgen_remset,sgen_marksweep_par,sgen_marksweep_fixed,sgen_marksweep_fixed_par,sgen_copying,logging,remoting,shared_perfcounters,gac \
103 --enable-monotouch \
104 --with-lazy-gc-thread-creation=yes \
105 --with-tls=pthread \
106 --without-ikvm-native \
107 --without-sigaltstack \
108 --disable-cooperative-suspend \
109 --disable-hybrid-suspend \
110 --disable-crash-reporting
112 .stamp-ios-$(1)-toolchain:
113 touch $$@
115 $$(eval $$(call RuntimeTemplate,ios,$(1),$(2),yes))
117 ## Create special versions of the .dylibs:
119 # We have the following requirements:
121 # * libmonosgen-2.0.dylib: must have miphone-version-min=7.0 (otherwise iOS 9 won't load it; see bug #34267).
122 # * libmono-profiler-log.dylib: same as libmonosgen-2.0.dylib
123 # * libmono-native-compat.dylib: same as libmonosgen-2.0.dylib
124 # * Mono.framework/Mono: must have miphone-version-min=8.0, otherwise the native linker won't add a LC_ENCRYPTION_INFO load command,
125 # which the App Store requires (see bug #32820). This is not a problem for libmonosgen-2.0.dylib, because that library is only
126 # used for incremental builds, which are not published).
128 # So what we do is to take the static library (libmonosgen-2.0.a), extract all the object files, and re-link
129 # them the required times according to how many versions we need.
131 $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmonosgen-2.0-minversion70.dylib: package-ios-$(1)
132 CC="$$(_ios-$(1)_CC)" $$(TOP)/sdks/builds/create-shared-library.sh $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmonosgen-2.0.a $$@ -arch $(3) -miphoneos-version-min=7.0 $$(ios_sysroot)
134 $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmono-profiler-log-minversion70.dylib: package-ios-$(1)
135 CC="$$(_ios-$(1)_CC)" $$(TOP)/sdks/builds/create-shared-library.sh $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmono-profiler-log-static.a $$@ -arch $(3) -miphoneos-version-min=7.0 $$(ios_sysroot) -L$$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib -lmonosgen-2.0
137 $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmono-native-compat-minversion70.dylib: package-ios-$(1)
138 CC="$$(_ios-$(1)_CC)" $$(TOP)/sdks/builds/create-shared-library.sh $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmono-native-compat.a $$@ -arch $(3) -miphoneos-version-min=7.0 $$(ios_sysroot) -L$$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib -lmonosgen-2.0 -framework GSS
140 $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmonosgen-2.0-minversion80.dylib: package-ios-$(1)
141 CC="$$(_ios-$(1)_CC)" $$(TOP)/sdks/builds/create-shared-library.sh $$(TOP)/sdks/out/ios-$(1)-$$(CONFIGURATION)/lib/libmonosgen-2.0.a $$@ -arch $(3) -miphoneos-version-min=8.0 $$(ios_sysroot)
143 endef
145 ios_sysroot_path = $(XCODE_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS$(IOS_VERSION).sdk
146 tvos_sysroot_path = $(XCODE_DIR)/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS$(TVOS_VERSION).sdk
147 watchos_sysroot_path = $(XCODE_DIR)/Platforms/WatchOS.platform/Developer/SDKs/WatchOS$(WATCHOS_VERSION).sdk
148 watchos64_32_sysroot_path = $(XCODE_DIR)/Platforms/WatchOS.platform/Developer/SDKs/WatchOS$(WATCHOS64_32_VERSION).sdk
150 ios_sysroot = -isysroot $(ios_sysroot_path)
151 tvos_sysroot = -isysroot $(tvos_sysroot_path)
152 watchos_sysroot = -isysroot $(watchos_sysroot_path)
153 watchos64_32_sysroot = -isysroot $(watchos64_32_sysroot_path)
155 # explicitly disable dtrace, since it requires inline assembly, which is disabled on AppleTV (and mono's configure.ac doesn't know that (yet at least))
156 ios-targettv_CONFIGURE_FLAGS = --enable-dtrace=no --enable-llvm-runtime --with-bitcode=yes
157 ios-targetwatch_CONFIGURE_FLAGS = --enable-cooperative-suspend --enable-llvm-runtime --with-bitcode=yes
158 ios-targetwatch64_32_CONFIGURE_FLAGS = --enable-cooperative-suspend --enable-llvm-runtime --with-bitcode=yes
160 ios-target32_SYSROOT = $(ios_sysroot) -miphoneos-version-min=$(IOS_VERSION_MIN)
161 ios-target32s_SYSROOT = $(ios_sysroot) -miphoneos-version-min=$(IOS_VERSION_MIN)
162 ios-target64_SYSROOT = $(ios_sysroot) -miphoneos-version-min=$(IOS_VERSION_MIN)
163 ios-targettv_SYSROOT = $(tvos_sysroot) -mtvos-version-min=$(TVOS_VERSION_MIN)
164 ios-targetwatch_SYSROOT = $(watchos_sysroot) -mwatchos-version-min=$(WATCHOS_VERSION_MIN)
165 ios-targetwatch64_32_SYSROOT = $(watchos64_32_sysroot) -mwatchos-version-min=$(WATCHOS64_32_VERSION_MIN)
167 ios-target32_CPPFLAGS = -DHOST_IOS
168 ios-target32s_CPPFLAGS = -DHOST_IOS
169 ios-target64_CPPFLAGS = -DHOST_IOS
170 ios-targettv_CPPFLAGS = -DHOST_IOS -DHOST_TVOS
171 ios-targetwatch_CPPFLAGS = -DHOST_IOS -DHOST_WATCHOS
172 ios-targetwatch64_32_CPPFLAGS = -DHOST_IOS -DHOST_WATCHOS
174 ios-targettv_CFLAGS = -fembed-bitcode -fno-gnu-inline-asm
175 ios-targettv_CXXFLAGS = -fembed-bitcode -fno-gnu-inline-asm
176 ios-targetwatch_CFLAGS = -fembed-bitcode -fno-gnu-inline-asm
177 ios-targetwatch_CXXFLAGS = -fembed-bitcode -fno-gnu-inline-asm
178 ios-targetwatch64_32_CFLAGS = -fembed-bitcode -fno-gnu-inline-asm
179 ios-targetwatch64_32_CXXFLAGS = -fembed-bitcode -fno-gnu-inline-asm
181 ios-targettv_LDFLAGS = -Wl,-bitcode_bundle -framework CoreFoundation -lobjc -lc++
182 ios-targetwatch_LDFLAGS = -Wl,-bitcode_bundle -framework CoreFoundation -lobjc -lc++
183 ios-targetwatch64_32_LDFLAGS = -Wl,-bitcode_bundle -framework CoreFoundation -lobjc -lc++
185 ios-targettv_AC_VARS = \
186 ac_cv_func_system=no \
187 ac_cv_func_pthread_kill=no \
188 ac_cv_func_kill=no \
189 ac_cv_func_sigaction=no \
190 ac_cv_func_fork=no \
191 ac_cv_func_execv=no \
192 ac_cv_func_execve=no \
193 ac_cv_func_execvp=no \
194 ac_cv_func_signal=no
195 ios-targetwatch_AC_VARS = $(ios-targettv_AC_VARS)
196 ios-targetwatch64_32_AC_VARS = $(ios-targettv_AC_VARS)
198 # ios-target32_BITCODE_MARKER=-fembed-bitcode-marker
199 $(eval $(call iOSDeviceTemplate,target32,arm-apple-darwin10,armv7))
200 $(eval $(call iOSDeviceTemplate,target32s,arm-apple-darwin10,armv7s))
201 # ios-target64_BITCODE_MARKER=-fembed-bitcode-marker
202 $(eval $(call iOSDeviceTemplate,target64,aarch64-apple-darwin10,arm64))
203 $(eval $(call iOSDeviceTemplate,targettv,aarch64-apple-darwin10,arm64))
204 $(eval $(call iOSDeviceTemplate,targetwatch,armv7k-apple-darwin10,armv7k))
205 $(eval $(call iOSDeviceTemplate,targetwatch64_32,aarch64-apple-darwin10_ilp32,arm64_32))
208 # Simulator builds
210 # Parameters
211 # $(1): target (sim32 or sim64)
212 # $(2): host triple
213 # $(3): host arch (i386 or x86_64)
215 # Flags:
216 # ios-$(1)_SYSROOT
217 # ios-$(1)_AC_VARS
218 # ios-$(1)_CFLAGS
219 # ios-$(1)_CPPFLAGS
220 # ios-$(1)_CXXFLAGS
221 # ios-$(1)_LDFLAGS
223 # This handles tvos/watchos as well.
225 define iOSSimulatorTemplate
227 _ios-$(1)_CC=$$(CCACHE) $$(ios_PLATFORM_BIN)/clang
228 _ios-$(1)_CXX=$$(CCACHE) $$(ios_PLATFORM_BIN)/clang++
230 _ios-$(1)_AC_VARS= \
231 ac_cv_func_clock_nanosleep=no \
232 ac_cv_func_fstatat=no \
233 ac_cv_func_readlinkat=no \
234 ac_cv_func_system=no \
235 ac_cv_func_getentropy=no \
236 ac_cv_func_futimens=no \
237 ac_cv_func_utimensat=no \
238 ac_cv_func_shm_open_working_with_mmap=no \
239 mono_cv_uscore=yes
241 _ios-$(1)_CFLAGS= \
242 $$(ios-$(1)_SYSROOT) \
243 -arch $(3) \
244 -Wl,-application_extension
246 _ios-$(1)_CPPFLAGS= \
247 -DMONOTOUCH=1 \
248 $$(ios-$(1)_SYSROOT) \
249 -arch $(3) \
250 -Wl,-application_extension
252 _ios-$(1)_CXXFLAGS= \
253 $$(ios-$(1)_SYSROOT) \
254 -arch $(3) \
255 -Wl,-application_extension
257 _ios-$(1)_CONFIGURE_FLAGS= \
258 --disable-boehm \
259 --disable-btls \
260 --disable-executables \
261 --disable-iconv \
262 --disable-mcs-build \
263 --disable-nls \
264 --disable-visibility-hidden \
265 --enable-maintainer-mode \
266 --enable-minimal=com,remoting,shared_perfcounters,gac \
267 --enable-monotouch \
268 --with-tls=pthread \
269 --without-ikvm-native \
270 --disable-cooperative-suspend \
271 --disable-hybrid-suspend \
272 --disable-crash-reporting
274 .stamp-ios-$(1)-toolchain:
275 touch $$@
277 $$(eval $$(call RuntimeTemplate,ios,$(1),$(2),yes))
279 endef
281 ios_sim_sysroot = -isysroot $(XCODE_DIR)/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator$(IOS_VERSION).sdk
282 tvos_sim_sysroot = -isysroot $(XCODE_DIR)/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator$(TVOS_VERSION).sdk
283 watchos_sim_sysroot = -isysroot $(XCODE_DIR)/Platforms/WatchSimulator.platform/Developer/SDKs/WatchSimulator$(WATCHOS_VERSION).sdk
285 ios-sim32_SYSROOT = $(ios_sim_sysroot) -mios-simulator-version-min=$(IOS_VERSION_MIN)
286 ios-sim64_SYSROOT = $(ios_sim_sysroot) -mios-simulator-version-min=$(IOS_VERSION_MIN)
287 ios-simtv_SYSROOT = $(tvos_sim_sysroot) -mtvos-simulator-version-min=$(TVOS_VERSION_MIN)
288 ios-simwatch_SYSROOT = $(watchos_sim_sysroot) -mwatchos-simulator-version-min=$(WATCHOS_VERSION_MIN)
290 ios-simwatch_CONFIGURE_FLAGS = --enable-cooperative-suspend
292 ios-sim32_CPPFLAGS = -DHOST_IOS
293 ios-sim64_CPPFLAGS = -DHOST_IOS
294 ios-simtv_CPPFLAGS = -DHOST_IOS -DHOST_TVOS
295 ios-simwatch_CPPFLAGS = -DHOST_IOS -DHOST_WATCHOS
297 ios-simtv_AC_VARS = \
298 ac_cv_func_pthread_kill=no \
299 ac_cv_func_kill=no \
300 ac_cv_func_sigaction=no \
301 ac_cv_func_fork=no \
302 ac_cv_func_execv=no \
303 ac_cv_func_execve=no \
304 ac_cv_func_execvp=no \
305 ac_cv_func_signal=no
306 ios-simwatch_AC_VARS = \
307 ac_cv_func_system=no \
308 ac_cv_func_pthread_kill=no \
309 ac_cv_func_kill=no \
310 ac_cv_func_sigaction=no \
311 ac_cv_func_fork=no \
312 ac_cv_func_execv=no \
313 ac_cv_func_execve=no \
314 ac_cv_func_execvp=no \
315 ac_cv_func_signal=no
317 $(eval $(call iOSSimulatorTemplate,sim32,i386-apple-darwin10,i386))
318 $(eval $(call iOSSimulatorTemplate,sim64,x86_64-apple-darwin10,x86_64))
319 $(eval $(call iOSSimulatorTemplate,simtv,x86_64-apple-darwin10,x86_64))
320 $(eval $(call iOSSimulatorTemplate,simwatch,i386-apple-darwin10,i386))
323 # Cross compiler builds
325 # Parameters:
326 # $(1): target (cross32 or cross64)
327 # $(2): host arch (i386 or x86_64)
328 # $(3): target arch (arm or aarch64)
329 # $(4): device target (target32, target64, ...)
330 # $(5): llvm
331 # $(6): offsets dumper abi
332 # $(7): sysroot path
334 # Flags:
335 # ios-$(1)_AC_VARS
336 # ios-$(1)_CFLAGS
337 # ios-$(1)_CXXFLAGS
338 # ios-$(1)_LDFLAGS
339 # ios-$(1)_CONFIGURE_FLAGS
340 define iOSCrossTemplate
342 _ios-$(1)_OFFSETS_DUMPER_ARGS=--libclang="$$(XCODE_DIR)/Toolchains/XcodeDefault.xctoolchain/usr/lib/libclang.dylib" --sysroot="$(7)"
343 _ios_$(1)_PLATFORM_BIN=$(XCODE_DIR)/Toolchains/XcodeDefault.xctoolchain/usr/bin
345 _ios-$(1)_CC=$$(CCACHE) $$(_ios_$(1)_PLATFORM_BIN)/clang
346 _ios-$(1)_CXX=$$(CCACHE) $$(_ios_$(1)_PLATFORM_BIN)/clang++
348 _ios-$(1)_AC_VARS= \
349 ac_cv_func_shm_open_working_with_mmap=no
351 _ios-$(1)_CFLAGS= \
352 $$(ios-$(1)_SYSROOT) \
353 -Qunused-arguments
355 _ios-$(1)_CXXFLAGS= \
356 $$(ios-$(1)_SYSROOT) \
357 -Qunused-arguments \
358 -stdlib=libc++
360 _ios-$(1)_CPPFLAGS= \
361 -DMONOTOUCH=1
363 _ios-$(1)_LDFLAGS= \
364 -stdlib=libc++
366 _ios-$(1)_CONFIGURE_FLAGS= \
367 --disable-boehm \
368 --disable-btls \
369 --disable-iconv \
370 --disable-libraries \
371 --disable-mcs-build \
372 --disable-nls \
373 --enable-dtrace=no \
374 --enable-icall-symbol-map \
375 --enable-minimal=com,remoting \
376 --enable-monotouch \
377 --disable-crash-reporting
379 $$(eval $$(call CrossRuntimeTemplate,ios,$(1),$(2)-apple-darwin10,$(3),$(4),$(5),$(6)))
381 endef
383 ios-cross32_SYSROOT=-isysroot $(XCODE_DIR)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$(MACOS_VERSION).sdk -mmacosx-version-min=$(MACOS_VERSION_MIN)
384 ios-crosswatch_SYSROOT=-isysroot $(XCODE_DIR)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$(MACOS_VERSION).sdk -mmacosx-version-min=$(MACOS_VERSION_MIN)
385 ios-cross64_SYSROOT=-isysroot $(XCODE_DIR)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$(MACOS_VERSION).sdk -mmacosx-version-min=$(MACOS_VERSION_MIN)
386 ios-crosswatch64_32_SYSROOT=-isysroot $(XCODE_DIR)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$(MACOS_VERSION).sdk -mmacosx-version-min=$(MACOS_VERSION_MIN)
387 ios-cross32-64_SYSROOT=-isysroot $(XCODE_DIR)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$(MACOS_VERSION).sdk -mmacosx-version-min=$(MACOS_VERSION_MIN)
389 ios-crosswatch_CONFIGURE_FLAGS=--enable-cooperative-suspend
391 $(eval $(call iOSCrossTemplate,cross32,x86_64,arm-darwin,target32,llvm-llvm64,arm-apple-darwin10,$(ios_sysroot_path)))
392 $(eval $(call iOSCrossTemplate,cross64,x86_64,aarch64-darwin,target64,llvm-llvm64,aarch64-apple-darwin10,$(ios_sysroot_path)))
393 $(eval $(call iOSCrossTemplate,crosswatch,x86_64,armv7k-unknown-darwin,targetwatch,llvm-llvm64,armv7k-apple-darwin,$(watchos_sysroot_path)))
394 $(eval $(call iOSCrossTemplate,crosswatch64_32,x86_64,aarch64-apple-darwin10_ilp32,targetwatch64_32,llvm-llvm64,aarch64-apple-darwin10_ilp32,$(watchos64_32_sysroot_path)))
397 $(ios_FRAMEWORKS_DIR): package-ios-target32 package-ios-target32s package-ios-target64 package-ios-targettv package-ios-targetwatch package-ios-targetwatch64_32 package-ios-sim32 package-ios-sim64 package-ios-simtv package-ios-simwatch $(TOP)/sdks/builds/ios-Mono.framework-Info.plist $(TOP)/sdks/builds/ios-Mono.framework-tvos.Info.plist $(TOP)/sdks/builds/ios-Mono.framework-watchos.Info.plist $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion80.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion80.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion80.dylib
398 rm -rf $(ios_FRAMEWORKS_DIR)
400 ### Mono.framework for devices ###
401 mkdir -p $(ios_FRAMEWORKS_DIR)/ios/Mono.framework/
402 mkdir -p $(ios_FRAMEWORKS_DIR)/tvos/Mono.framework/
403 mkdir -p $(ios_FRAMEWORKS_DIR)/watchos/Mono.framework/
404 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion80.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion80.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion80.dylib -create -output $(ios_FRAMEWORKS_DIR)/ios/Mono.framework/Mono
405 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_FRAMEWORKS_DIR)/tvos/Mono.framework/Mono
406 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_FRAMEWORKS_DIR)/watchos/Mono.framework/Mono
407 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/Mono.framework/Mono $(ios_FRAMEWORKS_DIR)/ios/Mono.framework/Mono
408 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/Mono.framework/Mono $(ios_FRAMEWORKS_DIR)/tvos/Mono.framework/Mono
409 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/Mono.framework/Mono $(ios_FRAMEWORKS_DIR)/watchos/Mono.framework/Mono
410 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_FRAMEWORKS_DIR)/ios/Mono.framework.dSYM $(ios_FRAMEWORKS_DIR)/ios/Mono.framework/Mono
411 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_FRAMEWORKS_DIR)/tvos/Mono.framework.dSYM $(ios_FRAMEWORKS_DIR)/tvos/Mono.framework/Mono
412 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_FRAMEWORKS_DIR)/watchos/Mono.framework.dSYM $(ios_FRAMEWORKS_DIR)/watchos/Mono.framework/Mono
413 cp $(TOP)/sdks/builds/ios-Mono.framework-Info.plist $(ios_FRAMEWORKS_DIR)/ios/Mono.framework/Info.plist
414 cp $(TOP)/sdks/builds/ios-Mono.framework-tvos.Info.plist $(ios_FRAMEWORKS_DIR)/tvos/Mono.framework/Info.plist
415 cp $(TOP)/sdks/builds/ios-Mono.framework-watchos.Info.plist $(ios_FRAMEWORKS_DIR)/watchos/Mono.framework/Info.plist
417 ### Mono.framework for simulators ###
418 mkdir -p $(ios_FRAMEWORKS_DIR)/ios-sim/Mono.framework/
419 mkdir -p $(ios_FRAMEWORKS_DIR)/tvos-sim/Mono.framework/
420 mkdir -p $(ios_FRAMEWORKS_DIR)/watchos-sim/Mono.framework/
421 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_FRAMEWORKS_DIR)/ios-sim/Mono.framework/Mono
422 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_FRAMEWORKS_DIR)/tvos-sim/Mono.framework/Mono
423 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_FRAMEWORKS_DIR)/watchos-sim/Mono.framework/Mono
424 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/Mono.framework/Mono $(ios_FRAMEWORKS_DIR)/ios-sim/Mono.framework/Mono
425 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/Mono.framework/Mono $(ios_FRAMEWORKS_DIR)/tvos-sim/Mono.framework/Mono
426 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/Mono.framework/Mono $(ios_FRAMEWORKS_DIR)/watchos-sim/Mono.framework/Mono
427 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_FRAMEWORKS_DIR)/ios-sim/Mono.framework.dSYM $(ios_FRAMEWORKS_DIR)/ios-sim/Mono.framework/Mono
428 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_FRAMEWORKS_DIR)/tvos-sim/Mono.framework.dSYM $(ios_FRAMEWORKS_DIR)/tvos-sim/Mono.framework/Mono
429 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_FRAMEWORKS_DIR)/watchos-sim/Mono.framework.dSYM $(ios_FRAMEWORKS_DIR)/watchos-sim/Mono.framework/Mono
430 cp $(TOP)/sdks/builds/ios-Mono.framework-Info.plist $(ios_FRAMEWORKS_DIR)/ios-sim/Mono.framework/Info.plist
431 cp $(TOP)/sdks/builds/ios-Mono.framework-tvos.Info.plist $(ios_FRAMEWORKS_DIR)/tvos-sim/Mono.framework/Info.plist
432 cp $(TOP)/sdks/builds/ios-Mono.framework-watchos.Info.plist $(ios_FRAMEWORKS_DIR)/watchos-sim/Mono.framework/Info.plist
435 $(ios_LIBS_DIR): package-ios-target32 package-ios-target32s package-ios-target64 package-ios-targettv package-ios-targetwatch package-ios-targetwatch64_32 package-ios-sim32 package-ios-sim64 package-ios-simtv package-ios-simwatch $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion70.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion70.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion70.dylib $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-profiler-log-minversion70.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-profiler-log-minversion70.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-profiler-log-minversion70.dylib $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-native-compat-minversion70.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-native-compat-minversion70.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-native-compat-minversion70.dylib
436 rm -rf $(ios_LIBS_DIR)
438 ### libs for devices ###
439 mkdir -p $(ios_LIBS_DIR)/ios/
440 mkdir -p $(ios_LIBS_DIR)/tvos/
441 mkdir -p $(ios_LIBS_DIR)/watchos/
443 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion70.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion70.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0-minversion70.dylib -create -output $(ios_LIBS_DIR)/ios/libmonosgen-2.0.dylib
444 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-profiler-log-minversion70.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-profiler-log-minversion70.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-profiler-log-minversion70.dylib -create -output $(ios_LIBS_DIR)/ios/libmono-profiler-log.dylib
445 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-native-compat-minversion70.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-native-compat-minversion70.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-native-compat-minversion70.dylib -create -output $(ios_LIBS_DIR)/ios/libmono-native-compat.dylib
446 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-native-unified.dylib $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-native-unified.dylib $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-native-unified.dylib -create -output $(ios_LIBS_DIR)/ios/libmono-native-unified.dylib
447 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-ee-interp.a $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-ee-interp.a $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-ee-interp.a -create -output $(ios_LIBS_DIR)/ios/libmono-ee-interp.a
448 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-icall-table.a $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-icall-table.a $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-icall-table.a -create -output $(ios_LIBS_DIR)/ios/libmono-icall-table.a
449 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-ilgen.a $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-ilgen.a $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-ilgen.a -create -output $(ios_LIBS_DIR)/ios/libmono-ilgen.a
450 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-native-compat.a $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-native-compat.a $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-native-compat.a -create -output $(ios_LIBS_DIR)/ios/libmono-native-compat.a
451 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-native-unified.a $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-native-unified.a $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-native-unified.a -create -output $(ios_LIBS_DIR)/ios/libmono-native-unified.a
452 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmono-profiler-log-static.a $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmono-profiler-log-static.a $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmono-profiler-log-static.a -create -output $(ios_LIBS_DIR)/ios/libmono-profiler-log.a
453 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0.a $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0.a $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0.a -create -output $(ios_LIBS_DIR)/ios/libmonosgen-2.0.a
455 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_LIBS_DIR)/tvos/libmonosgen-2.0.dylib
456 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-profiler-log.dylib -create -output $(ios_LIBS_DIR)/tvos/libmono-profiler-log.dylib
457 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-native-compat.dylib -create -output $(ios_LIBS_DIR)/tvos/libmono-native-compat.dylib
458 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-native-unified.dylib -create -output $(ios_LIBS_DIR)/tvos/libmono-native-unified.dylib
459 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-ee-interp.a -create -output $(ios_LIBS_DIR)/tvos/libmono-ee-interp.a
460 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-icall-table.a -create -output $(ios_LIBS_DIR)/tvos/libmono-icall-table.a
461 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-ilgen.a -create -output $(ios_LIBS_DIR)/tvos/libmono-ilgen.a
462 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-native-compat.a -create -output $(ios_LIBS_DIR)/tvos/libmono-native-compat.a
463 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-native-unified.a -create -output $(ios_LIBS_DIR)/tvos/libmono-native-unified.a
464 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmono-profiler-log-static.a -create -output $(ios_LIBS_DIR)/tvos/libmono-profiler-log.a
465 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmonosgen-2.0.a -create -output $(ios_LIBS_DIR)/tvos/libmonosgen-2.0.a
467 $(ios_PLATFORM_BIN)/bitcode_strip $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -m -o $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0-stripped.dylib
468 $(ios_PLATFORM_BIN)/bitcode_strip $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-profiler-log.dylib -m -o $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-profiler-log-stripped.dylib
469 $(ios_PLATFORM_BIN)/bitcode_strip $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-compat.dylib -m -o $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-compat-stripped.dylib
470 $(ios_PLATFORM_BIN)/bitcode_strip $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-unified.dylib -m -o $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-unified-stripped.dylib
471 $(ios_PLATFORM_BIN)/bitcode_strip $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -m -o $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmonosgen-2.0-stripped.dylib
472 $(ios_PLATFORM_BIN)/bitcode_strip $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-profiler-log.dylib -m -o $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-profiler-log-stripped.dylib
473 $(ios_PLATFORM_BIN)/bitcode_strip $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-native.dylib -m -o $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-native-stripped.dylib
475 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0-stripped.dylib $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmonosgen-2.0-stripped.dylib -create -output $(ios_LIBS_DIR)/watchos/libmonosgen-2.0.dylib
476 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-profiler-log-stripped.dylib $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-profiler-log-stripped.dylib -create -output $(ios_LIBS_DIR)/watchos/libmono-profiler-log.dylib
477 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-compat-stripped.dylib -create -output $(ios_LIBS_DIR)/watchos/libmono-native-compat.dylib
478 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-unified-stripped.dylib $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-native-stripped.dylib -create -output $(ios_LIBS_DIR)/watchos/libmono-native-unified.dylib
479 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-ee-interp.a $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-ee-interp.a -create -output $(ios_LIBS_DIR)/watchos/libmono-ee-interp.a
480 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-icall-table.a $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-icall-table.a -create -output $(ios_LIBS_DIR)/watchos/libmono-icall-table.a
481 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-ilgen.a $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-ilgen.a -create -output $(ios_LIBS_DIR)/watchos/libmono-ilgen.a
482 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-compat.a -create -output $(ios_LIBS_DIR)/watchos/libmono-native-compat.a
483 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-native-unified.a $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-native.a -create -output $(ios_LIBS_DIR)/watchos/libmono-native-unified.a
484 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmono-profiler-log-static.a $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmono-profiler-log-static.a -create -output $(ios_LIBS_DIR)/watchos/libmono-profiler-log.a
485 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.a $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmonosgen-2.0.a -create -output $(ios_LIBS_DIR)/watchos/libmonosgen-2.0.a
487 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/ios/libmonosgen-2.0.dylib
488 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-profiler-log.dylib -change $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/ios/libmono-profiler-log.dylib
489 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-compat.dylib -change $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/ios/libmono-native-compat.dylib
490 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-unified.dylib -change $(TOP)/sdks/out/ios-target32-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-target32s-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-target64-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/ios/libmono-native-unified.dylib
492 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/tvos/libmonosgen-2.0.dylib
493 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-profiler-log.dylib -change $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/tvos/libmono-profiler-log.dylib
494 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-compat.dylib -change $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/tvos/libmono-native-compat.dylib
495 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-unified.dylib -change $(TOP)/sdks/out/ios-targettv-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/tvos/libmono-native-unified.dylib
497 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/watchos/libmonosgen-2.0.dylib
498 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-profiler-log.dylib -change $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/watchos/libmono-profiler-log.dylib
499 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-compat.dylib -change $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/watchos/libmono-native-compat.dylib
500 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-unified.dylib -change $(TOP)/sdks/out/ios-targetwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib -change $(TOP)/sdks/out/ios-targetwatch64_32-$(CONFIGURATION)/lib/libmonosgen-2.0.1.dylib @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/watchos/libmono-native-unified.dylib
502 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios/libmonosgen-2.0.dylib.dSYM $(ios_LIBS_DIR)/ios/libmonosgen-2.0.dylib
503 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios/libmono-profiler-log.dylib.dSYM $(ios_LIBS_DIR)/ios/libmono-profiler-log.dylib
504 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios/libmono-native-compat.dylib.dSYM $(ios_LIBS_DIR)/ios/libmono-native-compat.dylib
505 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios/libmono-native-unified.dylib.dSYM $(ios_LIBS_DIR)/ios/libmono-native-unified.dylib
507 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos/libmonosgen-2.0.dylib.dSYM $(ios_LIBS_DIR)/tvos/libmonosgen-2.0.dylib
508 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos/libmono-profiler-log.dylib.dSYM $(ios_LIBS_DIR)/tvos/libmono-profiler-log.dylib
509 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos/libmono-native-compat.dylib.dSYM $(ios_LIBS_DIR)/tvos/libmono-native-compat.dylib
510 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos/libmono-native-unified.dylib.dSYM $(ios_LIBS_DIR)/tvos/libmono-native-unified.dylib
512 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos/libmonosgen-2.0.dylib.dSYM $(ios_LIBS_DIR)/watchos/libmonosgen-2.0.dylib
513 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos/libmono-profiler-log.dylib.dSYM $(ios_LIBS_DIR)/watchos/libmono-profiler-log.dylib
514 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos/libmono-native-compat.dylib.dSYM $(ios_LIBS_DIR)/watchos/libmono-native-compat.dylib
515 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos/libmono-native-unified.dylib.dSYM $(ios_LIBS_DIR)/watchos/libmono-native-unified.dylib
517 ### libs for simulators ###
518 mkdir -p $(ios_LIBS_DIR)/ios-sim/
519 mkdir -p $(ios_LIBS_DIR)/tvos-sim/
520 mkdir -p $(ios_LIBS_DIR)/watchos-sim/
522 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_LIBS_DIR)/ios-sim/libmonosgen-2.0.dylib
523 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmono-profiler-log.dylib $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmono-profiler-log.dylib -create -output $(ios_LIBS_DIR)/ios-sim/libmono-profiler-log.dylib
524 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmono-native-compat.dylib $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmono-native-compat.dylib -create -output $(ios_LIBS_DIR)/ios-sim/libmono-native-compat.dylib
525 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmono-native-unified.dylib $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmono-native-unified.dylib -create -output $(ios_LIBS_DIR)/ios-sim/libmono-native-unified.dylib
526 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmono-native-compat.a $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmono-native-compat.a -create -output $(ios_LIBS_DIR)/ios-sim/libmono-native-compat.a
527 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmono-native-unified.a $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmono-native-unified.a -create -output $(ios_LIBS_DIR)/ios-sim/libmono-native-unified.a
528 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmono-profiler-log-static.a $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmono-profiler-log-static.a -create -output $(ios_LIBS_DIR)/ios-sim/libmono-profiler-log.a
529 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-sim32-$(CONFIGURATION)/lib/libmonosgen-2.0.a $(TOP)/sdks/out/ios-sim64-$(CONFIGURATION)/lib/libmonosgen-2.0.a -create -output $(ios_LIBS_DIR)/ios-sim/libmonosgen-2.0.a
531 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_LIBS_DIR)/tvos-sim/libmonosgen-2.0.dylib
532 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmono-profiler-log.dylib -create -output $(ios_LIBS_DIR)/tvos-sim/libmono-profiler-log.dylib
533 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmono-native-compat.dylib -create -output $(ios_LIBS_DIR)/tvos-sim/libmono-native-compat.dylib
534 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmono-native-unified.dylib -create -output $(ios_LIBS_DIR)/tvos-sim/libmono-native-unified.dylib
535 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmono-native-compat.a -create -output $(ios_LIBS_DIR)/tvos-sim/libmono-native-compat.a
536 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmono-native-unified.a -create -output $(ios_LIBS_DIR)/tvos-sim/libmono-native-unified.a
537 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmono-profiler-log-static.a -create -output $(ios_LIBS_DIR)/tvos-sim/libmono-profiler-log.a
538 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simtv-$(CONFIGURATION)/lib/libmonosgen-2.0.a -create -output $(ios_LIBS_DIR)/tvos-sim/libmonosgen-2.0.a
540 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.dylib -create -output $(ios_LIBS_DIR)/watchos-sim/libmonosgen-2.0.dylib
541 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmono-profiler-log.dylib -create -output $(ios_LIBS_DIR)/watchos-sim/libmono-profiler-log.dylib
542 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmono-native-compat.dylib -create -output $(ios_LIBS_DIR)/watchos-sim/libmono-native-compat.dylib
543 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmono-native-unified.dylib -create -output $(ios_LIBS_DIR)/watchos-sim/libmono-native-unified.dylib
544 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmono-native-compat.a -create -output $(ios_LIBS_DIR)/watchos-sim/libmono-native-compat.a
545 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmono-native-unified.a -create -output $(ios_LIBS_DIR)/watchos-sim/libmono-native-unified.a
546 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmono-profiler-log-static.a -create -output $(ios_LIBS_DIR)/watchos-sim/libmono-profiler-log.a
547 $(ios_PLATFORM_BIN)/lipo $(TOP)/sdks/out/ios-simwatch-$(CONFIGURATION)/lib/libmonosgen-2.0.a -create -output $(ios_LIBS_DIR)/watchos-sim/libmonosgen-2.0.a
549 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/ios-sim/libmonosgen-2.0.dylib
550 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-profiler-log.dylib $(ios_LIBS_DIR)/ios-sim/libmono-profiler-log.dylib
551 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-compat.dylib $(ios_LIBS_DIR)/ios-sim/libmono-native-compat.dylib
552 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-unified.dylib $(ios_LIBS_DIR)/ios-sim/libmono-native-unified.dylib
554 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/tvos-sim/libmonosgen-2.0.dylib
555 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-profiler-log.dylib $(ios_LIBS_DIR)/tvos-sim/libmono-profiler-log.dylib
556 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-compat.dylib $(ios_LIBS_DIR)/tvos-sim/libmono-native-compat.dylib
557 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-unified.dylib $(ios_LIBS_DIR)/tvos-sim/libmono-native-unified.dylib
559 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmonosgen-2.0.dylib $(ios_LIBS_DIR)/watchos-sim/libmonosgen-2.0.dylib
560 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-profiler-log.dylib $(ios_LIBS_DIR)/watchos-sim/libmono-profiler-log.dylib
561 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-compat.dylib $(ios_LIBS_DIR)/watchos-sim/libmono-native-compat.dylib
562 $(ios_PLATFORM_BIN)/install_name_tool -id @rpath/libmono-native-unified.dylib $(ios_LIBS_DIR)/watchos-sim/libmono-native-unified.dylib
564 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios-sim/libmonosgen-2.0.dylib.dSYM $(ios_LIBS_DIR)/ios-sim/libmonosgen-2.0.dylib
565 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios-sim/libmono-profiler-log.dylib.dSYM $(ios_LIBS_DIR)/ios-sim/libmono-profiler-log.dylib
566 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios-sim/libmono-native-compat.dylib.dSYM $(ios_LIBS_DIR)/ios-sim/libmono-native-compat.dylib
567 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/ios-sim/libmono-native-unified.dylib.dSYM $(ios_LIBS_DIR)/ios-sim/libmono-native-unified.dylib
569 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos-sim/libmonosgen-2.0.dylib.dSYM $(ios_LIBS_DIR)/tvos-sim/libmonosgen-2.0.dylib
570 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos-sim/libmono-profiler-log.dylib.dSYM $(ios_LIBS_DIR)/tvos-sim/libmono-profiler-log.dylib
571 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos-sim/libmono-native-compat.dylib.dSYM $(ios_LIBS_DIR)/tvos-sim/libmono-native-compat.dylib
572 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/tvos-sim/libmono-native-unified.dylib.dSYM $(ios_LIBS_DIR)/tvos-sim/libmono-native-unified.dylib
574 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos-sim/libmonosgen-2.0.dylib.dSYM $(ios_LIBS_DIR)/watchos-sim/libmonosgen-2.0.dylib
575 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos-sim/libmono-profiler-log.dylib.dSYM $(ios_LIBS_DIR)/watchos-sim/libmono-profiler-log.dylib
576 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos-sim/libmono-native-compat.dylib.dSYM $(ios_LIBS_DIR)/watchos-sim/libmono-native-compat.dylib
577 $(ios_PLATFORM_BIN)/dsymutil -t 4 -o $(ios_LIBS_DIR)/watchos-sim/libmono-native-unified.dylib.dSYM $(ios_LIBS_DIR)/watchos-sim/libmono-native-unified.dylib
579 $(ios_SOURCES_DIR)/mcs/build/common/Consts.cs: # we use this as a sentinel file to avoid rsyncing everything on each build (slows down iterating)
580 mkdir -p $(ios_SOURCES_DIR)
581 cd $(TOP) && rsync -r --exclude='external/api-doc-tools/*' --exclude='external/api-snapshot/*' --exclude='external/aspnetwebstack/*' --exclude='external/binary-reference-assemblies/*' --exclude='netcore/*' --include='*.cs' --include='*/' --exclude="*" --prune-empty-dirs . $(ios_SOURCES_DIR)
583 $(ios_SOURCES_DIR): $(ios_SOURCES_DIR)/mcs/build/common/Consts.cs
585 $(ios_TPN_DIR)/LICENSE:
586 mkdir -p $(ios_TPN_DIR)
587 cd $(TOP) && rsync -r --include='THIRD-PARTY-NOTICES.TXT' --include='license.txt' --include='License.txt' --include='LICENSE' --include='LICENSE.txt' --include='LICENSE.TXT' --include='COPYRIGHT.regex' --include='*/' --exclude="*" --prune-empty-dirs . $(ios_TPN_DIR)
589 $(ios_TPN_DIR): $(ios_TPN_DIR)/LICENSE
591 $(ios_MONO_VERSION): $(TOP)/configure.ac
592 mkdir -p $(dir $(ios_MONO_VERSION))
593 grep AC_INIT $(TOP)/configure.ac | sed -e 's/.*\[//' -e 's/\].*//' > $@
596 # BCL builds
598 $(eval $(call BclTemplate,ios,monotouch monotouch_runtime monotouch_tv monotouch_tv_runtime monotouch_watch monotouch_watch_runtime monotouch_tools,monotouch monotouch_tv monotouch_watch))