# ChangeLog for app-cdr/mode2cdmaker
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/app-cdr/mode2cdmaker/ChangeLog,v 1.5 2009/12/15 16:45:11 ssuominen Exp $

  15 Dec 2009; Samuli Suominen <ssuominen@gentoo.org>
  mode2cdmaker-1.5.1.ebuild:
  Remove geocities from HOMEPAGE wrt #297028 (and change SRC_URI to Gentoo
  mirrors).

  15 Jun 2008; Samuli Suominen <drac@gentoo.org>
  +files/mode2cdmaker-1.5.1-gentoo.patch, mode2cdmaker-1.5.1.ebuild:
  Fix implicit declarations and respect CC, CFLAGS, LDFLAGS. Keyword ~amd64.

  21 Feb 2007; Piotr Jaroszyński <peper@gentoo.org> ChangeLog:
  Transition to Manifest2.

  15 Sep 2005; Michael Sterrett <mr_bones_@gentoo.org>
  mode2cdmaker-1.5.1.ebuild:
  needs app-arch/unzip; tidy

*mode2cdmaker-1.5.1 (05 Apr 2005)

  05 Apr 2005; Lars Weiler <pylon@gentoo.org> +metadata.xml,
  +mode2cdmaker-1.5.1.ebuild:
  New ebuild from old bug #32040.

