diff --git a/AUTHORS b/AUTHORS index 2f784aa9..1b603f68 100644 --- a/AUTHORS +++ b/AUTHORS @@ -50,6 +50,7 @@ Thanks to the following people for patches and bug reports: * Stephen Lewis * Taylor Venable * Travis Cross + * Yuki Okumura If you would prefer not to be listed, or are one of the users listed without a full name, please contact me. If you've made a contribution diff --git a/README-win32.md b/README-win32.md new file mode 100644 index 00000000..813649ce --- /dev/null +++ b/README-win32.md @@ -0,0 +1,82 @@ +Chibi-scheme for Windows +======================== + +Chibi-scheme provides limited support for native desktop Windows. To use +fully-featured Chibi-scheme on Windows, consider using POSIX layer such as +Windows Subsytem for Linux(WSL), Cygwin or MSYS. + +Currently, only R7RS Small libraries are available for the platform. + +Supported Environments +---------------------- + +Chibi-scheme can be compiled with following platforms: + +* Microsoft Visual Studio 2017 (32bit only) +* MinGW32 +* MinGW64 +* MSYS + + +Known Issues +------------ + +Following libraries are not ported yet: + +* `(chibi net)` +* `(chibi process)` : `exit` is available through `(scheme process-context)` +* `(chibi stty)` +* `(chibi system)` +* `(chibi time)` + +Following library is not completely ported: + +* `(chibi filesystem)` + +Other issues: + +* SRFI-27: Due to C Runtime limitation, the library is not thread-safe +* `make install` is not supported on Windows platforms +* On Win64 platforms, case of character values are not handled properly +* On MSVC, flonum precision is degraded when compared with other compilers +* Cross compilation is not supported + + +Build with MinGW(Makefile) +-------------------------- + +The top-level `Makefile` can be used with MinGW. + +1. Open MinGW64 or MinGW32 command prompt +2. `make` +3. `make test` + +Currently, `make doc` is not supported on these platforms. + + +Build with MSYS(Makefile) +------------------------- + +By default, the Makefile will compile against native Windows API. To use +MSYS's own POSIX emulation layer, specify `PLATFORM=msys`. + +1. Open MSYS command prompt +2. `make PLATFORM=msys` +3. `make PLATFORM=msys test` + + +Build with Visual Studio(CMake) +------------------------------- + +Minimal `CMakeLists.txt` is provided as an example to build Chibi-scheme on +Windows platforms. This is only intended to be used with Windows platforms; +currently it does not provide features provided with standard `Makefile` nor +it does not support UNIX/APPLE platforms either. + +1. (Make sure CMake was selected with Visual Studio installer) +2. Open this directory with "Open with Visual Studio" +3. Choose "x86-Release" or "x86-Debug" configuration +4. "CMake" => "Build all" +5. "CMake" => "Run Tests" => "chibi-scheme" + + diff --git a/README.md b/README.md index bfb81b2f..c962a445 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,8 @@ a smaller language on startup. Chibi-Scheme is known to work on **32** and **64-bit** Linux, FreeBSD and OS X, Plan 9, Windows (using Cygwin), iOS, Android, ARM and [Emscripten](https://kripken.github.io/emscripten-site). +Basic support for native Windows desktop also exists. See +README-win32.md for details and build instructions. To build on most platforms just run `make && make test`. This will provide a shared library *libchibi-scheme*, as well as a sample