summaryrefslogtreecommitdiffstats
path: root/source-builder/sb/macros.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* sb: Back port changes to support mailing list posting.Chris Johns2018-02-051-0/+3
| | | | Close #3287
* sb: Update code base to support Python3 and Python2.Chris Johns2016-03-071-21/+46
| | | | | | Fix Windows support to allow MSYS2 Python to be used. Updates #2619.
* sb: Make the source and patch labels have sortable label.Chris Johns2015-03-261-1/+1
| | | | | | This patch changes 'patch1' to 'patch0001' so sorting of the macro keys in the patch macro map returns the order the patches are declared. The helps mamage patch sets that need a specific order.
* sb: Implement %source and %patch to manage source and patches.Chris Johns2014-05-131-8/+40
| | | | | | Remove the numbered source and patches and automatically manage sources and patches. This removes the overhead in maintaining large collections of patches.
* Add bare/config and move the source-builder/config to it.Chris Johns2013-05-141-1/+2
| | | | | | | | | Rework the RTEMS build set files to point to the new location. Move the files into devel, this follows the ports naming in FreeBSD. Update the macros, defaults, and options to support this.
* Fix support for Windows (MinGW) native builds using MSYS.Chris Johns2013-05-131-1/+4
| | | | | | | | | | Fix paths that need to be coverted to host format. The shell expansion needs to invoke a shell on Windows as cmd.exe will not work. Munch the paths into smaller sizes for Windows due to the limited path size.
* Fix the open calls to use a host path.Chris Johns2013-05-011-2/+3
|
* Add a get value call for macros.Chris Johns2013-04-301-0/+6
|
* Fix the arguments to the locking map. All maps are locked out.Chris Johns2013-04-281-2/+2
|
* Make _sbdir absolute. Add locks to read maps.Chris Johns2013-04-271-12/+22
| | | | | | Add locks to the read maps to support disabling the select command. Make the _sbdir etc absolute to let it be referenced from anywhere.
* Add macro include support. Use it for building from head.Chris Johns2013-04-261-9/+51
| | | | | This change provides a simple way to build all parts of the tools from version control.
* Support multiple read maps.Chris Johns2013-04-201-28/+33
| | | | | | | A build could require more than one map to be active at once. This change allows more than one map to be set. An example is gcc and newlib. Having separate maps allows a user to control which part they test.
* Add support for snapshot testing.Chris Johns2013-04-131-16/+39
| | | | | | | | User macro files passed on the command line allow a user to override the defaults in configuration files to test new changes in pending releases. Fix macros issues with keys with more than one map.
* Macros updates to support multiple maps.Chris Johns2013-04-131-14/+60
| | | | | | | | | | | Add a read and write map pointer. This means you can read from a user defined map through to the global map while pointing all write to only the global map therefore supporting overrides cleanly. Print the list of loaded files when printing. Provide helper calls for type and attributes.
* Refactor defaults, macros and options.Chris Johns2013-04-091-0/+333
To support building snapshots and pre-release source the defaults has been refactored. The defaults have been moved to a stand alone file and a macros.py module added. This modile abstracts the old default dictionary turning it into a class. The macros class can load macros from a file therefore the defaults have been moved to a stand alone file. The use of defaults has been removed from the project. The only case where it is used in the options where the defaults are read from a file. Macros are used everywhere now. The defaults.py has been moved to the option.py and the separate options and defaults values has been moved to a new pattern. When constructing an object that needs macros and options if the macros passed in is None the defaults from the options are used. This makes it clear when the defaults are being used or when a modified set of macros is being used. The macros class support maps. The default is 'global' and where all the defaults reside and where configuratiion file changes end up. Maps allow macros to be read from a file and override the values being maintained in the 'global' map. Reading a macro first checks the map and if not present checks the 'global' map. The addition of maps to the macros provides the base to support snapshots and pre-release testing with standard configurations. This functionality needs to be added. It works by letting to specify a snapshot with: source0: none, override, 'my-dist.tar.bz2' and it will be used rather the value from the standard configuration. With a build set you need to also specify the package these macros are for. The maps provide this.