Skip site navigation (1)Skip section navigation (2)
Date:      5 Sep 2004 20:31:44 -0000
From:      Sergio Mangialardi <sergio@softshark.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/71409: [PATCH] cad/gnucap: fix the build with gcc 3.4, unmark BROKEN
Message-ID:  <20040905203144.54314.qmail@softshark.home>
Resent-Message-ID: <200409052040.i85KeQDh059226@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         71409
>Category:       ports
>Synopsis:       [PATCH] cad/gnucap: fix the build with gcc 3.4, unmark BROKEN
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Sep 05 20:40:26 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Sergio Mangialardi
>Release:        FreeBSD 5.2.1-RELEASE-p9 i386
>Organization:
>Environment:
System: FreeBSD ainu.softshark.home 5.2.1-RELEASE-p9 FreeBSD 5.2.1-RELEASE-p9 #10: Sun Jul  4 01:51:04 CEST
>Description:
This patch fixes some things:
    - remove a whitespace before end of line in Makefile
    - correct some issues:
        anonymous enum used as template arguments
        abuse of explicit keyword
        a probable bug of gcc 3.4 (I'm waiting for more authoritative opinions)
    - Remove the BROKEN mark; the port build properly.

Added file(s):
- files/patch-ibis::comp.h
- files/patch-ibis::file.h
- files/patch-ibis::model.h
- files/patch-modelgen::mg_.h
- files/patch-src::m_cpoly.h

Generated with FreeBSD Port Tools 0.63
>How-To-Repeat:
>Fix:

--- gnucap-0.34.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/cad/gnucap.old/Makefile /usr/ports/cad/gnucap/Makefile
--- /usr/ports/cad/gnucap.old/Makefile	Mon Aug 16 17:49:44 2004
+++ /usr/ports/cad/gnucap/Makefile	Sun Sep  5 21:24:10 2004
@@ -23,13 +23,9 @@
 
 CFLAGS+=	-DUNIX -DNDEBUG -DNEEDS_IS_INF -DNEEDS_IS_NAN -I..
 
-MAN1=		gnucap-ibis.1 gnucap.1 
+MAN1=		gnucap-ibis.1 gnucap.1
 
 .include <bsd.port.pre.mk>
-
-.if ${OSVERSION} >= 502126
-BROKEN=		"Does not compile with gcc 3.4.2"
-.endif
 
 post-patch:
 	@${REINPLACE_CMD} -e 's|echo|true|g' ${WRKSRC}/src/configure
diff -ruN --exclude=CVS /usr/ports/cad/gnucap.old/files/patch-ibis::comp.h /usr/ports/cad/gnucap/files/patch-ibis::comp.h
--- /usr/ports/cad/gnucap.old/files/patch-ibis::comp.h	Thu Jan  1 01:00:00 1970
+++ /usr/ports/cad/gnucap/files/patch-ibis::comp.h	Sun Sep  5 21:23:22 2004
@@ -0,0 +1,11 @@
+--- ibis/comp.h.orig	Sun Feb  1 07:12:01 2004
++++ ibis/comp.h	Mon Aug 30 20:37:37 2004
+@@ -30,7 +30,7 @@
+     :public Base
+   {
+   private:
+-    enum {pdPIN, pdDIE} _pd;
++    enum PD {pdPIN, pdDIE} _pd;
+     void parse(CS&);
+     void dump(std::ostream& o)const;
+   public:
diff -ruN --exclude=CVS /usr/ports/cad/gnucap.old/files/patch-ibis::file.h /usr/ports/cad/gnucap/files/patch-ibis::file.h
--- /usr/ports/cad/gnucap.old/files/patch-ibis::file.h	Thu Jan  1 01:00:00 1970
+++ /usr/ports/cad/gnucap/files/patch-ibis::file.h	Sun Sep  5 21:23:22 2004
@@ -0,0 +1,11 @@
+--- ibis/file.h.orig	Sun Feb  1 07:12:01 2004
++++ ibis/file.h	Mon Aug 30 20:38:32 2004
+@@ -30,7 +30,7 @@
+   :public Base
+ {
+ private:
+-  enum {dUNKNOWN, dNO, dYES, dSPECIFIC} _r;
++  enum D {dUNKNOWN, dNO, dYES, dSPECIFIC} _r;
+   void parse(CS&);
+   void dump(std::ostream&)const {incomplete();}
+ public:
diff -ruN --exclude=CVS /usr/ports/cad/gnucap.old/files/patch-ibis::model.h /usr/ports/cad/gnucap/files/patch-ibis::model.h
--- /usr/ports/cad/gnucap.old/files/patch-ibis::model.h	Thu Jan  1 01:00:00 1970
+++ /usr/ports/cad/gnucap/files/patch-ibis::model.h	Sun Sep  5 21:23:22 2004
@@ -0,0 +1,20 @@
+--- ibis/model.h.orig	Sun Feb  1 07:12:02 2004
++++ ibis/model.h	Mon Aug 30 20:35:08 2004
+@@ -129,7 +129,7 @@
+   class Type
+     :public Base
+   {
+-    enum {/*1*/mtNA, mtINPUT, mtOUTPUT, mtIO, mt3STATE, mtOPEN_DRAIN,
++    enum MT {/*1*/mtNA, mtINPUT, mtOUTPUT, mtIO, mt3STATE, mtOPEN_DRAIN,
+ 	  /*2*/mtIO_OPEN_DRAIN, mtOPEN_SINK, mtIO_OPEN_SINK,
+ 	  mtOPEN_SOURCE, mtIO_OPEN_SOURCE, mtINPUT_ECL, 
+ 	  mtOUTPUT_ECL, mtIO_ECL, mtTERMINATOR, mt3STATE_ECL,
+@@ -160,7 +160,7 @@
+   class Polarity
+     :public Base
+   {
+-    enum {pNON_INVERTING, pINVERTING} _p;
++    enum P {pNON_INVERTING, pINVERTING} _p;
+     void parse(CS&);
+     void dump(std::ostream& o)const;
+   public:
diff -ruN --exclude=CVS /usr/ports/cad/gnucap.old/files/patch-modelgen::mg_.h /usr/ports/cad/gnucap/files/patch-modelgen::mg_.h
--- /usr/ports/cad/gnucap.old/files/patch-modelgen::mg_.h	Thu Jan  1 01:00:00 1970
+++ /usr/ports/cad/gnucap/files/patch-modelgen::mg_.h	Sun Sep  5 21:23:22 2004
@@ -0,0 +1,20 @@
+--- modelgen/mg_.h.orig	Tue Aug 31 20:01:38 2004
++++ modelgen/mg_.h	Tue Aug 31 20:02:36 2004
+@@ -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??");
diff -ruN --exclude=CVS /usr/ports/cad/gnucap.old/files/patch-src::m_cpoly.h /usr/ports/cad/gnucap/files/patch-src::m_cpoly.h
--- /usr/ports/cad/gnucap.old/files/patch-src::m_cpoly.h	Thu Jan  1 01:00:00 1970
+++ /usr/ports/cad/gnucap/files/patch-src::m_cpoly.h	Sun Sep  5 21:23:22 2004
@@ -0,0 +1,15 @@
+--- src/m_cpoly.h.orig	Sat Sep  4 15:07:47 2004
++++ src/m_cpoly.h	Sat Sep  4 15:08:16 2004
+@@ -66,9 +66,9 @@
+   double   x;		/* the argument			*/
+   double   c0;		/* f(x) - x*f'(x), or f0 - x*f1 */
+   double   c1;		/* the first derivative		*/
+-  explicit CPOLY1() : x(0), c0(0), c1(0) {}
+-  explicit CPOLY1(const CPOLY1& p) : x(p.x), c0(p.c0), c1(p.c1){untested();}
+-  explicit CPOLY1(double X,double C0,double C1) : x(X), c0(C0), c1(C1) {}
++  CPOLY1() : x(0), c0(0), c1(0) {}
++  CPOLY1(const CPOLY1& p) : x(p.x), c0(p.c0), c1(p.c1){untested();}
++  CPOLY1(double X,double C0,double C1) : x(X), c0(C0), c1(C1) {}
+   explicit CPOLY1(const FPOLY1& p);
+ 
+   bool	   operator==(const CPOLY1& p)const
--- gnucap-0.34.patch ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040905203144.54314.qmail>