<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/windows/msvc/genhdr.targets, branch esp-extra-scripts</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=esp-extra-scripts</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=esp-extra-scripts'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2016-06-15T22:42:48+00:00</updated>
<entry>
<title>py: Rename __QSTR_EXTRACT flag to NO_QSTR.</title>
<updated>2016-06-15T22:42:48+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2016-06-15T22:40:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=f469c764428230363a2b22fedf303d86eea82853'/>
<id>urn:sha1:f469c764428230363a2b22fedf303d86eea82853</id>
<content type='text'>
It has more usages than just qstr extraction, for example, embedding (where
people don't care about efficient predefined qstrs).
</content>
</entry>
<entry>
<title>windows/msvc: Rewrite qstr auto-generation.</title>
<updated>2016-04-25T21:34:24+00:00</updated>
<author>
<name>stijn</name>
<email>stinos@zoho.com</email>
</author>
<published>2016-04-23T16:55:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=29c8c8aecb3409e57a43256f8fe5cb25de1e9856'/>
<id>urn:sha1:29c8c8aecb3409e57a43256f8fe5cb25de1e9856</id>
<content type='text'>
Builds have been broken since reworking autogeneration in c618f91 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).
</content>
</entry>
<entry>
<title>windows/msvc: Implement automatic qstr generation using makeqstrdefs.</title>
<updated>2016-04-16T12:19:15+00:00</updated>
<author>
<name>stijn</name>
<email>stijn@ignitron.net</email>
</author>
<published>2016-03-15T09:22:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9a627e8881c1b5d8fad9f1a563b5af23716e1b55'/>
<id>urn:sha1:9a627e8881c1b5d8fad9f1a563b5af23716e1b55</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>msvc: Use different output directories depending on build type</title>
<updated>2015-12-11T21:42:30+00:00</updated>
<author>
<name>stijn</name>
<email>stijn@ignitron.net</email>
</author>
<published>2015-11-12T08:42:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=967ceba5b7fc56f7642947b2c48199a4d9db0d4a'/>
<id>urn:sha1:967ceba5b7fc56f7642947b2c48199a4d9db0d4a</id>
<content type='text'>
This allows multiple versions (e.g. Debug/Release, x86/x64) of micropython.exe
to co-exist instead and also solves potential problems where msbuild does not
completely rebuild the output and/or pdb files when switching between builds,
which in turn can cause linker errors in dependent projects.

By default exe/map/... files go in windows/build/$(Configuration)$(Platform)

After each build micropython.exe is still copied from the above directory to
the windows directory though, as that is consistent with the other ports and
the test runner by default uses that location as well.

Also rename env.props -&gt; path.props which is a clearer name,
and add ample documentation in the affected build files.

(also see discussion in #1538)
</content>
</entry>
<entry>
<title>windows: Allow specifying the python executable to use for msvc builds</title>
<updated>2015-11-10T15:37:09+00:00</updated>
<author>
<name>stijn</name>
<email>stinos@zoho.com</email>
</author>
<published>2015-11-07T19:00:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=b1dbbd32ebcdafd046e8d69ec29a1565f42765cb'/>
<id>urn:sha1:b1dbbd32ebcdafd046e8d69ec29a1565f42765cb</id>
<content type='text'>
This defaults to 'python' but can be now overridden if needed
</content>
</entry>
<entry>
<title>py: Replace py-version.sh with makeversionhdr.py, written in Python.</title>
<updated>2015-04-28T22:52:36+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-04-22T16:38:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=95f53461c2c42490d12acd41463b86f0056e6f40'/>
<id>urn:sha1:95f53461c2c42490d12acd41463b86f0056e6f40</id>
<content type='text'>
Also rename py-version.h to mpversion.h for consistency with mpconfig.h.
</content>
</entry>
<entry>
<title>msvc: Update genhdr script to emit MicroPython version numbers</title>
<updated>2015-04-22T10:07:30+00:00</updated>
<author>
<name>stijn</name>
<email>stinos@zoho.com</email>
</author>
<published>2015-04-22T10:03:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=c52f1258a8ececbaf25331c6cbfc373e6ed133b4'/>
<id>urn:sha1:c52f1258a8ececbaf25331c6cbfc373e6ed133b4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>msvc: Use single build target for dealing with generated files</title>
<updated>2015-01-02T15:55:02+00:00</updated>
<author>
<name>stijn</name>
<email>stinos@zoho.com</email>
</author>
<published>2015-01-02T15:31:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ffc96a901a13f6f114368ad50a1d7189c0826822'/>
<id>urn:sha1:ffc96a901a13f6f114368ad50a1d7189c0826822</id>
<content type='text'>
Remove some duplication in the code for generating
qstrdefs.generated.h and py-version.h
</content>
</entry>
<entry>
<title>msvc: Define main build/include directories in a single location</title>
<updated>2015-01-02T15:52:07+00:00</updated>
<author>
<name>stijn</name>
<email>stinos@zoho.com</email>
</author>
<published>2015-01-02T10:49:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=8dec62a1a41f1c48aa7bdd3848c0f46a62de4f29'/>
<id>urn:sha1:8dec62a1a41f1c48aa7bdd3848c0f46a62de4f29</id>
<content type='text'>
- Use a single file env.props for defining the main directories used when building.
  env.props resolves the base directory and defines overridable output directories,
  and is used by all other build files.
- Fix the build currently failing, basically because the preprocessing command for generating
  qstrdefs uses different include directories than the build itself does.
  (specifically, qstrdefs.h uses #include "py/mpconfig.h" since the fixes for #1022
  in 51dfcb4, so we need to use the base directory as include directory, not the py dir itself).
  So define a single variable containing the include directories instead and use it where needed.
</content>
</entry>
<entry>
<title>msvc: Only update generated headers when there are changes</title>
<updated>2014-05-28T14:03:38+00:00</updated>
<author>
<name>stijn</name>
<email>stinos@zoho.com</email>
</author>
<published>2014-05-28T14:03:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=48d641e41a6f85a3ea55b064249a2c036a1e8022'/>
<id>urn:sha1:48d641e41a6f85a3ea55b064249a2c036a1e8022</id>
<content type='text'>
This fixes generating the headers casuing complete rebuilds,
even when the headere's content didn't really change.
</content>
</entry>
</feed>
