Skip to content

Commit 7171700

Browse files
committed
Merge pull request #513 from rolfbjarne/xamarin-tvos-support
Add support for Xamarin.TVOS profile.
2 parents d8400f2 + db81743 commit 7171700

File tree

8 files changed

+37
-4
lines changed

8 files changed

+37
-4
lines changed

config.make.in

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,12 @@ TARGET = $(TargetFramework)
7272
outsuffix = $(TargetFramework)
7373
endif
7474

75+
ifeq (x-$(TargetFramework)-$(FSharpCoreBackVersion),x-xamarintvos-)
76+
VERSION = 3.98.4.0
77+
TARGET = $(TargetFramework)
78+
outsuffix = $(TargetFramework)
79+
endif
80+
7581
ifeq (x-$(TargetFramework)-$(FSharpCoreBackVersion),x-xamarinmacmobile-)
7682
VERSION = 3.99.4.0
7783
TARGET = $(TargetFramework)
718 KB
Binary file not shown.
53.5 KB
Binary file not shown.
1.57 MB
Binary file not shown.
3.18 MB
Binary file not shown.

src/FSharpSource.targets

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
<AssemblyVersion Condition="'$(TargetFramework)' == 'monodroid' ">3.98.4.0</AssemblyVersion>
2626
<AssemblyVersion Condition="'$(TargetFramework)' == 'monotouch' ">3.98.4.0</AssemblyVersion>
2727
<AssemblyVersion Condition="'$(TargetFramework)' == 'xamarinwatchos' ">3.98.4.0</AssemblyVersion>
28+
<AssemblyVersion Condition="'$(TargetFramework)' == 'xamarintvos' ">3.98.4.0</AssemblyVersion>
2829
<AssemblyVersion Condition="'$(TargetFramework)' == 'xamarinmacmobile' ">3.99.4.0</AssemblyVersion>
2930
<AssemblyVersion Condition="'$(TargetFramework)' == 'xamarinmacfull' ">3.100.4.0</AssemblyVersion>
3031

@@ -219,6 +220,25 @@ Some other NuGET monikers to support in the future, see http://docs.nuget.org/do
219220
<AssemblySearchPaths>$(FSharpSourcesRoot)\..\dependencies\mono\2.1\XamarinWatchOS;$(AssemblySearchPaths)</AssemblySearchPaths>
220221
</PropertyGroup>
221222

223+
<!-- Target XamarinTVOS (should be identical to MonoTouch configurations, though we sanity check -->
224+
<!-- by building against the Xamarin.TVOS mscorlib) -->
225+
<PropertyGroup Condition="'$(TargetFramework)'=='xamarintvos'">
226+
<!--<TargetFrameworkVersion>v1.0</TargetFrameworkVersion>-->
227+
<!-- <TargetFrameworkIdentifier>Xamarin.TVOS</TargetFrameworkIdentifier> -->
228+
<TargetFrameworkOutputDirectory>$(TargetFramework)</TargetFrameworkOutputDirectory>
229+
<DefineConstants>$(DefineConstants);FSHARP_CORE_4_5</DefineConstants>
230+
<DefineConstants>$(DefineConstants);FX_ATLEAST_45</DefineConstants>
231+
<DefineConstants>$(DefineConstants);FX_ATLEAST_40</DefineConstants>
232+
<DefineConstants>$(DefineConstants);FX_ATLEAST_35</DefineConstants>
233+
<DefineConstants>$(DefineConstants);FX_ATLEAST_LINQ</DefineConstants>
234+
<DefineConstants>$(DefineConstants);QUERIES_IN_FSLIB</DefineConstants>
235+
<DefineConstants>$(DefineConstants);PUT_TYPE_PROVIDERS_IN_FSCORE;</DefineConstants>
236+
<DefineConstants>$(DefineConstants);FX_NO_REFLECTION_EMIT</DefineConstants>
237+
<DefineConstants>$(DefineConstants);FX_NO_BIGINT</DefineConstants>
238+
<DefineConstants>$(DefineConstants);FX_NO_STRUCTURAL_EQUALITY</DefineConstants>
239+
<AssemblySearchPaths>$(FSharpSourcesRoot)\..\dependencies\mono\2.1\XamarinTVOS;$(AssemblySearchPaths)</AssemblySearchPaths>
240+
</PropertyGroup>
241+
222242
<!-- Target xamarinmacmobile similar to monotouch configurations, with Reflection.emit, structural equality, and BigInt -->
223243
<PropertyGroup Condition="'$(TargetFramework)'=='xamarinmacmobile'">
224244
<TargetFrameworkOutputDirectory>$(TargetFramework)</TargetFrameworkOutputDirectory>

src/fsharp/FSharp.Core/FSharp.Core.fsproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@
212212
<Reference Include="System.Numerics" Condition="'$(TargetFramework)' == 'net40' OR
213213
'$(TargetFramework)' == 'monotouch' OR
214214
'$(TargetFramework)' == 'xamarinwatchos' OR
215+
'$(TargetFramework)' == 'xamarintvos' OR
215216
'$(TargetFramework)' == 'monodroid' OR
216217
'$(TargetFramework)' == 'xamarinmacmobile' OR
217218
'$(TargetFramework)' == 'xamarinmacfull'" >
@@ -237,6 +238,7 @@
237238
'$(TargetFramework)' == 'sl3-wp' OR
238239
'$(TargetFramework)' == 'monotouch' OR
239240
'$(TargetFramework)' == 'xamarinwatchos' OR
241+
'$(TargetFramework)' == 'xamarintvos' OR
240242
'$(TargetFramework)' == 'monodroid' OR
241243
'$(TargetFramework)' == 'portable47' OR
242244
'$(TargetFramework)' == 'net40-xna40-xbox360' OR

src/fsharp/Makefile.in

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,19 +69,19 @@ endif
6969

7070
all-monotouch-monodroid-xamarinmac:
7171
$(MAKE) build-proto
72-
$(MAKE) only-monotouch only-monodroid only-xamarinmac only-xamarinwatchos
72+
$(MAKE) only-monotouch only-monodroid only-xamarinmac only-xamarinwatchos only-xamarintvos
7373

7474
all-monotouch-xamarinmac:
7575
$(MAKE) build-proto
76-
$(MAKE) only-monotouch only-xamarinmac only-xamarinwatchos
76+
$(MAKE) only-monotouch only-xamarinmac only-xamarinwatchos only-xamarintvos
7777

7878
all-monotouch-monodroid:
7979
$(MAKE) build-proto
80-
$(MAKE) only-monotouch only-monodroid only-xamarinwatchos
80+
$(MAKE) only-monotouch only-monodroid only-xamarinwatchos only-xamarintvos
8181

8282
all-monotouch:
8383
$(MAKE) build-proto
84-
$(MAKE) only-monotouch only-xamarinwatchos
84+
$(MAKE) only-monotouch only-xamarinwatchos only-xamarintvos
8585

8686
only-monotouch:
8787
ifeq ("$(monotouchenabled)", "yes")
@@ -93,6 +93,11 @@ ifeq ("$(monotouchenabled)", "yes")
9393
$(MAKE) -C FSharp.Core TargetFramework=xamarinwatchos build
9494
endif
9595

96+
only-xamarintvos:
97+
ifeq ("$(monotouchenabled)", "yes")
98+
$(MAKE) -C FSharp.Core TargetFramework=xamarintvos build
99+
endif
100+
96101
all-monodroid:
97102
$(MAKE) build-proto
98103
$(MAKE) only-monodroid

0 commit comments

Comments
 (0)