Moved from app-sci/gnucap to sci-electronics/gnucap.
authorOlivier Fisette <ribosome@gentoo.org>
Mon, 27 Dec 2004 19:37:57 +0000 (19:37 +0000)
committerOlivier Fisette <ribosome@gentoo.org>
Mon, 27 Dec 2004 19:37:57 +0000 (19:37 +0000)
sci-electronics/gnucap/ChangeLog [new file with mode: 0644]
sci-electronics/gnucap/Manifest [new file with mode: 0644]
sci-electronics/gnucap/files/digest-gnucap-0.34 [new file with mode: 0644]
sci-electronics/gnucap/files/gnucap-0.34-gcc-3.4.patch [new file with mode: 0644]
sci-electronics/gnucap/gnucap-0.34.ebuild [new file with mode: 0644]
sci-electronics/gnucap/metadata.xml [new file with mode: 0644]

diff --git a/sci-electronics/gnucap/ChangeLog b/sci-electronics/gnucap/ChangeLog
new file mode 100644 (file)
index 0000000..7c50266
--- /dev/null
@@ -0,0 +1,33 @@
+# ChangeLog for app-sci/gnucap
+# Copyright 2000-2004 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-electronics/gnucap/ChangeLog,v 1.1 2004/12/27 19:37:57 ribosome Exp $
+
+*gnucap-0.34 (27 Dec 2004)
+
+  27 Dec 2004; Olivier Fisette <ribosome@gentoo.org> +metadata.xml,
+  +files/gnucap-0.34-gcc-3.4.patch, +gnucap-0.34.ebuild:
+  Moved from app-sci/gnucap to sci-electronics/gnucap.
+
+  07 Oct 2004; Michael Hanselmann <hansmi@gentoo.org> gnucap-0.34.ebuild:
+  Added to ~ppc. See bug #66325.
+
+  04 Oct 2004; <plasmaroo@gentoo.org> gnucap-0.34.ebuild,
+  +files/gnucap-0.34-gcc-3.4.patch:
+  Patching for GCC 3.4 compilation issues; bug #66325.
+
+*gnucap-0.34 (24 Jun 2004)
+
+  24 Jun 2004; <plasmaroo@gentoo.org> +gnucap-0.34.ebuild:
+  Version bump.
+
+  05 Jun 2004; David Holm <dholm@gentoo.org> gnucap-0.33.ebuild:
+  Added to ~ppc.
+
+  19 Apr 2004; Patrick Kursawe <phosphan@gentoo.org> gnucap-0.33.ebuild:
+  Removed S, added IUSE.
+
+*gnucap-0.33 (28 Nov 2003)
+
+  28 Nov 2003; <plasmaroo@gentoo.org> gnucap-0.33.ebuild:
+  Initial commit...
+
diff --git a/sci-electronics/gnucap/Manifest b/sci-electronics/gnucap/Manifest
new file mode 100644 (file)
index 0000000..2088f8f
--- /dev/null
@@ -0,0 +1,5 @@
+MD5 e49bb02132d2cd74ad4e6ee291e102d9 metadata.xml 220
+MD5 5b4b78156ee6b8ab70ec761279bed65e ChangeLog 852
+MD5 1718f075491ed56ae0c310f7887831f0 gnucap-0.34.ebuild 836
+MD5 422d28bb9715c39495a5df8a4b5f8410 files/digest-gnucap-0.34 64
+MD5 cfff235a3e29ee1da31b2cf30d18d014 files/gnucap-0.34-gcc-3.4.patch 9178
diff --git a/sci-electronics/gnucap/files/digest-gnucap-0.34 b/sci-electronics/gnucap/files/digest-gnucap-0.34
new file mode 100644 (file)
index 0000000..21440b0
--- /dev/null
@@ -0,0 +1 @@
+MD5 0d346f02a38c544fda6f8d7ec4f8b45e gnucap-0.34.tar.gz 1412004
diff --git a/sci-electronics/gnucap/files/gnucap-0.34-gcc-3.4.patch b/sci-electronics/gnucap/files/gnucap-0.34-gcc-3.4.patch
new file mode 100644 (file)
index 0000000..b2a6bc3
--- /dev/null
@@ -0,0 +1,221 @@
+# Patch adapted from Debian bug #270282 -- plasmaroo.
+
+diff -ur gnucap-0.34/ibis/base.h gnucap-0.34-debian270282/ibis/base.h
+--- gnucap-0.34-debian270282/ibis/base.h       2004-10-04 20:40:33.497472160 +0100
++++ gnucap-0.34/ibis/base.h    2004-10-04 20:40:45.319674912 +0100
+@@ -40,7 +40,7 @@
+ class Base
+ {
+ private:
+-  explicit Base(const Base&) {unreachable();}
++//  explicit Base(const Base&) {unreachable();}
+   // This private base copy constructor inhibits generation of
+   // copy constructors for its derived classes.
+ protected:
+diff -ur gnucap-0.34/ibis/comp-in.cc gnucap-0.34-debian270282/ibis/comp-in.cc
+--- gnucap-0.34-debian270282/ibis/comp-in.cc   2004-10-04 20:40:33.502471400 +0100
++++ gnucap-0.34/ibis/comp-in.cc        2004-10-04 20:40:45.332672936 +0100
+@@ -24,8 +24,8 @@
+ /*--------------------------------------------------------------------------*/
+ void Component::Pin_Die::parse(CS& file)
+ {
+-       set(file, "Pin", &_pd, pdPIN)
+-    || set(file, "Die", &_pd, pdDIE)
++       set(file, "Pin", (int*)&_pd, (int)pdPIN)
++    || set(file, "Die", (int*)&_pd, (int)pdDIE)
+     || file.warn(0, "need Pin or Die");
+ }
+ /*--------------------------------------------------------------------------*/
+diff -ur gnucap-0.34/ibis/file-in.cc gnucap-0.34-debian270282/ibis/file-in.cc
+--- gnucap-0.34-debian270282/ibis/file-in.cc   2004-10-04 20:40:33.497472160 +0100
++++ gnucap-0.34/ibis/file-in.cc        2004-10-04 20:41:41.837082960 +0100
+@@ -25,9 +25,9 @@
+ /*--------------------------------------------------------------------------*/
+ void Redistribution::parse(CS& file)
+ {
+-       set(file, "Yes",           &_r, dYES)
+-    || set(file, "No",            &_r, dNO)
+-    || set(file, "Specific",&_r, dSPECIFIC)
++       set(file, "Yes",           (int*) &_r, (int)dYES)
++    || set(file, "No",            (int*) &_r, (int)dNO)
++    || set(file, "Specific",(int*) &_r, (int)dSPECIFIC)
+     || file.warn(0, "need Yes, No, or Specific");
+ }
+ /*--------------------------------------------------------------------------*/
+Only in gnucap-0.34/ibis: file-in.cc.orig
+Only in gnucap-0.34/ibis: file-in.cc.rej
+diff -ur gnucap-0.34/ibis/model-in.cc gnucap-0.34-debian270282/ibis/model-in.cc
+--- gnucap-0.34-debian270282/ibis/model-in.cc  2004-10-04 20:40:33.495472464 +0100
++++ gnucap-0.34/ibis/model-in.cc       2004-10-04 20:44:11.303360632 +0100
+@@ -145,23 +145,23 @@
+ /*--------------------------------------------------------------------------*/
+ void Model_Base::Type::parse(CS& file)
+ {
+-       set(file, "Terminator",           &_type, mtTERMINATOR)
+-    || set(file, "Input_ECL",    &_type, mtINPUT_ECL)
+-    || set(file, "Input",        &_type, mtINPUT)
+-    || set(file, "I/O_open_sink",  &_type, mtIO_OPEN_SINK)
+-    || set(file, "I/O_open_drain", &_type, mtIO_OPEN_DRAIN)
+-    || set(file, "I/O_open_source",&_type, mtIO_OPEN_SOURCE)
+-    || set(file, "I/O_ECL",      &_type, mtIO_ECL)
+-    || set(file, "I/O",                  &_type, mtIO)
+-    || set(file, "3-state_ECL",    &_type, mt3STATE_ECL)
+-    || set(file, "3-state",      &_type, mt3STATE)
+-    || set(file, "Output_ECL",           &_type, mtOUTPUT_ECL)
+-    || set(file, "Output",       &_type, mtOUTPUT)
+-    || set(file, "Open_sink",    &_type, mtOPEN_SINK)
+-    || set(file, "Open_drain",           &_type, mtOPEN_DRAIN)
+-    || set(file, "Open_source",    &_type, mtOPEN_SOURCE)
+-    || set(file, "Series_switch",  &_type, mtSERIES_SWITCH)
+-    || set(file, "Series",       &_type, mtSERIES)
++       set(file, "Terminator",           (int*) &_type, (int) mtTERMINATOR)
++    || set(file, "Input_ECL",    (int*) &_type, (int) mtINPUT_ECL)
++    || set(file, "Input",        (int*) &_type, (int) mtINPUT)
++    || set(file, "I/O_open_sink",  (int*) &_type, (int) mtIO_OPEN_SINK)
++    || set(file, "I/O_open_drain", (int*) &_type, (int) mtIO_OPEN_DRAIN)
++    || set(file, "I/O_open_source",(int*) &_type, (int) mtIO_OPEN_SOURCE)
++    || set(file, "I/O_ECL",      (int*) &_type, (int) mtIO_ECL)
++    || set(file, "I/O",                  (int*) &_type, (int) mtIO)
++    || set(file, "3-state_ECL",    (int*) &_type, (int) mt3STATE_ECL)
++    || set(file, "3-state",      (int*) &_type, (int) mt3STATE)
++    || set(file, "Output_ECL",           (int*) &_type, (int) mtOUTPUT_ECL)
++    || set(file, "Output",       (int*) &_type, (int) mtOUTPUT)
++    || set(file, "Open_sink",    (int*) &_type, (int) mtOPEN_SINK)
++    || set(file, "Open_drain",           (int*) &_type, (int) mtOPEN_DRAIN)
++    || set(file, "Open_source",    (int*) &_type, (int) mtOPEN_SOURCE)
++    || set(file, "Series_switch",  (int*) &_type, (int) mtSERIES_SWITCH)
++    || set(file, "Series",       (int*) &_type, (int) mtSERIES)
+     || file.warn(0, "illegal model type");
+ }
+ /*--------------------------------------------------------------------------*/
+@@ -235,8 +235,8 @@
+ /*--------------------------------------------------------------------------*/
+ void IO_Base::Polarity::parse(CS& file)
+ {
+-       set(file, "Non-Inverting", &_p, pNON_INVERTING)
+-    || set(file, "Inverting",   &_p, pINVERTING)
++       set(file, "Non-Inverting", (int*) &_p, (int) pNON_INVERTING)
++    || set(file, "Inverting",   (int*) &_p, (int) pINVERTING)
+     || file.warn(0, "need Inverting or Non-Inverting");
+ }
+ /*--------------------------------------------------------------------------*/
+Only in gnucap-0.34/ibis: model-in.cc.orig
+Only in gnucap-0.34/ibis: model-in.cc.rej
+diff -ur gnucap-0.34/modelgen/mg_.h gnucap-0.34-debian270282/modelgen/mg_.h
+--- gnucap-0.34-debian270282/modelgen/mg_.h    2004-10-04 20:40:33.441480672 +0100
++++ gnucap-0.34/modelgen/mg_.h 2004-10-04 20:44:38.197272136 +0100
+@@ -118,7 +118,7 @@
+       }
+       T* p = new T(file);
+       {if (!file.stuck(&here)) {
+-        _list.push_back(p);
++        this->_list.push_back(p);
+       }else {
+         delete p;
+         file.warn(0, "not valid here");
+@@ -137,7 +137,7 @@
+     int here = file.cursor();
+     T* m = new T(file);
+     {if (!file.stuck(&here)) {
+-      _list.push_back(m);
++      this->_list.push_back(m);
+     }else{
+       delete m;
+       file.warn(0, "what's this??");
+Only in gnucap-0.34/modelgen: mg_.h.orig
+Only in gnucap-0.34/modelgen: mg_.h.rej
+diff -ur gnucap-0.34/src/bm.cc gnucap-0.34-debian270282/src/bm.cc
+--- gnucap-0.34-debian270282/src/bm.cc 2004-10-04 20:40:33.412485080 +0100
++++ gnucap-0.34/src/bm.cc      2004-10-04 20:40:45.340671720 +0100
+@@ -207,7 +207,8 @@
+ /*--------------------------------------------------------------------------*/
+ void EVAL_BM_ACTION_BASE::tr_finish_tdv(ELEMENT* d, double val)const
+ {
+-  d->_y0 = FPOLY1(CPOLY1(ioffset(d->_y0.x), 0., val));
++  CPOLY1 cp1(ioffset(d->_y0.x), 0., val);
++  d->_y0 = FPOLY1(cp1);
+   tr_final_adjust(&(d->_y0), false);
+ }
+ /*--------------------------------------------------------------------------*/
+diff -ur gnucap-0.34/src/d_admit.cc gnucap-0.34-debian270282/src/d_admit.cc
+--- gnucap-0.34-debian270282/src/d_admit.cc    2004-10-04 20:40:33.412485080 +0100
++++ gnucap-0.34/src/d_admit.cc 2004-10-04 20:40:45.342671416 +0100
+@@ -56,7 +56,8 @@
+     assert(_y0.f0 != LINEAR);
+     store_values();
+     q_load();
+-    _m0 = CPOLY1(_y0);
++    CPOLY1 cp1(_y0);
++    _m0 = cp1;
+   }else{
+     assert(_y0.f0 == LINEAR);
+     assert(_y0.f1 == value());
+@@ -171,7 +172,8 @@
+ bool DEV_CPOLY_G::do_tr()
+ {
+   assert(_values);
+-  _m0 = CPOLY1(0., _values[0], _values[1]);
++  CPOLY1 cp1(0., _values[0], _values[1]);
++  _m0 = cp1;
+   return do_tr_con_chk_and_q();
+ }
+ /*--------------------------------------------------------------------------*/
+@@ -193,7 +195,8 @@
+     }}
+   }}
+   trace2("", _values[0], c0);
+-  _m0 = CPOLY1(0., c0, _values[1]);
++  CPOLY1 cp1(0., c0, _values[1]);
++  _m0 = cp1;
+ 
+   return do_tr_con_chk_and_q();
+ }
+diff -ur gnucap-0.34/src/d_cap.cc gnucap-0.34-debian270282/src/d_cap.cc
+--- gnucap-0.34-debian270282/src/d_cap.cc      2004-10-04 20:40:33.397487360 +0100
++++ gnucap-0.34/src/d_cap.cc   2004-10-04 20:40:45.342671416 +0100
+@@ -49,7 +49,8 @@
+   _i0.f0 = differentiate();
+   _i0.f1 = tr_c_to_g(_q[0].f1, _i0.f1);
+ 
+-  _m0 = CPOLY1(_i0);
++  CPOLY1 cp1(_i0);
++  _m0 = cp1;
+   return converged();
+ }
+ /*--------------------------------------------------------------------------*/
+@@ -172,7 +173,8 @@
+     }}
+   }}
+   
+-  _m0 = CPOLY1(0., _vi0[0], _vi0[1]);
++  CPOLY1 cp1(0., _vi0[0], _vi0[1]);
++  _m0 = cp1;
+   return do_tr_con_chk_and_q();
+ }
+ /*--------------------------------------------------------------------------*/
+diff -ur gnucap-0.34/src/d_vcvs.cc gnucap-0.34-debian270282/src/d_vcvs.cc
+--- gnucap-0.34-debian270282/src/d_vcvs.cc     2004-10-04 20:40:33.392488120 +0100
++++ gnucap-0.34/src/d_vcvs.cc  2004-10-04 20:40:45.342671416 +0100
+@@ -58,7 +58,8 @@
+     assert(_y0.f0 != LINEAR);
+     store_values();
+     q_load();
+-    _m0 = CPOLY1(_y0);
++    CPOLY1 cp1(_y0);
++    _m0 =cp1;
+     _m0 *= -_loss0;
+   }else{
+     assert(conchk(_loss0, 1./OPT::shortckt));
+diff -ur gnucap-0.34/src/e_storag.cc gnucap-0.34-debian270282/src/e_storag.cc
+--- gnucap-0.34-debian270282/src/e_storag.cc   2004-10-04 20:40:33.401486752 +0100
++++ gnucap-0.34/src/e_storag.cc        2004-10-04 20:40:45.343671264 +0100
+@@ -78,7 +78,8 @@
+   _dt = NOT_VALID;
+   _i0 = _q[0] = _q[1] = _q[2] = _q[3] = FPOLY1(0., 0., 0.);
+   _it1_f0 = 0.;
+-  _m1 = _m0 = CPOLY1(0., 0., 0.);
++  CPOLY1 cp1(0., 0., 0.);
++  _m1 = _m0 = cp1;
+   assert(_loss0 == 0.);
+   assert(_loss1 == 0.);
+   if (!using_tr_eval()){
diff --git a/sci-electronics/gnucap/gnucap-0.34.ebuild b/sci-electronics/gnucap/gnucap-0.34.ebuild
new file mode 100644 (file)
index 0000000..861921b
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-electronics/gnucap/gnucap-0.34.ebuild,v 1.1 2004/12/27 19:37:57 ribosome Exp $
+
+inherit eutils
+
+DESCRIPTION="GNUCap is the GNU Circuit Analysis Package"
+SRC_URI="http://geda.seul.org/dist/gnucap-${PV}.tar.gz"
+HOMEPAGE="http://www.gnu.org/software/gnucap"
+
+IUSE=""
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~x86 ~ppc"
+
+DEPEND=">=sys-libs/glibc-2.1.3"
+
+src_unpack() {
+       unpack ${A}
+
+       cd ${S}
+       epatch ${FILESDIR}/${P}-gcc-3.4.patch
+}
+
+src_compile() {
+       econf || die
+       emake || die
+}
+
+src_install () {
+       insinto /usr/bin
+       doins src/O/gnucap
+       doins ibis/O/gnucap-ibis
+
+       fperms 755 /usr/bin/gnucap
+       fperms 755 /usr/bin/gnucap-ibis
+
+       cd doc
+       dodoc COPYING acs-tutorial whatisit history
+       doman gnucap.1 gnucap-ibis.1
+}
diff --git a/sci-electronics/gnucap/metadata.xml b/sci-electronics/gnucap/metadata.xml
new file mode 100644 (file)
index 0000000..e2035cd
--- /dev/null
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<maintainer>
+       <email>plasmaroo@gentoo.org</email>
+</maintainer>
+</pkgmetadata>