Skip to content

Reintegrated compiler editor changes into F# 3.1 source tree #9

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
1 commit merged into from
Dec 17, 2013
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,5 @@ tests/projects/Sample_VS2012_FSharp_ConsoleApp_net45_with_resource/Sample_VS2012
obj
src/fsharp/FSharp.Data.TypeProviders/FSData.resx
src/fsharp/fsiAnyCpu/FSIstrings.resx

*.nupkg
20 changes: 20 additions & 0 deletions CHANGES.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@

HEAD
* Added tests

* Merged F# 3.1 open source release

* Fixed build logic for F# 3.1

3.0.30
* Partial fix for allowing F# 3.1 projects to compile using xbuild (also
requires xbuild fix)

* Remove a multitude of links in xbuild directories in favour of targets
files which include the canonical targets

3.0.29

* Proper DESTDIR support (very useful for making custom deb/rpm packages)


12 changes: 6 additions & 6 deletions FSharp.Compiler.Editor.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>FSharp.Compiler.Editor</id>
<version>1.0.8</version>
<version>1.0.9-beta</version>
<title>F# Compiler Editor</title>
<authors>Dave Thomas, Anh-Dung Phan</authors>
<owners />
Expand All @@ -11,13 +11,13 @@
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<summary>The compiler editor assembly for creating refactoring and editing tools for F# programming language</summary>
<description>This fork of the F# compiler contains minor modifications in visibility to allow refactoring, editing, and other tools to have access to the full F# AST and parser.</description>
<releaseNotes>Expose Navigation service classes</releaseNotes>
<releaseNotes>Reintegration with FSharp31 source</releaseNotes>
<copyright>Copyright 2013</copyright>
<tags>fsharp compiler editing refactoring</tags>
</metadata>
<files>
<file src="lib/release/4.0/FSharp.Compiler.Editor.dll" target="lib/net40/FSharp.Compiler.Editor.dll" />
<file src="lib/release/4.0/FSharp.Compiler.Editor.dll.mdb" target="lib/net40/FSharp.Compiler.Editor.dll.mdb" />
<file src="lib/release/4.0/FSharp.Compiler.Editor.xml" target="lib/net40/FSharp.Compiler.Editor.xml" />
<file src="lib/release/FSharp.Compiler.Editor.dll" target="lib/net40/FSharp.Compiler.Editor.dll" />
<file src="lib/release/FSharp.Compiler.Editor.dll.mdb" target="lib/net40/FSharp.Compiler.Editor.dll.mdb" />
<file src="lib/release/FSharp.Compiler.Editor.xml" target="lib/net40/FSharp.Compiler.Editor.xml" />
</files>
</package>
</package>
2 changes: 1 addition & 1 deletion Makefile.in
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
include $(topsrcdir)config.make

all clean install do-proto do-final do-2-1 install-2-1 clean-2-0 clean-2-1 clean-4-0:
all clean install build build-proto:
$(MAKE) -C src/fsharp $@

dist:
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ This repo should be _identical_ to 'fsharp' except:

- Changes for building FSharp.Compiler.Editor.dll, notably
- Change the assembly name
- Only build FSharp.Compiler.Editor.dll
- No bootstrap or proto compiler is used - an installed F# compiler is assumed
- Only build FSharp.Compiler.Editor.dll
- No bootstrap or proto compiler is used - an installed F# compiler is assumed

- Files for publishing the nuget package for FSharp.Compiler.Editor

Expand Down Expand Up @@ -291,4 +291,4 @@ You can then go to the relevant directory and run `build.bat` and `run.bat`.

F# compiler sources dropped by Microsoft are available from [fsharppowerpack.codeplex.com](http://fsharppowerpack.codeplex.com).

Uses bootstrapping libraries, tools and F# compiler. The `lib/bootstrap/X.0` directories contain mono-built libraries, compiler and tools that can be used to bootstrap a build. You can also supply your own via the `--with-bootstrap` option.
Uses bootstrapping libraries, tools and F# compiler. The `lib/bootstrap/X.0` directories contain mono-built libraries, compiler and tools that can be used to bootstrap a build. You can also supply your own via the `--with-bootstrap` option.
2 changes: 1 addition & 1 deletion build.bat
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ del /F /S /Q lib\release
pushd .
cd .\src
set ABS_PATH=%CD%
%MSBUILD% %ABS_PATH%/fsharp-compiler-build.proj /p:TargetFramework=net40 /p:Configuration=Release
%MSBUILD% "%ABS_PATH%\fsharp-compiler-build.proj" /p:TargetFramework=net40 /p:Configuration=Release
popd
135 changes: 29 additions & 106 deletions config.make.in
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ monogacdir := @MONOGACDIR@

monogacdir20 := @MONOGACDIR20@

#This is where to find MonoTouch of MonoAndroid, for "make do-2-1"
#This is where to find MonoTouch of MonoAndroid, for "make build-monodroid"
#
#For now this is hardwired, it should be optionally detected by configure.ac
monogacdir21 := @abs_top_srcdir@/dependencies/mono/2.1
Expand All @@ -18,125 +18,48 @@ monogacdir35 := @MONOGACDIR35@
monogacdir40 := @MONOGACDIR40@

gacdir := ${libdir}mono
gacdir20 := ${gacdir}/2.0
gacdir40 := ${gacdir}/4.0

tooldir := $(topdir)lib/bootstrap/4.0/

monoopts = @mono_gc_options@
MONO_OPTIONS += @mono_gc_options@

TargetFramework = net40
CONFIG = release
Configuration = Release
DISTVERSION = 201011
outsuffix = $(TargetFramework)

ifeq (x-$(TargetFramework),x-net20)
VERSION = 2.3.1.0
TARGET = 2.0
endif

ifeq (x-$(TargetFramework),x-net40)
VERSION = 4.3.1.0
TARGET = 4.0
outsuffix = .
endif

ifeq (x-$(TargetFramework),x-monodroid)
VERSION = 2.3.98.1
TARGET = monodroid
endif


ifeq (x-$(TargetFramework),x-monotouch)
VERSION = 2.3.99.1
TARGET = monotouch
endif

VERSION_2_0 = 2.3.0.0
VERSION_2_1 = 2.3.1.0
VERSION_4_0 = 4.3.0.0
TARGET_2_0 = 2.0
TARGET_2_1 = 2.1
TARGET_4_0 = 4.0
DELAY_SIGN_TOKEN = b03f5f7f11d50a3a
SIGN_TOKEN = f536804aa0eb945b

bootstrapdir = $(bootstrap)/4.0/
tmpdir = .libs/$(CONFIG)/
objdir = $(tmpdir)$(TARGET)/
protodir = $(builddir)/lib/proto/4.0/
outdir = $(builddir)lib/$(CONFIG)/$(TARGET)/

FSSRGEN = $(tooldir)../2.0/fssrgen.exe
FSLEX = $(tooldir)../2.0/fslex.exe
FSYACC = $(tooldir)../2.0/fsyacc.exe


FLAGS = \
--doc:$(objdir)$(NAME).xml \
--version:$(VERSION) \
--debug:pdbonly \
--optimize+ \
--mlcompatibility \
--noframework \
--fullpaths \
--times \
--nowarn:9

DELAY_SIGN_FLAGS = \
--define:STRONG_NAME_AND_DELAY_SIGN_FSHARP_COMPILER_WITH_MSFT_KEY \
--delaysign+ \
--keyfile:$(topdir)msfinal.pub

SIGN_FLAGS = \
--define:STRONG_NAME_FSHARP_COMPILER_WITH_TEST_KEY \
--keyfile:$(topdir)/src/fsharp/test.snk

DEFINES_GENERAL = \
--define:TRACE \
--define:CROSS_PLATFORM_COMPILER

ifeq ($(CONFIG),debug)
DEFINES_DEBUG = \
--define:CODE_ANALYSIS \
--define:DEBUG
else
DEFINES_DEBUG =
endif

DEFINES_2_0 = \
$(DEFINES_GENERAL) \
$(DEFINES_DEBUG) \
--define:FX_NO_STRUCTURAL_EQUALITY \
--define:FX_NO_IOBSERVABLE \
--define:FX_NO_TUPLE \
--define:FX_ATLEAST_35 \
--define:FX_NO_LAZY \
--define:FX_NO_CANCELLATIONTOKEN_CLASSES \
--define:FX_NO_MONITOR_REPORTS_LOCKTAKEN \
--define:FX_NO_TPL_PARALLEL \
--define:FX_NO_CUSTOMATTRIBUTEDATA \
--define:FX_NO_TASK \
--define:FX_NO_BIGINT

DEFINES_2_1 = \
$(DEFINES_GENERAL) \
$(DEFINES_DEBUG) \
--define:FX_NO_STRUCTURAL_EQUALITY \
--define:FX_NO_CUSTOMATTRIBUTEDATA \
--define:FX_NO_BIGINT_CULTURE_PARSE \
--define:FX_ATLEAST_40 \
--define:FX_ATLEAST_35 \
--define:FX_ATLEAST_LINQ \
--define:FX_NO_BIGINT

DEFINES_4_0 = \
$(DEFINES_GENERAL) \
$(DEFINES_DEBUG) \
--define:FX_NO_BIGINT_CULTURE_PARSE \
--define:FX_ATLEAST_40 \
--define:FX_ATLEAST_35 \
--define:FX_ATLEAST_LINQ

REFERENCES_2_0 = \
-r:$(monogacdirXX)/Microsoft.Build.Engine.dll \
-r:$(monogacdirXX)/Microsoft.Build.Framework.dll \
-r:$(monogacdir35)/Microsoft.Build.Tasks.v3.5.dll \
-r:$(monogacdir35)/Microsoft.Build.Utilities.v3.5.dll \
-r:$(monogacdirXX)/mscorlib.dll \
-r:$(monogacdirXX)/System.Core.dll \
-r:$(monogacdirXX)/System.dll

REFERENCES_2_1 = \
-r:$(monogacdir21)/mscorlib.dll \
-r:$(monogacdir21)/System.Core.dll \
-r:$(monogacdir21)/System.dll

REFERENCES_4_0 = \
-r:$(monogacdirXX)/Microsoft.Build.Engine.dll \
-r:$(monogacdirXX)/Microsoft.Build.Framework.dll \
-r:$(monogacdirXX)/Microsoft.Build.Tasks.v4.0.dll \
-r:$(monogacdirXX)/Microsoft.Build.Utilities.v4.0.dll \
-r:$(monogacdirXX)/mscorlib.dll \
-r:$(monogacdirXX)/System.Core.dll \
-r:$(monogacdirXX)/System.dll \
-r:$(monogacdirXX)/System.Numerics.dll
protodir = $(builddir)/lib/proto
outdir = $(builddir)lib/$(CONFIG)/$(outsuffix)/

INSTALL = $(SHELL) $(topdir)install-sh
INSTALL_DATA = $(INSTALL) -c -m 644
Expand Down
3 changes: 2 additions & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,9 @@ src/fsharp/FSharp.Data.TypeProviders/Makefile
src/fsharp/fsi/Makefile
src/fsharp/fsiAnyCpu/Makefile
src/fsharp/policy.2.0.FSharp.Core/Makefile
src/fsharp/policy.4.0.FSharp.Core/Makefile
src/fsharp/policy.2.3.FSharp.Core/Makefile
src/fsharp/policy.3.3.FSharp.Core/Makefile
src/fsharp/policy.4.0.FSharp.Core/Makefile
src/fsharp/policy.4.3.FSharp.Core/Makefile
])
AC_OUTPUT
Expand Down
4 changes: 4 additions & 0 deletions lib/bootstrap/2.0/FSharp.SRGen.targets
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ Copyright (C) Microsoft Corporation. Apache 2.0 License.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<UsingTask TaskName="FsSrGen" AssemblyFile="FSharp.SRGen.Build.Tasks.dll"/>
<PropertyGroup>
<!-- Visual Studio and MSBuild use this dependency to trigger resource generation at the right time -->
<PrepareForBuildDependsOn>ProcessFsSrGen;$(PrepareForBuildDependsOn)</PrepareForBuildDependsOn>
<!-- XBuild and MonoDevelop and Xamarin Studio use this dependency to trigger resource generation at the right time -->
<!-- For some reason these don't recognize 'PrepareForBuildDependsOn' -->
<BuildDependsOn>ProcessFsSrGen;$(BuildDependsOn)</BuildDependsOn>
</PropertyGroup>

Expand Down
Loading