Skip to content
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

[WIP] Windows #3582

Closed
wants to merge 46 commits into from
Closed

[WIP] Windows #3582

wants to merge 46 commits into from

Commits on Nov 26, 2016

  1. Make it able to compile targeting Windows

    (almost all stdlib doesn't work right now)
    lbguilherme committed Nov 26, 2016
    Configuration menu
    Copy the full SHA
    8fc5762 View commit details
    Browse the repository at this point in the history
  2. merge

    lbguilherme committed Nov 26, 2016
    Configuration menu
    Copy the full SHA
    1a42d97 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    773c0a2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a8c45b6 View commit details
    Browse the repository at this point in the history
  5. Allow more of the prelude

    lbguilherme committed Nov 26, 2016
    Configuration menu
    Copy the full SHA
    06672f3 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1097d34 View commit details
    Browse the repository at this point in the history
  7. Fix previous commit

    lbguilherme committed Nov 26, 2016
    Configuration menu
    Copy the full SHA
    61917a2 View commit details
    Browse the repository at this point in the history

Commits on Nov 27, 2016

  1. Configuration menu
    Copy the full SHA
    1c2f38e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    51c2686 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    81e5d78 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    01ade3d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    df79849 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    decfd0d View commit details
    Browse the repository at this point in the history

Commits on Dec 29, 2016

  1. Merge crystal v0.20.3

    Conflicts:
    	src/fiber.cr
    	src/io/file_descriptor.cr
    Brian J. Cardiff committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    f77e00c View commit details
    Browse the repository at this point in the history
  2. stub file for windows due to update to 0.20.3

    Brian J. Cardiff committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    83cbb5f View commit details
    Browse the repository at this point in the history

Commits on Dec 30, 2016

  1. fix src to be able to build the compiler (in linux)

    restore content of prelude to be able to compile the compiler in linux with windows target.
    
    stub regex, iconv for windows
    
    add reference to io/memory due to path io/* expansion and migration to crystal 0.20.3
    
    add (temporal) windows-prelude.cr for easy shrink of samples in windows (require --prelude=empty).
    
    ```
    # file ./foo.cr
    require "./windows-prelude" 
    puts "Hello Windows!" 
    ```
    
    ```
    $ make # to build the compiler with windows target
    $ ./bin/crystal build foo.cr --ll --single-module --cross-compile --target x86_64-windows-gnu --prelude=empty
    $ wine /path/to/LLVM-3.9.0/bin/clang.exe  -g3 foo.ll -c -o foo.o
    $ /path/to/mxe/usr/bin/x86_64-w64-mingw32.static-gcc -g3 foo.o -o foo.exe -liconv -lkernel32 -lgc -levent -lws2_32
    $ wine foo.exe 
    Hello Windows!
    ```
    Brian J. Cardiff committed Dec 30, 2016
    Configuration menu
    Copy the full SHA
    21a7275 View commit details
    Browse the repository at this point in the history

Commits on Dec 31, 2016

  1. Initial work on File

    lbguilherme committed Dec 31, 2016
    Configuration menu
    Copy the full SHA
    ba028e8 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1 from bcardiff/win

    fix src to be able to build the compiler (in linux)
    lbguilherme authored Dec 31, 2016
    Configuration menu
    Copy the full SHA
    6b29c91 View commit details
    Browse the repository at this point in the history

Commits on Jan 1, 2017

  1. Merge

    lbguilherme committed Jan 1, 2017
    Configuration menu
    Copy the full SHA
    73b6e7e View commit details
    Browse the repository at this point in the history
  2. Merge

    lbguilherme committed Jan 1, 2017
    Configuration menu
    Copy the full SHA
    22f0d99 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b5a922e View commit details
    Browse the repository at this point in the history

Commits on Jan 2, 2017

  1. fix build

    * make file_descriptor.windows.cr not complain. (docs main does a `require "./io/**"`)
    * run formatter in several files to make ci happy
    Brian J. Cardiff committed Jan 2, 2017
    Configuration menu
    Copy the full SHA
    296d53a View commit details
    Browse the repository at this point in the history
  2. run travis, run.

    Brian J. Cardiff committed Jan 2, 2017
    Configuration menu
    Copy the full SHA
    a47ee02 View commit details
    Browse the repository at this point in the history
  3. allow travis to build any win prefixed branch

    * win
    * win/...
    * win-...
    can be built on forks with travis enabled.
    Brian J. Cardiff committed Jan 2, 2017
    Configuration menu
    Copy the full SHA
    4a78d2c View commit details
    Browse the repository at this point in the history
  4. regex the travis branch filter

    Brian J. Cardiff committed Jan 2, 2017
    Configuration menu
    Copy the full SHA
    bcafe8e View commit details
    Browse the repository at this point in the history
  5. allow printing floats. add LibC.memchr

    Brian J. Cardiff committed Jan 2, 2017
    Configuration menu
    Copy the full SHA
    1154bd0 View commit details
    Browse the repository at this point in the history

Commits on Jan 3, 2017

  1. Merge pull request #3 from bcardiff/win-float

    allow printing floats. add LibC.memchr
    lbguilherme authored Jan 3, 2017
    Configuration menu
    Copy the full SHA
    1ad47f7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6fdb959 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    696e6f1 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5e501f5 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3e22aa7 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    facfdaf View commit details
    Browse the repository at this point in the history
  7. crystal tool format

    lbguilherme committed Jan 3, 2017
    Configuration menu
    Copy the full SHA
    6c5e352 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    c5e89f3 View commit details
    Browse the repository at this point in the history
  9. merge

    lbguilherme committed Jan 3, 2017
    Configuration menu
    Copy the full SHA
    9b96b65 View commit details
    Browse the repository at this point in the history
  10. merge

    lbguilherme committed Jan 3, 2017
    Configuration menu
    Copy the full SHA
    c03200d View commit details
    Browse the repository at this point in the history

Commits on Jan 4, 2017

  1. Configuration menu
    Copy the full SHA
    8b4319a View commit details
    Browse the repository at this point in the history

Commits on Jan 8, 2017

  1. merge

    lbguilherme committed Jan 8, 2017
    Configuration menu
    Copy the full SHA
    68cbf2a View commit details
    Browse the repository at this point in the history
  2. Implement async File IO!

    lbguilherme committed Jan 8, 2017
    Configuration menu
    Copy the full SHA
    b195615 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0b7a07c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2bd96fb View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2017

  1. async io: to take advantage of synchronous return

    The asynchronous call might return the results synchnourly if the operation can be made without blocking (directly from OS cache). This implies there is need to malloc the overlapped struct, because it need to be alive when the completion notification arrives on the Scheduler. (this will need a mutex)
    lbguilherme committed Jan 9, 2017
    Configuration menu
    Copy the full SHA
    ad888c4 View commit details
    Browse the repository at this point in the history

Commits on Feb 25, 2017

  1. merge

    lbguilherme committed Feb 25, 2017
    Configuration menu
    Copy the full SHA
    de9af24 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2017

  1. merge

    lbguilherme committed May 14, 2017
    Configuration menu
    Copy the full SHA
    a41a541 View commit details
    Browse the repository at this point in the history
  2. fix merge conflict

    lbguilherme committed May 14, 2017
    Configuration menu
    Copy the full SHA
    f2887ca View commit details
    Browse the repository at this point in the history
  3. Fix source format

    lbguilherme committed May 14, 2017
    Configuration menu
    Copy the full SHA
    ea7cd51 View commit details
    Browse the repository at this point in the history