# ChangeLog for sci-biology/allpathslg
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/sci-biology/allpathslg/ChangeLog,v 1.20 2015/04/07 14:32:01 jlec Exp $

*allpathslg-52415 (31 Mar 2015)

  31 Mar 2015; Justin Lecher <jlec@gentoo.org> +allpathslg-52415.ebuild:
  Version Bump; move to EAPI=5 and autotools-utils.eclass; thanks Martin Mokrejs
  for preparing the bump

  31 Mar 2015; Justin Lecher <jlec@gentoo.org> allpathslg-47093.ebuild:
  prefix love

  31 Mar 2015; Justin Lecher <jlec@gentoo.org>
  +files/allpathslg-47093-gcc4.9.patch, allpathslg-47093.ebuild:
  Fix for newer gcc, bug #514654

  13 Nov 2013; Patrick Lauer <patrick@gentoo.org> allpathslg-42337.ebuild,
  allpathslg-47093.ebuild:
  Removing x86 keyword as dependency sci-biology/vaal does not work on x86

*allpathslg-47093 (17 Jul 2013)

  17 Jul 2013; Justin Lecher <jlec@gentoo.org> allpathslg-42337.ebuild,
  +allpathslg-47093.ebuild:
  Version Bump

  11 Mar 2013; Justin Lecher <jlec@gentoo.org> metadata.xml:
  Drop Andrey as maintainer so that bugs get assigned to sci-biology directly

  20 Feb 2013; Justin Lecher <jlec@gentoo.org> -allpathslg-37578.ebuild:
  Drop old

  20 Feb 2013; Agostino Sarubbo <ago@gentoo.org> allpathslg-42337.ebuild:
  Stable for amd64, wrt bug #458106

  18 Feb 2013; Justin Lecher <jlec@gentoo.org> -allpathslg-41839.ebuild,
  metadata.xml:
  Drop old

  14 Dec 2012; Ulrich Müller <ulm@gentoo.org> allpathslg-37578.ebuild,
  allpathslg-41839.ebuild, allpathslg-42337.ebuild:
  Fix LICENSE, MIT (Expat) according to COPYING file.

  19 Nov 2012; Justin Lecher <jlec@gentoo.org> allpathslg-37578.ebuild,
  allpathslg-41839.ebuild, allpathslg-42337.ebuild:
  Block sci-biology/allpaths due to file collision, #443740

*allpathslg-42337 (09 Jul 2012)

  09 Jul 2012; Justin Lecher <jlec@gentoo.org> +allpathslg-42337.ebuild:
  Version bump, fix compilation errors with gcc-4.7, #425472

*allpathslg-41839 (29 May 2012)

  29 May 2012; Andrey Kislyuk <weaver@gentoo.org> -allpathslg-38573.ebuild,
  -allpathslg-40063.ebuild, +allpathslg-41839.ebuild:
  version bump

*allpathslg-40063 (28 Dec 2011)

  28 Dec 2011; Andrey Kislyuk <weaver@gentoo.org>
  -allpathslg-35725-r1.ebuild, +allpathslg-40063.ebuild:
  Version bump, remove old

  15 Oct 2011; Markos Chandras <hwoarang@gentoo.org> allpathslg-37578.ebuild:
  Stable on amd64 wrt bug #384379

*allpathslg-38573 (25 Sep 2011)

  25 Sep 2011; Andrey Kislyuk <weaver@gentoo.org> +allpathslg-38573.ebuild:
  Version bump

*allpathslg-37578 (20 Jun 2011)

  20 Jun 2011; Andrey Kislyuk <weaver@gentoo.org> +allpathslg-37578.ebuild:
  Version bump

*allpathslg-35725-r1 (27 Jan 2011)

  27 Jan 2011; Andrey Kislyuk <weaver@gentoo.org> -allpathslg-35725.ebuild,
  +allpathslg-35725-r1.ebuild:
  Drop ~x86, avoid collision with sci-biology/vaal

*allpathslg-35725 (25 Jan 2011)

  25 Jan 2011; Andrey Kislyuk <weaver@gentoo.org> +allpathslg-35725.ebuild,
  +metadata.xml:
  Package move from sci-biology/allpaths and version bump
