#16483: New Build/Packaging System
-------------------------------------+-------------------------------------
   Reporter:  vbraun                 |            Owner:
       Type:  enhancement            |           Status:  new
   Priority:  major                  |        Milestone:  sage-6.3
  Component:  build                  |         Keywords:
  Merged in:                         |          Authors:  Volker Braun
  Reviewers:                         |  Report Upstream:  N/A
Work issues:                         |           Branch:
     Commit:                         |  u/vbraun/buildsystem
  6000c999ce03b8a86281615312db40f01e59181c|     Dependencies:
   Stopgaps:                         |
-------------------------------------+-------------------------------------
 Our current build/packaging system is at the limits of what one can do
 just with a Makefile and shell scripts. This ticket aims to implement a
 new system
 * Git-aware: use SHA1 hashes instead of timestamps for dependency
 calculations
 * Unified machine-readable package configuration using YAML
 * Dependency handling also for optional packages
 * Distinction between different types of dependencies: build time, runtime
 hard/soft, testing.
 * Modular, allowing for easy experimentation with per-package backends
 * written in pure Python without any dependencies
 * doctested for Python 2.6, 2.7, 3.3, and 3.4.

 The entire package configuration will be in a file
 `SAGE_ROOT/build/pkgs/<name>/package.yaml`, for example
 {{{
 name:
     matplotlib

 category:
     standard

 source:
     version:
         1.3.1
     tarball:
         name:     matplotlib-{source.version}.tar.gz
         sha1:     f340378c43c4c3f6219ef9fd84af4ebbe18f8feb

 builder:
     type:            SpkgInstallScript
     install_script:  spkg-install

 depends:
     build:
         - pkgconf
         - setuptools
     hard:
         - python
         - numpy
         - freetype
         - libpng
         - gdmodule
         - dateutil
         - pyparsing
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/16483>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to