diff --git a/muparser-2.2.2.tar.bz2 b/muparser-2.2.2.tar.bz2 deleted file mode 100644 index 2637ebf..0000000 --- a/muparser-2.2.2.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:55e3f1bd167d48c0e86c26b413e0ebcc6cb5aa0c7dabc065d93a5590056f3e26 -size 1393987 diff --git a/muparser-2.2.3.tar.xz b/muparser-2.2.3.tar.xz new file mode 100644 index 0000000..76f31ca --- /dev/null +++ b/muparser-2.2.3.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c19d9781324f7d5c2ac2905fb3b3f56338543d4d5f2a0c5dddd4631becc99e2 +size 755572 diff --git a/muparser-fix-ac.diff b/muparser-fix-ac.diff deleted file mode 100644 index b585644..0000000 --- a/muparser-fix-ac.diff +++ /dev/null @@ -1,62 +0,0 @@ -Unbreak `./configure CFLAGS=-ggdb3`. - -N.B.: Do NOT set CFLAGS/CXXFLAGS/CPPFLAGS from project files at all, -these are reserved for the user. (Section 3.6 of automake.info). - -`./configure && make CFLAGS=-ggdb3` still removes the project-provided flags. -And parallel building is still broken. I hate you, bakefile. - ---- - build/autoconf/bakefile-presets.m4 | 13 +++++++++---- - build/autoconf/configure.ac | 12 +++++++----- - 2 files changed, 16 insertions(+), 9 deletions(-) - -Index: muparser-2.2.2/build/autoconf/bakefile-presets.m4 -=================================================================== ---- muparser-2.2.2.orig/build/autoconf/bakefile-presets.m4 -+++ muparser-2.2.2/build/autoconf/bakefile-presets.m4 -@@ -74,12 +74,17 @@ AC_DEFUN([AC_BAKEFILE_DEBUGOPT], - dnl and thus we must be careful to add it only to CXXFLAGS and not to CFLAGS - dnl (remember that CPPFLAGS is reserved for both C and C++ compilers while - dnl CFLAGS is intended as flags for C compiler only and CXXFLAGS for C++ only) -- CXXFLAGS="$CXXFLAGS -g -O0 -Wall -Wundef -Wno-ctor-dtor-privacy" -- CFLAGS="$CFLAGS -g -O0 -Wall -Wundef" -+ my_CXXFLAGS="$my_CXXFLAGS -g -O0 -Wall -Wundef -Wno-ctor-dtor-privacy" -+ my_CFLAGS="$my_CFLAGS -g -O0 -Wall -Wundef" - else -- CXXFLAGS="$CXXFLAGS -O2" -- CFLAGS="$CFLAGS -O2" -+ my_CXXFLAGS="$my_CXXFLAGS -O2" -+ my_CFLAGS="$my_CFLAGS -O2" - fi -+ # User-supplied CXXFLAGS must always take precedence. -+ # This still sucks because using `make CFLAGS=-foobar` kills -+ # the project-supplied flags again. -+ CXXFLAGS="$my_CXXFLAGS $CXXFLAGS" -+ CFLAGS="$my_CFLAGS $CFLAGS" - ]) - - dnl --------------------------------------------------------------------------- -Index: muparser-2.2.2/build/autoconf/configure.ac -=================================================================== ---- muparser-2.2.2.orig/build/autoconf/configure.ac -+++ muparser-2.2.2/build/autoconf/configure.ac -@@ -25,11 +25,13 @@ dnl (and sets the AC_CANONICAL_BUILD, AC - dnl AC_CANONICAL_TARGET variables) - AC_CANONICAL_SYSTEM - --dnl we set these vars to avoid that the AC_PROG_C* macros add the "-g -O2" flags; --dnl we will add them later, if needed --CFLAGS= --CXXFLAGS= --CPPFLAGS= -+# We want to inhibit AC_PROG_C* macros adding the default "-g -O2" flags. -+# To do so, make sure that the variables are not unset - it is ok if they are -+# empty. However, their value MUST be retained, since one may have -+# called ./configure CFLAGS=-foobar. -+CFLAGS="$CFLAGS" -+CPPFLAGS="$CPPFLAGS" -+CXXFLAGS="$CXXFLAGS" - - dnl Checks for basic programs used to compile/install. - AC_PROG_AWK diff --git a/muparser-fix-undef.diff b/muparser-fix-undef.diff deleted file mode 100644 index 8dc99ad..0000000 --- a/muparser-fix-undef.diff +++ /dev/null @@ -1,30 +0,0 @@ -From: Jan Engelhardt -Date: 2012-04-06 22:49:28.359430308 +0200 - -Resolve undefined behavior in muParserBase - -./src/muParserBase.cpp:1041:85: warning: operation on 'sidx' may be undefined [-Wsequence-point] -./src/muParserBase.cpp:1041:85: warning: operation on 'sidx' may be undefined [-Wsequence-point] - -I: Program causes undefined operation - (likely same variable used twiceand post/pre incremented in the same expression). - e.g. x = x++; Split it in two operations. -W: muparser sequence-point ./src/muParserBase.cpp:1041 ---- - src/muParserBase.cpp | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -Index: muparser-2.2.2/src/muParserBase.cpp -=================================================================== ---- muparser-2.2.2.orig/src/muParserBase.cpp -+++ muparser-2.2.2/src/muParserBase.cpp -@@ -1038,7 +1038,8 @@ namespace mu - continue; - - case cmPOW: -- Stack[--sidx] = MathImpl::Pow(Stack[sidx], Stack[1+sidx]); ; -+ --sidx; -+ Stack[sidx] = MathImpl::Pow(Stack[sidx], Stack[1+sidx]); - continue; - - case cmLAND: --sidx; Stack[sidx] = Stack[sidx] && Stack[sidx+1]; continue; diff --git a/muparser.changes b/muparser.changes index 5aa319b..b671343 100644 --- a/muparser.changes +++ b/muparser.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Fri Jan 25 04:15:00 UTC 2013 - jengelh@inai.de + +- Update to new upstream release 2.2.3 +* fixed issue 3509860: Callbacks of functions with string + parameters were called twice +- Remove muparser-fix-ac.diff, muparser-fix-undef.diff + (merged upstream) + ------------------------------------------------------------------- Thu Nov 29 19:03:48 UTC 2012 - jengelh@inai.de diff --git a/muparser.spec b/muparser.spec index 05cb8f8..90994c0 100644 --- a/muparser.spec +++ b/muparser.spec @@ -1,7 +1,7 @@ # # spec file for package muparser # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,14 +21,14 @@ Name: muparser Summary: A math parser library License: MIT Group: Productivity/Scientific/Math -Version: 2.2.2 +Version: 2.2.3 Release: 0 Url: http://muparser.beltoforion.de/ +#DL-URL: http://downloads.sf.net/muparser/muparser_v2_2_3.zip # quilt does not like zips very much. downloaded and repackaged. -Source: %name-%version.tar.bz2 -Patch1: muparser-fix-ac.diff -Patch2: muparser-fix-undef.diff +Source: %name-%version.tar.xz +Source9: prepare-tar.sh Patch3: muparser-optflags.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf @@ -36,6 +36,7 @@ BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: pkgconfig +BuildRequires: xz %description muParser is an extensible high performance math parser library written in @@ -63,7 +64,7 @@ precalculating constant parts of the expression. %prep %setup -q -%patch -P 1 -P 2 -P 3 -p1 +%patch -P 3 -p1 %build sh build/autoconf/acregen.sh diff --git a/prepare-tar.sh b/prepare-tar.sh new file mode 100644 index 0000000..1ae3d3d --- /dev/null +++ b/prepare-tar.sh @@ -0,0 +1,12 @@ +#!/bin/sh -ex + +in="2_2_3"; +out="2.2.3"; +wget -c "http://downloads.sf.net/muparser/muparser_v$in.zip"; +unzip "muparser_v$in.zip"; +mv "muparser_v$in" "muparser-$out"; +find "muparser-$out" -type f "(" -iname "*.dll" -o -iname "*.lib" ")" \ + -print -delete; +tar --owner=root --group=root --use=xz -cf \ + "muparser-$out.tar.xz" "muparser-$out"; +rm -Rf "muparser-$out";