Using `-isystem` flag causes compilation errors with GCC10.
Replace it with `-I` flag.
Fixes#1805
Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
* ruby-bigendian:
Travis ruby s390x (big endian) architecture testing
Install libpcre3-dev for Linux builds
Don't fail the build if CPU model or memory can't be detected
Switch one of Travis CI Ruby builds to use s390x arch
* octave-fixes:
octrun.swg: ensure type_id() is set correctly
.travis.yml: build Octave on OSX with CPP=11
.travis.yml: require Octave build on OSX to pass
.travis.yml: add Octave test on Ubuntu Bionic
Octave: use pre-compiled headers to speed up test suite, if supported
Tools/travis-osx-install.sh: disable 'brew cleanup' to save Travis job run time
Tools/travis-osx-install.sh: use Tools/brew-install to install Octave
octave.cxx: fix exception raising for newer Octave versions
octave.cxx: add missing return statement before "fail:" label
octave.cxx: this belongs in the code (as opposed to definition) section
octave.cxx: remote whitespaces
octave.cxx: replace Printf() with Append() for consistency
octruntime.swg: do not use atexit() to quit Octave
octrun.swg: remove octave_value type-id from octave_swig_bound_func
configure.ac: fix calls to mkoctfile for Octave configuration
- Since (at least) Octave 5.1.0, the Octave error() function now raises a C++
exception, which if uncaught immediately exits a SWIG wrapper function,
bypassing any cleanup code that may appear after a "fail:" label.
- This patch adds a "try { ... } catch(...) { }" block around the contents of
SWIG wrapper functions to first execute the cleanup code before rethrowing any
exception raised.
- It is backward compatible with earlier versions of Octave where error() does
not raise an exception, which will still branch to the "fail:" block to
execute cleanup code if an error is encountered.
- This reverts commit 931656bcbe
- Since atexit() does not pass along the desired exit status,
__swig_atexit__() always exits with status zero, regardless
of whether Octave completed successfully or raised an error.
- This means the success/failure of Octave scripts which load
SWIG modules cannot be determined by other programs, which
makes them unusable.
- Instead, provide a Octave function swig_exit() which calls
::_Exit() with a given exit status. This way at least a
clean exit from Octave can be guaranteed for future versions
if the seg-fault problem is not fixed.
- The {DECLARE|DEFINE}_OV_TYPEID_FUNCTIONS_AND_DATA declarations
attached to this class cause a seg-fault in the module_load
Octave example. Removing these declarations fixes the seg-fault.
- While cause of seg-fault is unknown, note that (in Octave 5.1.0)
the declaration of octave_function, which is the base class for
octave_swig_bound_func, does not use these declarations. So it's
possible they simply are not required for this type of subclass.
- As of Octave 5.1.0, mkoctfile no longer works with 'env -'
(no environment), so need to pass at least PATH and
LD_LIBRARY_PATH for it to work.
- Still need to clear environment so that it doesn't override
mkoctfile defined variables, e.g. CXXFLAGS.
This package contains the required PCRE library development files and
may be already installed, as is apparently the case for amd64 systems,
but also may not be, as when using s390x architecture.
This is purely informative anyhow and there is no reason to stop the
build just because this information couldn't be found (as happens when
running in s390x VM, for example).
Also avoid useless use of cat.