Difference between revisions of "GEPS 026: Replace 'make' for Gramps build"

From Gramps
Jump to: navigation, search
Line 1: Line 1:
Move Gramps away from using Makefiles and to using setup.py and/or Distutils [http://sourceforge.net/mailarchive/message.php?msg_id=28984484][http://sourceforge.net/mailarchive/message.php?msg_id=28969888][http://sourceforge.net/mailarchive/message.php?msg_id=27984817]{{bug|2621}}
+
Move Gramps away from using [http://en.wikipedia.org/wiki/Make_%28software%29 Makefiles] and change to using Pythons setup.py and/or Distutils [http://sourceforge.net/mailarchive/message.php?msg_id=28984484][http://sourceforge.net/mailarchive/message.php?msg_id=28969888][http://sourceforge.net/mailarchive/message.php?msg_id=27984817]{{bug|2621}}
  
 
*[https://gramps.svn.sourceforge.net/svnroot/gramps/branches/geps/gep-026-replace-make/ SVN]
 
*[https://gramps.svn.sourceforge.net/svnroot/gramps/branches/geps/gep-026-replace-make/ SVN]
Line 5: Line 5:
 
==Purpose==
 
==Purpose==
  
# the core developers don't know Make, which was the case also in the past. Somebody of a company with expertise contributed the make system to Gramps.
+
# The core Gramps developers do not know [http://www.gnu.org/software/make/ GNU Make], which was the case also in the past. Somebody of a company with expertise contributed the make system to Gramps.
# we need to update makefiles when adding changing files. With setup.py you only need to worry about changing directories, so simpler
+
# With GNU Make developers need to update makefiles when adding and changing files.<br />*With setup.py developers only need to worry about changing directories; this is simpler to maintain.
# with make it happens from time to time that a new file is forgotten to be added in a release, causing overhead for the release manager
+
# With GNU Make from time to time it happens that a new file is forgotten to be added in a release, causing maintainance overhead for the release manager.
# gramps is pure python, we don't need a makefile  system checking for a lot of things it is checking now
+
# Gramps is pure python, we don't need a makefile  system checking for a lot of things it is checking now.
# we need less dependencies for installing gramps in linux. Already on windows makefiles are not used
+
# We need less dependencies for installing Gramps in linux.<br />*''Already on windows makefiles are not used.''
# more and more projects that need make switch to cmake, ..., we should not stay with old technology just because it was already present
+
# An increasing number of projects that need GNU Make switch to [http://www.cmake.org/ CMake], ..., we should not stay with old technology just because it was already present
  
 
==Issues==
 
==Issues==

Revision as of 20:28, 5 April 2012

Move Gramps away from using Makefiles and change to using Pythons setup.py and/or Distutils [1][2][3]2621

Purpose

  1. The core Gramps developers do not know GNU Make, which was the case also in the past. Somebody of a company with expertise contributed the make system to Gramps.
  2. With GNU Make developers need to update makefiles when adding and changing files.
    *With setup.py developers only need to worry about changing directories; this is simpler to maintain.
  3. With GNU Make from time to time it happens that a new file is forgotten to be added in a release, causing maintainance overhead for the release manager.
  4. Gramps is pure python, we don't need a makefile system checking for a lot of things it is checking now.
  5. We need less dependencies for installing Gramps in linux.
    *Already on windows makefiles are not used.
  6. An increasing number of projects that need GNU Make switch to CMake, ..., we should not stay with old technology just because it was already present

Issues

  • PEP 345: Metadata for Python Software Packages 1.2
  • PEP 376: Database of Installed Python Distributions
  • PEP 386: Changing the version comparison module in Distutils
  • PEP 390: Static metadata for Distutils