[Pkg-electronics-commits] [SCM] Packaging for Verilator branch, master, updated. debian/3.820-1-2-gebf1038
أحمد المحمو =?UTF-8?Q?=D8=AF=D9=8A=20?=(Ahmed El-Mahmoudy)
aelmahmoudy at sabily.org
Tue Aug 23 11:15:28 UTC 2011
The following commit has been merged in the master branch:
commit ebf1038329d6594576a9359e970662a955e13e9a
Author: أحمد المحمودي (Ahmed El-Mahmoudy) <aelmahmoudy at sabily.org>
Date: Tue Aug 23 09:58:04 2011 +0200
Cherry-picked Fix-PowerPC-runtime-error.patch from upstream VCS
Closes: #598256
diff --git a/debian/patches/Fix-PowerPC-runtime-error.patch b/debian/patches/Fix-PowerPC-runtime-error.patch
new file mode 100644
index 0000000..fd1af2e
--- /dev/null
+++ b/debian/patches/Fix-PowerPC-runtime-error.patch
@@ -0,0 +1,131 @@
+Description: Fix PowerPC runtime error
+Origin: upstream, commit: 3fae8ade05cb6ed12735c867f2bafd60418e20a8
+Author: Wilson Snyder <wsnyder at wsnyder.org>
+Bug: http://www.veripool.org/issues/288
+Bug-Debian: http://bugs.debian.org/598256
+
+---
+ src/Makefile_obj.in | 21 +++++++++++----------
+ src/V3AstNodes.h | 2 +-
+ src/V3ParseImp.h | 2 +-
+ src/V3ParseLex.cpp | 2 +-
+ src/V3PreLex.l | 1 +
+ src/verilog.l | 3 ++-
+ src/verilog.y | 2 +-
+ 8 files changed, 20 insertions(+), 15 deletions(-)
+
+--- a/src/Makefile_obj.in
++++ b/src/Makefile_obj.in
+@@ -58,7 +58,7 @@
+
+ # Compile options
+ CFG_WITH_DEFENV = @CFG_WITH_DEFENV@
+-CPPFLAGSNOWALL += @CPPFLAGS@
++CPPFLAGS += @CPPFLAGS@
+ LDFLAGS += @LDFLAGS@
+
+ #### End of system configuration section. ####
+@@ -85,17 +85,18 @@
+ # -lfl not needed as Flex invoked with %nowrap option
+ LIBS = -lm
+
+-CPPFLAGSNOWALL += -MMD
+-CPPFLAGSNOWALL += -I. -I$(bldsrc) -I$(srcdir) -I$(incdir)
+-CPPFLAGSNOWALL += -DYYDEBUG # Required to get nice error messages
+-#CPPFLAGSNOWALL += -DVL_LEAK_CHECKS # If running valgrind or other hunting tool
+-CPPFLAGSNOWALL += $(COPT)
+-CPPFLAGS = $(CPPFLAGSNOWALL)
++CPPFLAGS += -MMD
++CPPFLAGS += -I. -I$(bldsrc) -I$(srcdir) -I$(incdir)
++CPPFLAGS += -DYYDEBUG # Required to get nice error messages
++#CPPFLAGS += -DVL_LEAK_CHECKS # If running valgrind or other hunting tool
++CPPFLAGS += $(COPT)
++CPPFLAGS += -MP # Only works on recent GCC versions
+ ifeq ($(VERILATOR_AUTHOR_SITE),1) # Local... Else don't burden users
+-CPPFLAGSNOWALL += -MP # Only works on recent GCC versions
+ CPPFLAGS += -W -Wall -Wno-unused-parameter -Wno-char-subscripts -Werror
+ #CPPFLAGS += -pedantic-errors
+ endif
++CPPFLAGSWALL = $(CPPFLAGS)
++CPPFLAGSNOWALL = $(CPPFLAGS)
+
+ ifneq ($(SYSTEMPERL),) # Intuit SYSTEMPERL_INCLUDE as it's new
+ SYSTEMPERL_INCLUDE ?= $(SYSTEMPERL)/src
+@@ -262,9 +263,9 @@
+ $(PERL) $(ASTGEN) -I$(srcdir) $*.cpp
+
+ %.o: %.cpp
+- $(OBJCACHE) ${CXX} ${CPPFLAGS} -c $<
++ $(OBJCACHE) ${CXX} ${CPPFLAGSWALL} -c $<
+ %.o: %.c
+- $(OBJCACHE) ${CC} ${CPPFLAGS} -c $<
++ $(OBJCACHE) ${CC} ${CPPFLAGSWALL} -c $<
+
+ V3ParseLex.o: V3ParseLex.cpp V3Lexer.yy.cpp V3ParseBison.c
+ $(OBJCACHE) ${CXX} ${CPPFLAGSNOWALL} -c $<
+--- a/src/V3AstNodes.h
++++ b/src/V3AstNodes.h
+@@ -3465,7 +3465,7 @@
+ virtual void numberOperate(V3Number& out, const V3Number& lhs, const V3Number& rhs) { out.opBufIf1(lhs,rhs); }
+ virtual string emitVerilog() { return "bufif(%r,%l)"; }
+ virtual string emitC() { V3ERROR_NA; return "";} // Lclean || Rclean
+- virtual string emitSimpleOperator() { V3ERROR_NA; return false;} // Lclean || Rclean
++ virtual string emitSimpleOperator() { V3ERROR_NA; return "";} // Lclean || Rclean
+ virtual bool cleanOut() {V3ERROR_NA; return "";} // Lclean || Rclean
+ virtual bool cleanLhs() {return false;} virtual bool cleanRhs() {return false;}
+ virtual bool sizeMattersLhs() {return false;} virtual bool sizeMattersRhs() {return false;}
+--- a/src/V3ParseImp.h
++++ b/src/V3ParseImp.h
+@@ -316,7 +316,7 @@
+ public:
+ // CREATORS
+ V3ParseImp(AstNetlist* rootp, V3InFilter* filterp)
+- : m_sym(rootp), m_filterp(filterp) {
++ : m_filterp(filterp), m_sym(rootp) {
+ m_rootp = rootp; m_lexerp = NULL;
+ m_inCellDefine = false;
+ m_inLibrary = false;
+--- a/src/V3ParseLex.cpp
++++ b/src/V3ParseLex.cpp
+@@ -62,7 +62,7 @@
+ void V3ParseImp::stateExitPsl() { parsep()->m_lexerp->stateExitPsl(); }
+ void V3ParseImp::statePushVlg() { parsep()->m_lexerp->stateExitPsl(); }
+ void V3ParseImp::statePop() { parsep()->m_lexerp->statePop(); }
+-int V3ParseImp::yylexThis() { parsep()->m_lexerp->yylex(); }
++int V3ParseImp::yylexThis() { return parsep()->m_lexerp->yylex(); }
+
+ //######################################################################
+ // Read class functions
+--- a/src/V3PreLex.l
++++ b/src/V3PreLex.l
+@@ -538,6 +538,7 @@
+ if (0) {
+ // Prevent unused warnings
+ yy_top_state();
++ yyerror((char*)"");
+ }
+ }
+
+--- a/src/verilog.l
++++ b/src/verilog.l
+@@ -963,7 +963,8 @@
+ *dp++ = '\0';
+ char* endp = strgp;
+ double d = strtod(strgp, &endp);
+- if ((endp-strgp) != length) { yyerrorf("Syntax error parsing real: %s",strgp); }
++ size_t parsed_len = endp-strgp;
++ if (parsed_len != length) { yyerrorf("Syntax error parsing real: %s",strgp); }
+ delete strgp;
+ return d;
+ }
+--- a/src/verilog.y
++++ b/src/verilog.y
+@@ -71,7 +71,7 @@
+ m_varIO = AstVarType::UNKNOWN;
+ m_varDTypep = NULL;
+ m_pinNum = -1;
+- m_instModule;
++ m_instModule = "";
+ m_instParamp = NULL;
+ m_modp = NULL;
+ m_modTypeImpNum = 0;
diff --git a/debian/patches/series b/debian/patches/series
index 4b7e6fa..da64f98 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
shebang.diff
+Fix-PowerPC-runtime-error.patch
--
Packaging for Verilator
More information about the Pkg-electronics-commits
mailing list