This project's code of conduct can be found in the CODE_OF_CONDUCT.md file (v1.4.0 of the http://contributor-covenant.org/ CoC).
If your contribution is large enough you will be asked to sign the Microsoft CLA (the CLA bot will tell you if it's necessary).
- For CoreCLR
- For CPython
- Git
- TortoiseSVN (required to get external dependencies)
- Visual Studio
This repository uses Git submodules, which means the best way to clone this repository is with the --recursive flag:
git clone --recursive https://github.com/Microsoft/Pyjion.gitRun PatchDeps.bat to patch Python to have JIT support and CoreCLR to disable COM support.
Run BuildDeps.cmd to build CoreCLR and Python (which includes downloading Python's dependencies).
- From Visual Studio
- Open the
pyjion.slnfile - Build the solution (should default to a debug build for x64)
- Open the
- Using the "Developer Command Prompt for VS"
- Run
DebugBuild.bat
- Run
- Run
CopyFiles.batto copy files to key locations
- Run
x64\Debug\Test.exe - Run
x64\Debug\Tests.exe - Run
Python\python.bat -m test -n -f Tests\python_tests.txt
- Copy
x64\Debug\pyjit.dlltoPython\PCbuild\amd64\(initially done byCopyFiles.bat, so only do as necessary after rebuilding Pyjion) - Go into the
Pythondirectory and launchpython.bat
Once you have done the above steps you can avoid running them again during development in most situations.
The commands discussed in this section assume they are run from a Developer Command Prompt for VS for access to msbuild.
The BuildDebugPython.bat file will build CPython in debug mode for x64 as well as copy the appropriate files where they need to be to run Pyjion's tests.
The DebugBuild.bat file will build Pyjion in debug mode for x64 and copy the appropriate files to CPython for use in testing.
You'll need to run git clean -d -f -x in CoreCLR when switching between release and debug builds.