Hello community,
here is the log from the commit of package octave-forge-struct for
openSUSE:Factory checked in at 2018-06-29 22:25:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/octave-forge-struct (Old)
and /work/SRC/openSUSE:Factory/.octave-forge-struct.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "octave-forge-struct"
Fri Jun 29 22:25:49 2018 rev:4 rq:616558 version:1.0.15
Changes:
--------
--- /work/SRC/openSUSE:Factory/octave-forge-struct/octave-forge-struct.changes
2017-02-03 17:52:01.355239338 +0100
+++
/work/SRC/openSUSE:Factory/.octave-forge-struct.new/octave-forge-struct.changes
2018-06-29 22:25:50.254509082 +0200
@@ -1,0 +2,6 @@
+Wed Jun 6 07:10:39 UTC 2018 - [email protected]
+
+- Update to version 1.0.15:
+ * Octave 4.4 compatibility.
+
+-------------------------------------------------------------------
Old:
----
struct-1.0.14.tar.gz
New:
----
struct-1.0.15.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ octave-forge-struct.spec ++++++
--- /var/tmp/diff_new_pack.9H93gL/_old 2018-06-29 22:25:51.194508374 +0200
+++ /var/tmp/diff_new_pack.9H93gL/_new 2018-06-29 22:25:51.194508374 +0200
@@ -1,7 +1,7 @@
#
# spec file for package octave-forge-struct
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,10 +18,10 @@
%define octpkg struct
Name: octave-forge-%{octpkg}
-Version: 1.0.14
+Version: 1.0.15
Release: 0
Summary: Additional Structure manipulations functions for Octave
-License: GPL-3.0+
+License: GPL-3.0-or-later
Group: Productivity/Scientific/Math
Url: http://octave.sourceforge.net
Source0:
http://downloads.sourceforge.net/octave/%{octpkg}-%{version}.tar.gz
++++++ struct-1.0.14.tar.gz -> struct-1.0.15.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/DESCRIPTION
new/struct-1.0.15/DESCRIPTION
--- old/struct-1.0.14/DESCRIPTION 2016-09-18 18:09:18.000000000 +0200
+++ new/struct-1.0.15/DESCRIPTION 2018-05-11 10:42:06.436266669 +0200
@@ -1,6 +1,6 @@
Name: struct
-Version: 1.0.14
-Date: 2016-09-18
+Version: 1.0.15
+Date: 2018-05-11
Author: Etienne Grossmann <[email protected]>, Olaf Till <[email protected]>
Maintainer: Olaf Till <[email protected]>
Title: Structure Handling.
@@ -9,4 +9,3 @@
Depends: octave (>= 2.9.7)
Autoload: no
License: GPLv3+
-Url: http://octave.sf.net
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/Makefile new/struct-1.0.15/Makefile
--- old/struct-1.0.14/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ new/struct-1.0.15/Makefile 2018-05-11 10:42:06.436266669 +0200
@@ -0,0 +1,239 @@
+## Copyright 2015-2016 Carnë Draug
+## Copyright 2015-2016 Oliver Heimlich
+## Copyright 2017 Julien Bect <[email protected]>
+## Copyright 2017 Olaf Till <[email protected]>
+##
+## Copying and distribution of this file, with or without modification,
+## are permitted in any medium without royalty provided the copyright
+## notice and this notice are preserved. This file is offered as-is,
+## without any warranty.
+
+## Some basic tools (can be overriden using environment variables)
+SED ?= sed
+TAR ?= tar
+GREP ?= grep
+CUT ?= cut
+TR ?= tr
+
+## Note the use of ':=' (immediate set) and not just '=' (lazy set).
+## http://stackoverflow.com/a/448939/1609556
+package := $(shell $(GREP) "^Name: " DESCRIPTION | $(CUT) -f2 -d" " | \
+$(TR) '[:upper:]' '[:lower:]')
+version := $(shell $(GREP) "^Version: " DESCRIPTION | $(CUT) -f2 -d" ")
+
+## These are the paths that will be created for the releases.
+target_dir := target
+release_dir := $(target_dir)/$(package)-$(version)
+release_tarball := $(target_dir)/$(package)-$(version).tar.gz
+html_dir := $(target_dir)/$(package)-html
+html_tarball := $(target_dir)/$(package)-html.tar.gz
+## Using $(realpath ...) avoids problems with symlinks due to bug
+## #50994 in Octaves scripts/pkg/private/install.m. But at least the
+## release directory above is needed in the relative form, for 'git
+## archive --format=tar --prefix=$(release_dir).
+real_target_dir := $(realpath .)/$(target_dir)
+installation_dir := $(real_target_dir)/.installation
+package_list := $(installation_dir)/.octave_packages
+install_stamp := $(installation_dir)/.install_stamp
+
+## These can be set by environment variables which allow to easily
+## test with different Octave versions.
+ifndef OCTAVE
+OCTAVE := octave
+endif
+OCTAVE := $(OCTAVE) --no-gui --silent --norc
+MKOCTFILE ?= mkoctfile
+
+## Command used to set permissions before creating tarballs
+FIX_PERMISSIONS ?= chmod -R a+rX,u+w,go-w,ug-s
+
+## Detect which VCS is used
+vcs := $(if $(wildcard .hg),hg,$(if $(wildcard .git),git,unknown))
+ifeq ($(vcs),hg)
+release_dir_dep := .hg/dirstate
+endif
+ifeq ($(vcs),git)
+release_dir_dep := .git/index
+endif
+
+
+## .PHONY indicates targets that are not filenames
+## (https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html)
+.PHONY: help
+
+## make will display the command before runnning them. Use @command
+## to not display it (makes specially sense for echo).
+help:
+ @echo "Targets:"
+ @echo " dist - Create $(release_tarball) for release."
+ @echo " html - Create $(html_tarball) for release."
+ @echo " release - Create both of the above and show md5sums."
+ @echo " install - Install the package in $(installation_dir), where
it is not visible in a normal Octave session."
+ @echo " check - Execute package tests."
+ @echo " doctest - Test the help texts with the doctest package."
+ @echo " run - Run Octave with the package installed in
$(installation_dir) in the path."
+ @echo " clean - Remove everything made with this Makefile."
+
+
+##
+## Recipes for release tarballs (package + html)
+##
+
+.PHONY: release dist html clean-tarballs clean-unpacked-release
+
+## To make a release, build the distribution and html tarballs.
+release: dist html
+ md5sum $(release_tarball) $(html_tarball)
+ @echo "Upload @ https://sourceforge.net/p/octave/package-releases/new/"
+ @echo " and note the changeset the release corresponds to"
+
+## dist and html targets are only PHONY/alias targets to the release
+## and html tarballs.
+dist: $(release_tarball)
+html: $(html_tarball)
+
+## An implicit rule with a recipe to build the tarballs correctly.
+%.tar.gz: %
+ $(TAR) -c -f - --posix -C "$(target_dir)/" "$(notdir $<)" | gzip -9n >
"$@"
+
+clean-tarballs:
+ @echo "## Cleaning release tarballs (package + html)..."
+ -$(RM) $(release_tarball) $(html_tarball)
+ @echo
+
+## Create the unpacked package.
+##
+## Notes:
+## * having ".hg/dirstate" (or ".git/index") as a prerequesite means it is
+## only rebuilt if we are at a different commit.
+## * the variable RM usually defaults to "rm -f"
+## * having this recipe separate from the one that makes the tarball
+## makes it easy to have packages in alternative formats (such as zip)
+## * note that if a commands needs to be run in a specific directory,
+## the command to "cd" needs to be on the same line. Each line restores
+## the original working directory.
+$(release_dir): $(release_dir_dep)
+ -$(RM) -r "$@"
+ifeq (${vcs},hg)
+ hg archive --exclude ".hg*" --type files "$@"
+endif
+ifeq (${vcs},git)
+ git archive --format=tar --prefix="$@/" HEAD | $(TAR) -x
+ $(RM) "$@/.gitignore"
+endif
+## Don't fall back to run the supposed necessary contents of
+## 'bootstrap' here. Users are better off if they provide
+## 'bootstrap'. Administrators, checking build reproducibility, can
+## put in the missing 'bootstrap' file if they feel they know its
+## necessary contents.
+ifneq (,$(wildcard src/bootstrap))
+ cd "$@/src" && ./bootstrap && $(RM) -r "autom4te.cache"
+endif
+## Uncomment this if your src/Makefile.in has these targets for
+## pre-building something for the release (e.g. documentation).
+# cd "$@/src" && ./configure && $(MAKE) prebuild && \
+# $(MAKE) distclean && $(RM) Makefile
+##
+ ${FIX_PERMISSIONS} "$@"
+
+run_in_place = $(OCTAVE) --eval ' pkg ("local_list", "$(package_list)"); ' \
+ --eval ' pkg ("load", "$(package)"); '
+
+html_options = --eval 'options = get_html_options ("octave-forge");'
+## Uncomment this for package documentation.
+# html_options = --eval 'options = get_html_options ("octave-forge");' \
+# --eval 'options.package_doc = "$(package).texi";'
+$(html_dir): $(install_stamp)
+ $(RM) -r "$@";
+ $(run_in_place) \
+ --eval ' pkg load generate_html; ' \
+ $(html_options) \
+ --eval ' generate_package_html ("$(package)", "$@", options); ';
+ $(FIX_PERMISSIONS) "$@";
+
+clean-unpacked-release:
+ @echo "## Cleaning unpacked release tarballs (package + html)..."
+ -$(RM) -r $(release_dir) $(html_dir)
+ @echo
+
+##
+## Recipes for installing the package.
+##
+
+.PHONY: install clean-install
+
+octave_install_commands = \
+' llist_path = pkg ("local_list"); \
+ mkdir ("$(installation_dir)"); \
+ load (llist_path); \
+ local_packages(cellfun (@ (x) strcmp ("$(package)", x.name),
local_packages)) = []; \
+ save ("$(package_list)", "local_packages"); \
+ pkg ("local_list", "$(package_list)"); \
+ pkg ("prefix", "$(installation_dir)", "$(installation_dir)"); \
+ pkg ("install", "-local", "-verbose", "$(release_tarball)"); '
+
+## Install unconditionally. Maybe useful for testing installation with
+## different versions of Octave.
+install: $(release_tarball)
+ @echo "Installing package under $(installation_dir) ..."
+ $(OCTAVE) --eval $(octave_install_commands)
+ touch $(install_stamp)
+
+## Install only if installation (under target/...) is not current.
+$(install_stamp): $(release_tarball)
+ @echo "Installing package under $(installation_dir) ..."
+ $(OCTAVE) --eval $(octave_install_commands)
+ touch $(install_stamp)
+
+clean-install:
+ @echo "## Cleaning installation under $(installation_dir) ..."
+ -$(RM) -r $(installation_dir)
+ @echo
+
+
+##
+## Recipes for testing purposes
+##
+
+.PHONY: run doctest check
+
+## Start an Octave session with the package directories on the path for
+## interactice test of development sources.
+run: $(install_stamp)
+ $(run_in_place) --persist
+
+## Test example blocks in the documentation. Needs doctest package
+## https://octave.sourceforge.io/doctest/index.html
+doctest: $(install_stamp)
+ $(run_in_place) --eval 'pkg load doctest;'
\
+ --eval "targets = '$(shell (ls inst; ls src | $(GREP) .oct) | $(CUT)
-f2 -d@ | $(CUT) -f1 -d.)';" \
+ --eval "targets = strsplit (targets, ' '); doctest (targets);"
+
+
+## Test package.
+octave_test_commands = \
+' dirs = {"inst", "src"}; \
+ dirs(cellfun (@ (x) ! isdir (x), dirs)) = []; \
+ if (isempty (dirs)) error ("no \"inst\" or \"src\" directory"); exit (1); \
+ else __run_test_suite__ (dirs, {}); endif '
+## the following works, too, but provides no overall summary output as
+## __run_test_suite__ does:
+##
+## else cellfun (@runtests, horzcat (cellfun (@ (dir) ostrsplit (([~, dirs]
= system (sprintf ("find %s -type d", dir))), "\n\r", true), dirs,
"UniformOutput", false){:})); endif '
+check: $(install_stamp)
+ $(run_in_place) --eval $(octave_test_commands)
+
+
+##
+## CLEAN
+##
+
+.PHONY: clean
+
+clean: clean-tarballs clean-unpacked-release clean-install
+ @echo "## Removing target directory (if empty)..."
+ -rmdir $(target_dir)
+ @echo
+ @echo "## Cleaning done"
+ @echo
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/NEWS new/struct-1.0.15/NEWS
--- old/struct-1.0.14/NEWS 2016-09-18 18:09:18.000000000 +0200
+++ new/struct-1.0.15/NEWS 2018-05-11 10:42:06.436266669 +0200
@@ -1,3 +1,8 @@
+Summary of important user-visible changes for struct 1.0.15:
+-------------------------------------------------------------------
+
+ ** Some build fixes. Builds with Octave 4.4.
+
Summary of important user-visible changes for struct 1.0.14:
-------------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/inst/getfields.m
new/struct-1.0.15/inst/getfields.m
--- old/struct-1.0.14/inst/getfields.m 2016-09-18 18:09:18.000000000 +0200
+++ new/struct-1.0.15/inst/getfields.m 2018-05-11 10:42:06.436266669 +0200
@@ -1,5 +1,5 @@
## Copyright (C) 2000 Etienne Grossmann <[email protected]>
-## Copyright (C) 2012-2016 Olaf Till <[email protected]>
+## Copyright (C) 2012-2018 Olaf Till <[email protected]>
##
## This program is free software; you can redistribute it and/or modify it
under
## the terms of the GNU General Public License as published by the Free
Software
@@ -52,8 +52,3 @@
%!assert (nthargout (1:3, @getfields, s, "x" , "z" ,"z"), {x z z});
%!
%!fail ('getfields (s, "foo")')
-
-%!xtest
-%! oo.f0 = 1;
-%! oo = setfield (oo, {1, 2}, "fd", {3}, "b", 6);
-%! assert (getfields (oo, {1, 2}, "fd", {3}, "b"), 6);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/src/Makefile.in
new/struct-1.0.15/src/Makefile.in
--- old/struct-1.0.14/src/Makefile.in 2016-09-18 18:09:18.000000000 +0200
+++ new/struct-1.0.15/src/Makefile.in 2018-05-11 10:42:06.440266748 +0200
@@ -42,5 +42,10 @@
%.oct: %.cc error-helpers.h config.h error-helpers.o
CXXFLAGS="$(CXXFLAGS) $(RELEASE_CXXFLAGS)" $(MKOCTFILE) $<
error-helpers.o
-.PHONY: clean
-clean: ; rm -f *.o *.oct
+.PHONY: clean distclean
+
+clean:
+ $(RM) *.o octave-core *.oct *~
+
+distclean:
+ $(RM) *.o octave-core *.oct *~ config.h config.log config.status
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/src/configure
new/struct-1.0.15/src/configure
--- old/struct-1.0.14/src/configure 2016-09-18 18:09:36.000000000 +0200
+++ new/struct-1.0.15/src/configure 2018-05-11 10:42:06.780273366 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for struct 1.0.14.
+# Generated by GNU Autoconf 2.69 for struct 1.0.15.
#
# Report bugs to <[email protected]>.
#
@@ -580,8 +580,8 @@
# Identity of this package.
PACKAGE_NAME='struct'
PACKAGE_TARNAME='struct'
-PACKAGE_VERSION='1.0.14'
-PACKAGE_STRING='struct 1.0.14'
+PACKAGE_VERSION='1.0.15'
+PACKAGE_STRING='struct 1.0.15'
PACKAGE_BUGREPORT='[email protected]'
PACKAGE_URL=''
@@ -659,6 +659,7 @@
docdir
oldincludedir
includedir
+runstatedir
localstatedir
sharedstatedir
sysconfdir
@@ -732,6 +733,7 @@
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
includedir='${prefix}/include'
oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -984,6 +986,15 @@
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
+ -runstatedir | --runstatedir | --runstatedi | --runstated \
+ | --runstate | --runstat | --runsta | --runst | --runs \
+ | --run | --ru | --r)
+ ac_prev=runstatedir ;;
+ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+ | --run=* | --ru=* | --r=*)
+ runstatedir=$ac_optarg ;;
+
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1121,7 +1132,7 @@
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
+ libdir localedir mandir runstatedir
do
eval ac_val=\$$ac_var
# Remove trailing slashes.
@@ -1234,7 +1245,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures struct 1.0.14 to adapt to many kinds of systems.
+\`configure' configures struct 1.0.15 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1274,6 +1285,7 @@
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
@@ -1295,7 +1307,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of struct 1.0.14:";;
+ short | recursive ) echo "Configuration of struct 1.0.15:";;
esac
cat <<\_ACEOF
@@ -1377,7 +1389,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-struct configure 1.0.14
+struct configure 1.0.15
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1726,7 +1738,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by struct $as_me 1.0.14, which was
+It was created by struct $as_me 1.0.15, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3814,8 +3826,7 @@
## for Octave headers, like octave/....h. The path with '/octave' is
## needed since some Octave headers contain include directives for
## other Octave headers with <> instead of "".
-OCTINCLUDEDIR=${OCTINCLUDEDIR:-`$OCTAVE_CONFIG -p OCTINCLUDEDIR`}
-TPINCLUDEDIR=`echo $OCTINCLUDEDIR | $SED -e 's/\/octave$//'`
+OCTINCLUDEDIR=${OCTINCLUDEDIR:-`$MKOCTFILE -p INCFLAGS`}
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -3829,7 +3840,7 @@
LDFLAGS="-L$OCTLIBDIR $LDFLAGS"
LIBS="-loctinterp $LIBS"
# CXXFLAGS=
-CPPFLAGS="-I$OCTINCLUDEDIR -I$TPINCLUDEDIR $CPPFLAGS"
+CPPFLAGS="$OCTINCLUDEDIR $CPPFLAGS"
## Presence of 'error_state' -- does _not_ indicate no exceptions are
## used.
@@ -4395,7 +4406,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by struct $as_me 1.0.14, which was
+This file was extended by struct $as_me 1.0.15, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -4457,7 +4468,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //;
s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-struct config.status 1.0.14
+struct config.status 1.0.15
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/src/configure.ac
new/struct-1.0.15/src/configure.ac
--- old/struct-1.0.14/src/configure.ac 2016-09-18 18:09:18.000000000 +0200
+++ new/struct-1.0.15/src/configure.ac 2018-05-11 10:42:06.440266748 +0200
@@ -1,7 +1,7 @@
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
#
-### Copyright (C) 2015, 2016 Olaf Till <[email protected]>
+### Copyright (C) 2015-2018 Olaf Till <[email protected]>
###
### This program is free software; you can redistribute it and/or
### modify it under the terms of the GNU General Public License as
@@ -18,7 +18,7 @@
### <http://www.gnu.org/licenses/>.
AC_PREREQ([2.62])
-AC_INIT([struct], [1.0.14], [[email protected]])
+AC_INIT([struct], [1.0.15], [[email protected]])
AC_CONFIG_SRCDIR([cell2fields.cc])
AC_CONFIG_HEADERS([config.h])
@@ -55,8 +55,7 @@
## for Octave headers, like octave/....h. The path with '/octave' is
## needed since some Octave headers contain include directives for
## other Octave headers with <> instead of "".
-OCTINCLUDEDIR=${OCTINCLUDEDIR:-`$OCTAVE_CONFIG -p OCTINCLUDEDIR`}
-TPINCLUDEDIR=`echo $OCTINCLUDEDIR | $SED -e 's/\/octave$//'`
+OCTINCLUDEDIR=${OCTINCLUDEDIR:-`$MKOCTFILE -p INCFLAGS`}
AC_LANG_PUSH([C++])
TCXXFLAGS=$CXXFLAGS
TLDFLAGS=$LDFLAGS
@@ -65,7 +64,7 @@
LDFLAGS="-L$OCTLIBDIR $LDFLAGS"
LIBS="-loctinterp $LIBS"
# CXXFLAGS=
-CPPFLAGS="-I$OCTINCLUDEDIR -I$TPINCLUDEDIR $CPPFLAGS"
+CPPFLAGS="$OCTINCLUDEDIR $CPPFLAGS"
## Presence of 'error_state' -- does _not_ indicate no exceptions are
## used.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/src/error-helpers.cc
new/struct-1.0.15/src/error-helpers.cc
--- old/struct-1.0.14/src/error-helpers.cc 2016-09-18 18:09:18.000000000
+0200
+++ new/struct-1.0.15/src/error-helpers.cc 2018-05-11 10:42:06.440266748
+0200
@@ -1,6 +1,6 @@
/*
-Copyright (C) 2016 Olaf Till <[email protected]>
+Copyright (C) 2016, 2017 Olaf Till <[email protected]>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -42,12 +42,22 @@
}
#endif
-// call verror
void
-c_verror (const char *fmt, ...)
+_p_error (const char *fmt, ...)
{
va_list args;
va_start (args, fmt);
- verror (fmt, args);
+
+ std::ostringstream output_buf;
+
+ octave_vformat (output_buf, fmt, args);
+
+ std::string msg = output_buf.str ();
+
+ if (msg[msg.length () - 1] != '\n')
+ msg += "\n";
+
+ std::cerr << msg;
+
va_end (args);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/struct-1.0.14/src/error-helpers.h
new/struct-1.0.15/src/error-helpers.h
--- old/struct-1.0.14/src/error-helpers.h 2016-09-18 18:09:18.000000000
+0200
+++ new/struct-1.0.15/src/error-helpers.h 2018-05-11 10:42:06.440266748
+0200
@@ -1,6 +1,6 @@
/*
-Copyright (C) 2016 Olaf Till <[email protected]>
+Copyright (C) 2016, 2017 Olaf Till <[email protected]>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -19,15 +19,19 @@
#include "config.h"
-// call verror
+// Octaves non-static verror functions: The elder all set error_state,
+// the newer, present from the time on at which error started to throw
+// an exception, all throw, too.
+
+// call verror, for _linking_ also against Octave versions who have no
+// verror() with these arguments
#ifdef HAVE_OCTAVE_VERROR_ARG_EXC
void c_verror (octave_execution_exception&, const char *, ...);
#else
void c_verror (const octave_execution_exception&, const char *, ...);
#endif
-// call verror
-void c_verror (const char *fmt, ...);
+void _p_error (const char *fmt, ...);
// Print a message if 'code' causes an error and raise an error again,
// both if Octave uses exceptions for errors and if it still uses
@@ -49,8 +53,6 @@
catch (octave_execution_exception& e) \
{ \
c_verror (e, __VA_ARGS__); \
- \
- throw e; \
}
#else
#define CHECK_ERROR(code, retval, ...) \
@@ -60,9 +62,7 @@
} \
catch (octave_execution_exception& e) \
{ \
- c_verror (e, __VA_ARGS__); \
- \
- throw e; \
+ verror (e, __VA_ARGS__); \
}
#endif
@@ -78,14 +78,14 @@
\
if (error_state) \
{ \
- c_verror (__VA_ARGS__); \
+ _p_error (__VA_ARGS__); \
\
exit (1); \
} \
} \
- catch (octave_execution_exception& e) \
+ catch (octave_execution_exception&) \
{ \
- c_verror (e, __VA_ARGS__); \
+ _p_error (__VA_ARGS__); \
\
exit (1); \
}
@@ -95,9 +95,9 @@
{ \
code ; \
} \
- catch (octave_execution_exception& e) \
+ catch (octave_execution_exception&) \
{ \
- c_verror (e, __VA_ARGS__); \
+ _p_error (__VA_ARGS__); \
\
exit (1); \
}
@@ -126,6 +126,8 @@
}
#else
#define SET_ERR(code, err) \
+ err = false; \
+ \
try \
{ \
code ; \