1. 30 Apr, 2017 2 commits
    • stijn's avatar
      msvc: Rebuild all qstrs when mpconfig headers are modified · db9c2e31
      stijn authored
      Make qstr generation depend on modifications in mpconfigport.h, mpconfig.h
      and makeqstrdata.py and if any of those change scan all source files for
      qstrs again since they might have changed (for example typcially when
      enabling new features in mpconfig.h).
      This fixes #2982 for msvc builds.
      db9c2e31
    • stijn's avatar
      msvc: Do not define DEBUG for debug builds · 8d865fa7
      stijn authored
      It is not used anywhere and causes a warning about redefinition because
      it is used in modutimeq.c
      8d865fa7
  2. 29 Apr, 2017 1 commit
  3. 22 Apr, 2017 1 commit
  4. 21 Apr, 2017 1 commit
    • stijn's avatar
      windows: Bring mpconfigport.h up-to-date with unix port · 3e5cd35a
      stijn authored
      Add definitions/source files for features which work on the windows
      ports but weren't yet enabled.
      UTIME related lines are moved a couple of lines up to make comparision
      with unix/mpconfigport.h easier in the future.
      3e5cd35a
  5. 11 Apr, 2017 1 commit
  6. 01 Apr, 2017 1 commit
  7. 23 Mar, 2017 3 commits
    • stijn's avatar
      msvc: Remove directory with generated files when cleaning. · 3f3df435
      stijn authored
      This assures after cleaning all build artefacts (qstr related files,
      generated version header) have been removed.
      3f3df435
    • stijn's avatar
      windows: Make msvc project file support any version from VS2013 to VS2017 · c6113138
      stijn authored
      Instead of having the PlatformToolset property hardcoded to a specific
      version just set it to the value of DefaultPlatformToolset: this gets
      defined according to the commandline environment in which the build was
      started.
      Instead of just supporting VS2015 the project can now be built by any
      version from VS2013 to VS2017 and normally future versions as well, without
      quirks like VS asking whether you want to upgrade the project to the latest
      version (as was the case when opening the project in VS2017) or not being
      able to build at all (as was the case when opening the project in VS2013).
      
      Also adjust the .gitignore file to ignore any artefacts from VS2017.
      c6113138
    • Krzysztof Blazewicz's avatar
      all/Makefile: Remove -ansi from GCC flags, its ignored anyway. · 75589272
      Krzysztof Blazewicz authored
      The -ansi flag is used for C dialect selection and it is equivalent to -std=c90.
      Because it goes right before -std=gnu99 it is ignored as for conflicting flags
      GCC always uses the last one.
      75589272
  8. 02 Mar, 2017 1 commit
  9. 17 Feb, 2017 1 commit
  10. 16 Nov, 2016 1 commit
  11. 03 Nov, 2016 2 commits
  12. 29 Oct, 2016 1 commit
  13. 10 Sep, 2016 1 commit
  14. 15 Aug, 2016 1 commit
  15. 22 Jul, 2016 2 commits
  16. 25 Jun, 2016 1 commit
  17. 17 Jun, 2016 1 commit
  18. 15 Jun, 2016 1 commit
  19. 08 May, 2016 1 commit
  20. 25 Apr, 2016 1 commit
    • stijn's avatar
      windows/msvc: Rewrite qstr auto-generation. · 29c8c8ae
      stijn authored
      Builds have been broken since reworking autogeneration in c618f91e and
      related, this gets fixed here by applying similar qstr generation logic
      for the msvc builds: c files are only preprocessed when changed (or not
      yet preprocessed) and the concatenated output is fed into makeqstrdefs.py.
      To speed up this process, the concatenated output is already filtered to
      contain only lines which makeqstrdefs really needs: this makes the qstr
      generation stage about twice as fast (checked on different machines).
      29c8c8ae
  21. 16 Apr, 2016 2 commits
    • stijn's avatar
      windows/msvc: Implement automatic qstr generation using makeqstrdefs. · 9a627e88
      stijn authored
      Note this still needs some work: currently all source files are always
      preprocessed no matter which one actually changed, moreover that happens
      file by file without any parallellism so builds are painstakingly slow.
      9a627e88
    • Jan Čapek's avatar
      py: Add rules for automated extraction of qstrs from sources. · d76c65f5
      Jan Čapek authored
      - add template rule that converts a specified source file into a qstring file
      
      - add special rule for generating a central header that contains all
        extracted/autogenerated strings - defined by QSTR_DEFS_COLLECTED
        variable. Each platform appends a list of sources that may contain
        qstrings into a new build variable: SRC_QSTR. Any autogenerated
        prerequisities are should be appened to SRC_QSTR_AUTO_DEPS variable.
      
      - remove most qstrings from py/qstrdefs, keep only qstrings that
        contain special characters - these cannot be easily detected in the
        sources without additional annotations
      
      - remove most manual qstrdefs, use qstrdef autogen for: py, cc3200,
        stmhal, teensy, unix, windows, pic16bit:
      
         - remove all micropython generic qstrdefs except for the special strings that contain special characters (e.g. /,+,<,> etc.)
         - remove all port specific qstrdefs except for special strings
         - append sources for qstr generation in platform m...
      d76c65f5
  22. 14 Apr, 2016 1 commit
  23. 13 Apr, 2016 1 commit
  24. 29 Jan, 2016 1 commit
    • Paul Sokolovsky's avatar
      py/runtime: mp_stack_ctrl_init() should be called immediately on startup. · d3b1f0b6
      Paul Sokolovsky authored
      Calling it from mp_init() is too late for some ports (like Unix), and leads
      to incomplete stack frame being captured, with following GC issues. So, now
      each port should call mp_stack_ctrl_init() on its own, ASAP after startup,
      and taking special precautions so it really was called before stack variables
      get allocated (because if such variable with a pointer is missed, it may lead
      to over-collecting (typical symptom is segfaulting)).
      d3b1f0b6
  25. 26 Jan, 2016 2 commits
  26. 27 Dec, 2015 1 commit
  27. 26 Dec, 2015 1 commit
    • stijn's avatar
      windows/msvc: Nicer handling of asserts and 'invalid' parameters · 1aa4599d
      stijn authored
      The default bahaviour for debug builds is to show dialog boxes for asserts
      and invalid parameter handling. This is not so nice in general and causes
      the Appveyor debug builds to hang because the io\file_seek.py test passes
      a closed file descriptor to lseek. Disable this behaviour by printing
      assert messages to the output instead of showing the dialog, and by
      disabling 'invalid' parameter handling which causes the affected functions
      to just return an error and set errno appropriately.
      1aa4599d
  28. 21 Dec, 2015 1 commit
    • stijn's avatar
      windows: Better handling of Ctrl-C · a5aa03ac
      stijn authored
      This builds upon the changes made in 21950463. Using signal() does not
      produce reliable results so SetConsoleCtrlHandler is used, and the handler
      is installed only once during initialization instead of removing it in
      mp_hal_set_interrupt_char when it is not strictly needed anymore, since
      removing it might lead to Ctrl-C events being missed because they are
      fired on a seperate thread which might only become alive after the handler
      was removed.
      a5aa03ac
  29. 18 Dec, 2015 2 commits
  30. 17 Dec, 2015 2 commits
  31. 14 Dec, 2015 1 commit