/EventStore

An awesome, rock-solid, super-fast persistence engine for event-sourced applications.

Primary LanguageC#BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

*** Building in Windows (Development)

0. Prerequisites

Visual Studio 2010 (with .NET 4 and 64-bit C++ support)
msysgit (or command line compatible) available as "git.exe" in PATH directories
Subversion command line client available as "svn.exe" in PATH directories

1. Environment

"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x64

2. Download and build v8 
(skip if v8 libs are already available in src\EventStore\libs\x64\

src\EventStore\Scripts\v8\get-v8.cmd 
src\EventStore\Scripts\v8\build-v8_x64.cmd 

3. Build the 

src\EventStore\Projections.Dev.WindowsOnly.sln 

with 64-bit msbuild.exe from .NET Framework 4

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe /p:Configuration=Debug;Platform=x64 src\EventStore\Projections.Dev.WindowsOnly.sln 

4. The src\EventStore\EventStore.sln solution can be used while you don't need 
to change C++ code.  

NOTE: 

EventStore.sln platform mapping are configured to be compatible with both 
xbuild on mono and msbuild in .NET
The "Any CPU" platform in the EventStore.sln solution is actually x64, but due 
to build problems in mono it has to be "Any CPU"


Projections.Dev.WindowsOnly.sln platform mappings are configured to be used in 
Windows only.  These settings are compatible with ContinuousTests and R# (unit 
test runner starts 64-bit runner and loads js1.dll corectly)

*** Building in linux (  Ubuntu 12.04 )

0. Prerequisites

- Mono (2.11 at least) available on $PATH
- svn binary available on $PATH (sudo apt-get install subversion)

You can get and build mono from the master branch in github repository with 

(requires root rights to install apt-get required packages - see script source)

./src/EventStore/Scripts/get-mono


1. Download and build V8 

./src/EventStore/Scripts/v8/get-v8.sh 
./src/EventStore/Scripts/v8/build-v8.sh 

2. Build the V8 integration code (libjs1.so)

./src/EventStore/Scripts/v8/build-js1.sh 

3. The EventStore.sln soluiton can be built with xbuild or MonoDevelop (3 or 
later)