Differences between revisions 1 and 36 (spanning 35 versions)
Revision 1 as of 2003-06-27 21:51:56
Size: 357
Editor: MikeRovner
Comment:
Revision 36 as of 2020-08-29 22:17:25
Size: 8349
Editor: IwanAucamp
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Configuration and Build tools: #pragma section-numbers on
Line 3: Line 3:
  * [http://scons.sourceforge.net/ SCons] - best of breed {{{make}}} replacement - Software CONStruction tool
  * [http://confix.sourceforge.net/ Confix] - generates input files for AutoMake
  * [http://vertoo.sourceforge.net/ Vertoo] - VERsion management TOOl (automates version number maintanace across several files)
<<TableOfContents()>>


= Configuration and Build Tools =


||<style="width: 20%;"> '''Name''' ||<style="width: 20%;"> '''PyPI''' ||<style="width: 20%;"> '''Latest Release''' || '''Description''' ||
|| [[https://github.com/openembedded/bitbake|Bitbake]] || None || 1.46.2 (2020-08-04) || A task executor used to build packages for [[OpenEmbedded|OpenEmbedded]] and other projects. [[https://en.wikipedia.org/wiki/BitBake|Wikipedia]] ||
|| [[http://www.buildout.org/en/latest/|Buildout]] || [[http://pypi.python.org/pypi/zc.buildout|zc.buildout]] || 2.13.3 (2020-02-11) || Build tool for creating applications, includes the capability to resolve Python dependencies that are packaged as Python eggs. ||
|| [[http://docs.python.org/distutils/|distutils]] || N/A || N/A (ships with python) || standard module provides support for building and installing additional modules into a Python installation ||
|| [[https://pydoit.org/|doit]] || [[https://pypi.org/project/doit/|doit]] || 0.32.0 (2019-12-09) || Automation tool (bringing the power of build-tools to execute any kind of task) ||
|| [[https://www.fabfile.org/|Fabric]] || [[https://pypi.org/project/fabric/|fabric]] || 2.5.0 (2019-08-07) || a simple pythonic remote deployment tool for application deployment or systems administration tasks. It builds on top of [[http://www.pyinvoke.org/|Invoke]]. ||
|| [[https://code.google.com/p/fabricate/|Fabricate]] || [[https://pypi.org/project/fabricate/|fabricate]] || 1.29.0 (2017-03-03) || the better build tool: auto-dependency discovery via strace; a successor to Memoize. (Old repo/page: [[https://code.google.com/archive/p/fabricate/|code.google.com]]) ||
|| [[http://www.pyinvoke.org/|Invoke]] || [[https://pypi.org/project/invoke/|invoke]] || 1.4.1 (2020-01-30) || a Python task execution tool & library, drawing inspiration from various sources to arrive at a powerful & clean feature set. ||
|| [[https://github.com/CalumJEadie/microbuild|microbuild]] || [[https://pypi.org/project/microbuild/|microbuild]] || 0.3.3 (2013-03-26) || Lightweight Python Build Tool. ||
|| [[https://github.com/paver/paver|Paver]] || [[https://pypi.org/project/Paver/|Paver]] || 1.3.4 (2017-12-31) || Build/distribution/deployment tool. Build files are in Python. ||
|| [[https://pybuilder.io/|PyBuilder(mriehl)]] || [[https://pypi.org/project/pybuilder/|pybuilder]] || 0.12.8 (2020-08-27) || a software build tool written in 100% pure Python, mainly targeting Python applications. ||
|| [[https://rags.github.io/pynt/|pynt]] || [[https://pypi.org/project/pynt/|pynt]] || 0.8.2 (2018-06-24) || A pure Python build tool. Tasks are just python functions. Manages dependencies between tasks. Allows parameter passing from the commandline. Forked from [[https://github.com/CalumJEadie/microbuild|microbuild]] ([[https://github.com/rags/pynt|github.com]]) ||
|| [[https://www.scons.org/|SCons]] || [[https://pypi.org/project/SCons/|SCons]] || 4.0.1 (2020-07-17) || Software construction tool written in Python, with Python as the configuration/scripting language ([[https://github.com/SCons/scons|code on GitHub]]) ||
|| [[https://virtualenv.pypa.io/|Virtualenv]] || [[https://pypi.org/project/virtualenv/|virtualenv]] || 20.0.31 (2020-08-17) || A tool for creating isolated Python environments. ||
|| [[https://waf.io/|Waf]] || None || 2.0.20 (2019-11-24) || software construction tool (comparable to autotools, CMake, SCons, ant) [[https://gitlab.com/ita1024/waf/|gitlab.com]] ||

== Dead, Unmaintained and Discontinued Projects ==

 * [[http://www.a-a-p.org/|AAP]] - Latest version 1.093 released on 2013-09-15. Does not appear to support Python 3.
 * [[http://projects.bertram-scharpf.de/bake/index.html|Bake]] - a Make replacement. Website is down, [[http://web.archive.org/web/20071007134639/http://projects.bertram-scharpf.de/bake/index.html|archived here]]. No release in the last 10 years.
 * [[http://agendaless.com/Members/chrism/software/buildit/README.txt|BuildIt]] (by chrism) - Build tool for creating applications. Website down, [[http://web.archive.org/web/20120114061845/http://agendaless.com/Members/chrism/software/buildit/README.txt|web.archive.org]]. No release in the last 10 years.
 * [[https://bitbucket.org/mixmastamyk/buildit|BuildIt]] (by mixmastamyk) - BuildIt is a simple build tool and make replacement, meaning it builds files based on other files, given your instructions. Website down, [[http://web.archive.org/web/20161008052108/https://bitbucket.org/mixmastamyk/buildit|web.archive.org]]. [[https://pypi.org/project/buildit/|pypi.org]]. Last release in 2016.
 * [[http://confix.sourceforge.net/|Confix]] - generates input files for [[http://www.gnu.org/software/automake/|automake]]. [[https://sourceforge.net/projects/confix/|sourceforge.net]]. Website down, [[http://web.archive.org/web/20080429230516/http://confix.sourceforge.net:80/|web.archive.org]]. Last release was 2.3.9 on 2013-01-29, does not support python 3. [[https://sourceforge.net/projects/confix|sourceforge.net]]
 * [[http://www.cs.berkeley.edu/~billm/memoize.html|Memoize]] - Designed as a replacement for Make - ''site unavailable, see the [[http://web.archive.org/web/20090528032849/http://www.cs.berkeley.edu/~billm/memoize.html|Internet Archive version]]''
 * [[https://sourceforge.net/projects/pyant/|PyAnt]] - ''development discontinued'', last release 0.32 was on 2003-04-12.
 * [[http://pybuilder.sf.net|PyBuilder]] (David Mack)- A Gui interface to compile scripts using py2exe. Last release 0.3 was on 2007-02-28.
 * [[http://www.plope.com/software/pymake|PyMake]] ([[http://web.archive.org/web/20170201233400/http://plope.com/software/pymake/|web.archive.org]]) - Designed as a replacement for Make. ''Development replaced by BuildIt''.
 * [[https://bitbucket.org/saudalwasly/pymake2/|PyMake2]], site down and last release 0.5.33 on 2017-10-28 [[https://pypi.org/project/pymake2/|pypi.org]]
 * [[http://staff.bbhc.org/christophern/exos/rebuild/index.html|Rebuild]] - python module that replaces make - ''site unavailable, see the [[http://web.archive.org/web/20041214162327/http://staff.bbhc.org:80/christophern/exos/rebuild/index.html|web.archive.org]]''
 * [[http://www.zedshaw.com/projects/vellum/|Vellum]] ([[http://web.archive.org/web/20090201180349/http://www.zedshaw.com:80/projects/vellum/|web.archive.org]]) - Simple build tool similar to Make. ''Dead project. [[https://github.com/zedshaw/vellum||github.com]]''. Last release 0.17 on 2009-06-30.
 * [[http://vertoo.sourceforge.net/|Vertoo]] - '''ver'''sion management '''too'''l (automates version number maintenance across several files). Last release 0.8 on 2003-07-18. [[https://sourceforge.net/projects/vertoo/|sf.net]]



= Build Testing =


 * [[http://bitten.edgewall.org/|Bitten]] - a continuous integration plugin for Trac
 * [[http://buildbot.sourceforge.net/|BuildBot]] The [[TwistedMatrix|TwistedMatrix]] project has a [[BuildBot|BuildBot]] installed which runs the unit test suite on a variety of platforms. The [[BuildBot|BuildBot]] uses the Twisted framework for networking, RPC, web status delivery, persistence, and other platform needs.
 * [[http://gump.apache.org/|Apache Gump]] - Apache's continuous integration tool. "It is written in python and fully supports Apache Ant, Apache Maven and other build tools."

= Related Lists =

* [[https://github.com/common-workflow-language/common-workflow-language/wiki/Existing-Workflow-systems|CWL's Existing Workflow systems]]
* [[https://en.wikipedia.org/wiki/List_of_build_automation_software|wikipedia.org/List of build automation software]]

= Editorial Notes =


The above lists should be arranged in ascending alphabetical order - please respect this when adding new entries. If, as the developer of a listed application, you disagree with the classification of the work, please move it into the appropriate category or create a new category, respecting the ascending alphabetical order of the categories. When specifying release dates please use the format YYYY-MM-DD.


== Criteria for Dead, Discontinued or Unmaintained Projects ==

This is a bit difficult to say and it is handled on a case by case basis, but any of the following should be sufficient criteria

 * No python 3 support
 * Project website is no longer online

1. Configuration and Build Tools

Name

PyPI

Latest Release

Description

Bitbake

None

1.46.2 (2020-08-04)

A task executor used to build packages for OpenEmbedded and other projects. Wikipedia

Buildout

zc.buildout

2.13.3 (2020-02-11)

Build tool for creating applications, includes the capability to resolve Python dependencies that are packaged as Python eggs.

distutils

N/A

N/A (ships with python)

standard module provides support for building and installing additional modules into a Python installation

doit

doit

0.32.0 (2019-12-09)

Automation tool (bringing the power of build-tools to execute any kind of task)

Fabric

fabric

2.5.0 (2019-08-07)

a simple pythonic remote deployment tool for application deployment or systems administration tasks. It builds on top of Invoke.

Fabricate

fabricate

1.29.0 (2017-03-03)

the better build tool: auto-dependency discovery via strace; a successor to Memoize. (Old repo/page: code.google.com)

Invoke

invoke

1.4.1 (2020-01-30)

a Python task execution tool & library, drawing inspiration from various sources to arrive at a powerful & clean feature set.

microbuild

microbuild

0.3.3 (2013-03-26)

Lightweight Python Build Tool.

Paver

Paver

1.3.4 (2017-12-31)

Build/distribution/deployment tool. Build files are in Python.

PyBuilder(mriehl)

pybuilder

0.12.8 (2020-08-27)

a software build tool written in 100% pure Python, mainly targeting Python applications.

pynt

pynt

0.8.2 (2018-06-24)

A pure Python build tool. Tasks are just python functions. Manages dependencies between tasks. Allows parameter passing from the commandline. Forked from microbuild (github.com)

SCons

SCons

4.0.1 (2020-07-17)

Software construction tool written in Python, with Python as the configuration/scripting language (code on GitHub)

Virtualenv

virtualenv

20.0.31 (2020-08-17)

A tool for creating isolated Python environments.

Waf

None

2.0.20 (2019-11-24)

software construction tool (comparable to autotools, CMake, SCons, ant) gitlab.com

1.1. Dead, Unmaintained and Discontinued Projects

2. Build Testing

  • Bitten - a continuous integration plugin for Trac

  • BuildBot The TwistedMatrix project has a BuildBot installed which runs the unit test suite on a variety of platforms. The BuildBot uses the Twisted framework for networking, RPC, web status delivery, persistence, and other platform needs.

  • Apache Gump - Apache's continuous integration tool. "It is written in python and fully supports Apache Ant, Apache Maven and other build tools."

3. Related Lists

* CWL's Existing Workflow systems * wikipedia.org/List of build automation software

4. Editorial Notes

The above lists should be arranged in ascending alphabetical order - please respect this when adding new entries. If, as the developer of a listed application, you disagree with the classification of the work, please move it into the appropriate category or create a new category, respecting the ascending alphabetical order of the categories. When specifying release dates please use the format YYYY-MM-DD.

4.1. Criteria for Dead, Discontinued or Unmaintained Projects

This is a bit difficult to say and it is handled on a case by case basis, but any of the following should be sufficient criteria

  • No python 3 support
  • Project website is no longer online

ConfigurationAndBuildTools (last edited 2022-09-02 13:27:22 by MatsWichmann)

Unable to edit the page? See the FrontPage for instructions.