SHA256
1
0
forked from pool/muparser

Accepting request 157808 from science

Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/157808
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/muparser?expand=0&rev=5
This commit is contained in:
Stephan Kulow 2013-03-08 08:25:06 +00:00 committed by Git OBS Bridge
commit 0f936ada1e
7 changed files with 31 additions and 101 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:55e3f1bd167d48c0e86c26b413e0ebcc6cb5aa0c7dabc065d93a5590056f3e26
size 1393987

3
muparser-2.2.3.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5c19d9781324f7d5c2ac2905fb3b3f56338543d4d5f2a0c5dddd4631becc99e2
size 755572

View File

@ -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

View File

@ -1,30 +0,0 @@
From: Jan Engelhardt <jengelh@medozas.de>
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<value_type>::Pow(Stack[sidx], Stack[1+sidx]); ;
+ --sidx;
+ Stack[sidx] = MathImpl<value_type>::Pow(Stack[sidx], Stack[1+sidx]);
continue;
case cmLAND: --sidx; Stack[sidx] = Stack[sidx] && Stack[sidx+1]; continue;

View File

@ -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 Thu Nov 29 19:03:48 UTC 2012 - jengelh@inai.de

View File

@ -1,7 +1,7 @@
# #
# spec file for package muparser # 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 # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -21,14 +21,14 @@ Name: muparser
Summary: A math parser library Summary: A math parser library
License: MIT License: MIT
Group: Productivity/Scientific/Math Group: Productivity/Scientific/Math
Version: 2.2.2 Version: 2.2.3
Release: 0 Release: 0
Url: http://muparser.beltoforion.de/ 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. # quilt does not like zips very much. downloaded and repackaged.
Source: %name-%version.tar.bz2 Source: %name-%version.tar.xz
Patch1: muparser-fix-ac.diff Source9: prepare-tar.sh
Patch2: muparser-fix-undef.diff
Patch3: muparser-optflags.patch Patch3: muparser-optflags.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf BuildRequires: autoconf
@ -36,6 +36,7 @@ BuildRequires: automake
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: libtool BuildRequires: libtool
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: xz
%description %description
muParser is an extensible high performance math parser library written in muParser is an extensible high performance math parser library written in
@ -63,7 +64,7 @@ precalculating constant parts of the expression.
%prep %prep
%setup -q %setup -q
%patch -P 1 -P 2 -P 3 -p1 %patch -P 3 -p1
%build %build
sh build/autoconf/acregen.sh sh build/autoconf/acregen.sh

12
prepare-tar.sh Normal file
View File

@ -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";