annotate run-octave.in @ 33533:e89b2f30867d bytecode-interpreter tip

maint: Merge default to bytecode-interpreter
author Arun Giridhar <arungiridhar@gmail.com>
date Sun, 05 May 2024 18:12:44 -0400
parents 2e484f9f1f18
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5786
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
1 #! /bin/sh
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 7001
diff changeset
2 ##
7017
a1dbe9d80eee [project @ 2007-10-12 21:27:11 by jwe]
jwe
parents: 7016
diff changeset
3 ## run-octave -- run Octave in the build tree.
19593
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 18169
diff changeset
4 ##
27923
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
5 ########################################################################
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
6 ##
32632
2e484f9f1f18 maint: update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents: 31706
diff changeset
7 ## Copyright (C) 2006-2024 The Octave Project Developers
27918
b442ec6dda5c use centralized file for copyright info for individual contributors
John W. Eaton <jwe@octave.org>
parents: 26376
diff changeset
8 ##
27923
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
9 ## See the file COPYRIGHT.md in the top-level directory of this
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
10 ## distribution or <https://octave.org/copyright/>.
7017
a1dbe9d80eee [project @ 2007-10-12 21:27:11 by jwe]
jwe
parents: 7016
diff changeset
11 ##
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 7001
diff changeset
12 ## This file is part of Octave.
19593
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 18169
diff changeset
13 ##
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 24126
diff changeset
14 ## Octave is free software: you can redistribute it and/or modify it
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
15 ## under the terms of the GNU General Public License as published by
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 24126
diff changeset
16 ## the Free Software Foundation, either version 3 of the License, or
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
17 ## (at your option) any later version.
19593
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 18169
diff changeset
18 ##
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
19 ## Octave is distributed in the hope that it will be useful, but
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
20 ## WITHOUT ANY WARRANTY; without even the implied warranty of
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
21 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22323
diff changeset
22 ## GNU General Public License for more details.
19593
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 18169
diff changeset
23 ##
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 7001
diff changeset
24 ## You should have received a copy of the GNU General Public License
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 7001
diff changeset
25 ## along with Octave; see the file COPYING. If not, see
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 24126
diff changeset
26 ## <https://www.gnu.org/licenses/>.
27923
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
27 ##
bd51beb6205e update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents: 27919
diff changeset
28 ########################################################################
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
29
20430
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
30 : ${AWK=%AWK%}
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
31 : ${FIND=%FIND%}
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
32 : ${SED=%SED%}
30277
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
33 : ${ADDRESS_SANITIZER_ENABLED="%ADDRESS_SANITIZER_ENABLED%"}
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
34 : ${ADDRESS_SANITIZER_OPTIONS="%ADDRESS_SANITIZER_OPTIONS%"}
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
35
21092
429f83903400 maint: Use "FIXME:" more places in code base.
Rik <rik@octave.org>
parents: 21036
diff changeset
36 # FIXME: is there a better way to handle the possibility of spaces
429f83903400 maint: Use "FIXME:" more places in code base.
Rik <rik@octave.org>
parents: 21036
diff changeset
37 # in these names?
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
38
6131
9a6e5cae5275 [project @ 2006-11-01 18:25:54 by jwe]
jwe
parents: 6129
diff changeset
39 top_srcdir='%abs_top_srcdir%'
9a6e5cae5275 [project @ 2006-11-01 18:25:54 by jwe]
jwe
parents: 6129
diff changeset
40 builddir='%builddir%'
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
41
13187
12814f1fbbd2 Omit $top_srcdir/test directory tree from Octave's path in run-octave script
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
42 d1="$top_srcdir/scripts"
12814f1fbbd2 Omit $top_srcdir/test directory tree from Octave's path in run-octave script
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
43 d2="$builddir/scripts"
15195
2fc554ffbc28 split libinterp from src
John W. Eaton <jwe@octave.org>
parents: 15159
diff changeset
44 d3="$builddir/libinterp"
19032
d902542221c8 new data directory for storing data files we distribute
John W. Eaton <jwe@octave.org>
parents: 18169
diff changeset
45 d4="$top_srcdir/examples/data"
25931
332be8be16eb dynamically load qt graphics
John W. Eaton <jwe@octave.org>
parents: 25065
diff changeset
46 d5="$builddir/libgui/graphics"
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
47
23856
41a0b750c36e run-octave.in: Don't put +packages in to the PATH variable.
Rik <rik@octave.org>
parents: 23220
diff changeset
48 d1_list=`$FIND "$d1" -type d -a ! \( \( -name private -o -name '@*' -o -name '+*' -o -name '.deps' -o -name '.libs' \) -a -prune \) -exec echo '{}' ';' | $SED 's/$/:/'`
41a0b750c36e run-octave.in: Don't put +packages in to the PATH variable.
Rik <rik@octave.org>
parents: 23220
diff changeset
49 d2_list=`$FIND "$d2" -type d -a ! \( \( -name private -o -name '@*' -o -name '+*' -o -name '.deps' -o -name '.libs' \) -a -prune \) -exec echo '{}' ';' | $SED 's/$/:/'`
41a0b750c36e run-octave.in: Don't put +packages in to the PATH variable.
Rik <rik@octave.org>
parents: 23220
diff changeset
50 d3_list=`$FIND "$d3" -type d -a ! \( \( -name private -o -name '@*' -o -name '+*' -o -name '.deps' -o -name '.libs' \) -a -prune \) -exec echo '{}' ';' | $SED 's/$/:/'`
19032
d902542221c8 new data directory for storing data files we distribute
John W. Eaton <jwe@octave.org>
parents: 18169
diff changeset
51 d4_list=`$FIND "$d4" -type d -exec echo '{}' ';' | $SED 's/$/:/'`
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
52
6827
647cad232070 [project @ 2007-08-24 16:38:05 by jwe]
jwe
parents: 6732
diff changeset
53 d1_path=`echo "$d1_list" | $AWK '{ t = (s $0); s = t; } END { sub (/:$/, "", s); print s; }'`
647cad232070 [project @ 2007-08-24 16:38:05 by jwe]
jwe
parents: 6732
diff changeset
54 d2_path=`echo "$d2_list" | $AWK '{ t = (s $0); s = t; } END { sub (/:$/, "", s); print s; }'`
647cad232070 [project @ 2007-08-24 16:38:05 by jwe]
jwe
parents: 6732
diff changeset
55 d3_path=`echo "$d3_list" | $AWK '{ t = (s $0); s = t; } END { sub (/:$/, "", s); print s; }'`
19032
d902542221c8 new data directory for storing data files we distribute
John W. Eaton <jwe@octave.org>
parents: 18169
diff changeset
56 d4_path=`echo "$d4_list" | $AWK '{ t = (s $0); s = t; } END { sub (/:$/, "", s); print s; }'`
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
57
15137
16a6b0a6855d GUI: support for octave arguments and integrate with run-octave.
John W. Eaton <jwe@octave.org>
parents: 14614
diff changeset
58 octave_executable="$builddir/src/octave"
16a6b0a6855d GUI: support for octave arguments and integrate with run-octave.
John W. Eaton <jwe@octave.org>
parents: 14614
diff changeset
59
25931
332be8be16eb dynamically load qt graphics
John W. Eaton <jwe@octave.org>
parents: 25065
diff changeset
60 LOADPATH="$d1_path:$d2_path:$d3_path:$d4_path:$d5"
24046
230613ece415 Add the working directory to IMAGE_PATH when running in build tree
Mike Miller <mtmiller@octave.org>
parents: 23856
diff changeset
61 IMAGEPATH=".:$top_srcdir/scripts/image"
8940
6994961bf1f4 use doc-cache instead of DOC for doc cache file name
John W. Eaton <jwe@octave.org>
parents: 8920
diff changeset
62 DOCFILE="$builddir/doc/interpreter/doc-cache"
22077
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
63 BUILT_IN_DOCSTRINGS_FILE="$builddir/libinterp/DOCSTRINGS"
14614
4e9dc46d4125 handle texinfo macros consistently in help system and manual
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
64 TEXIMACROSFILE="$top_srcdir/doc/interpreter/macros.texi"
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents: 9613
diff changeset
65 INFOFILE="$top_srcdir/doc/interpreter/octave.info"
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
66
11452
e1a5bf3ea1d9 Add a GUD mode option to run-octave.in
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents: 9794
diff changeset
67 ## Checking for string equality below with prepended x's in order to
e1a5bf3ea1d9 Add a GUD mode option to run-octave.in
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents: 9794
diff changeset
68 ## handle problems with empty strings.
21036
b432e7bb3cbd run-octave.in: Allow passing multiple arguments to run-octave. (bug #46690)
Lachlan Andrew <lachlanbis@gmail.com>
parents: 20712
diff changeset
69 while [ $# -gt 0 ]; do
5786
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
70 if [ "x$1" = "x-g" ]; then
6987
deb175b6e4a1 [project @ 2007-10-09 18:39:15 by jwe]
jwe
parents: 6827
diff changeset
71 driver="gdb --args"
5786
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
72 shift
11452
e1a5bf3ea1d9 Add a GUD mode option to run-octave.in
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents: 9794
diff changeset
73 elif [ "x$1" = "x-gud" ]; then
e1a5bf3ea1d9 Add a GUD mode option to run-octave.in
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents: 9794
diff changeset
74 ## Frontends for gdb (e.g. Emacs's GUD mode) need --annotate=3
e1a5bf3ea1d9 Add a GUD mode option to run-octave.in
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents: 9794
diff changeset
75 driver="gdb --annotate=3 --args"
e1a5bf3ea1d9 Add a GUD mode option to run-octave.in
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents: 9794
diff changeset
76 shift
15335
5187c3ea5a68 run-octave.in: Add -gud2 option to support new versions of gud
Max Brister <max@2bass.com>
parents: 15249
diff changeset
77 elif [ "x$1" = "x-gud2" ]; then
5187c3ea5a68 run-octave.in: Add -gud2 option to support new versions of gud
Max Brister <max@2bass.com>
parents: 15249
diff changeset
78 ## The latest version of gud needs -i=mi. There isn't a good way to check
16036
dd583c258cf9 Fix trivial typo in run-octave.in comment
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 15971
diff changeset
79 ## this at configure time, so we just add a gud2 flag
15335
5187c3ea5a68 run-octave.in: Add -gud2 option to support new versions of gud
Max Brister <max@2bass.com>
parents: 15249
diff changeset
80 driver="gdb -i=mi --args"
5187c3ea5a68 run-octave.in: Add -gud2 option to support new versions of gud
Max Brister <max@2bass.com>
parents: 15249
diff changeset
81 shift
5786
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
82 elif [ "x$1" = "x-valgrind" ]; then
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
83 driver="valgrind --tool=memcheck"
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
84 shift
19159
eeb22763138b Add --callgrind option to run-octave to run with profiling.
Rik <rik@octave.org>
parents: 19032
diff changeset
85 elif [ "x$1" = "x-callgrind" ]; then
eeb22763138b Add --callgrind option to run-octave to run with profiling.
Rik <rik@octave.org>
parents: 19032
diff changeset
86 driver="valgrind --tool=callgrind"
eeb22763138b Add --callgrind option to run-octave to run with profiling.
Rik <rik@octave.org>
parents: 19032
diff changeset
87 shift
5786
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
88 elif [ "x$1" = "x-strace" ]; then
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
89 driver="strace -o octave.trace"
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
90 shift
15139
bfc220d1de67 include gui in default Octave binary
John W. Eaton <jwe@octave.org>
parents: 15137
diff changeset
91 elif [ "x$1" = "x-cli" ]; then
bfc220d1de67 include gui in default Octave binary
John W. Eaton <jwe@octave.org>
parents: 15137
diff changeset
92 octave_executable="$builddir/src/octave-cli"
15137
16a6b0a6855d GUI: support for octave arguments and integrate with run-octave.
John W. Eaton <jwe@octave.org>
parents: 14614
diff changeset
93 shift
30277
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
94 elif [ "x$1" = "x-disable-asan" ]; then
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
95 disable_asan=yes
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
96 shift
21036
b432e7bb3cbd run-octave.in: Allow passing multiple arguments to run-octave. (bug #46690)
Lachlan Andrew <lachlanbis@gmail.com>
parents: 20712
diff changeset
97 else
b432e7bb3cbd run-octave.in: Allow passing multiple arguments to run-octave. (bug #46690)
Lachlan Andrew <lachlanbis@gmail.com>
parents: 20712
diff changeset
98 break
5786
9c3c903f037e [project @ 2006-05-03 20:03:41 by jwe]
jwe
parents:
diff changeset
99 fi
21036
b432e7bb3cbd run-octave.in: Allow passing multiple arguments to run-octave. (bug #46690)
Lachlan Andrew <lachlanbis@gmail.com>
parents: 20712
diff changeset
100 done
6125
a1754033bc6c [project @ 2006-10-29 17:05:53 by jwe]
jwe
parents: 6074
diff changeset
101
22077
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
102 ## DOCSTRINGS and doc-cache files may exist in the current (build) directory
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
103 ## or in the source directory when building from a release.
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
104 if ! [ -e $DOCFILE ]; then
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
105 DOCFILE="$top_srcdir/doc/interpreter/doc-cache"
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
106 fi
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
107 if ! [ -e $BUILT_IN_DOCSTRINGS_FILE ]; then
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
108 BUILT_IN_DOCSTRINGS_FILE="$top_srcdir/libinterp/DOCSTRINGS"
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
109 fi
df50d42d4b1b build: build doc-cache and DOCSTRINGS files in the build dir
Mike Miller <mtmiller@octave.org>
parents: 21664
diff changeset
110
18169
525af54479eb allow run-octave to find octave-gui program
John W. Eaton <jwe@octave.org>
parents: 17778
diff changeset
111 ## We set OCTAVE_ARCHLIBDIR so that the wrapper program can find the
525af54479eb allow run-octave to find octave-gui program
John W. Eaton <jwe@octave.org>
parents: 17778
diff changeset
112 ## octave-gui program in the build tree. That will fail if we ever
525af54479eb allow run-octave to find octave-gui program
John W. Eaton <jwe@octave.org>
parents: 17778
diff changeset
113 ## need Octave to find other things in ARCHLIBDIR that are not built
525af54479eb allow run-octave to find octave-gui program
John W. Eaton <jwe@octave.org>
parents: 17778
diff changeset
114 ## in the $builddir/src directory.
525af54479eb allow run-octave to find octave-gui program
John W. Eaton <jwe@octave.org>
parents: 17778
diff changeset
115
20430
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
116 OCTAVE_ARCHLIBDIR="$builddir/src"; export OCTAVE_ARCHLIBDIR
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
117 OCTAVE_BINDIR="$builddir/src"; export OCTAVE_BINDIR
24899
1a46d174a483 include a proper definition of Octave's private font fallback directory
Mike Miller <mtmiller@octave.org>
parents: 24875
diff changeset
118 OCTAVE_FONTS_DIR="$top_srcdir/etc/fonts"; export OCTAVE_FONTS_DIR
20430
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
119 OCTAVE_JAVA_DIR="$builddir/scripts/java"; export OCTAVE_JAVA_DIR
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
120 OCTAVE_LOCALE_DIR="$builddir/libgui/languages"; export OCTAVE_LOCALE_DIR
25065
74ece2b45b4f Revert unintended changes in cset 1cd3aeda7598
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents: 25060
diff changeset
121 OCTAVE_QTHELP_COLLECTION="$builddir/doc/interpreter/octave_interpreter.qhc"; export OCTAVE_QTHELP_COLLECTION
20479
ac0f7acdc3fd avoid executing startup file twice when using run-octave script (bug #45872)
John W. Eaton <jwe@octave.org>
parents: 20430
diff changeset
122 OCTAVE_SITE_INITFILE="$top_srcdir/scripts/startup/site-rcfile"; export OCTAVE_SITE_INITFILE
ac0f7acdc3fd avoid executing startup file twice when using run-octave script (bug #45872)
John W. Eaton <jwe@octave.org>
parents: 20430
diff changeset
123 OCTAVE_VERSION_INITFILE="$top_srcdir/scripts/startup/version-rcfile"; export OCTAVE_VERSION_INITFILE
20430
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
124
20712
4a25c398ffa2 configure option to build with address sanitizer (bugg #46449)
John W. Eaton <jwe@octave.org>
parents: 20479
diff changeset
125 if [ "$ADDRESS_SANITIZER_ENABLED" = yes ]; then
30277
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
126 if [ "$disable_asan" = yes ]; then
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
127 ## Is there a better way to do this so that we don't fill /tmp
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
128 ## with junk files? Using /dev/null won't work because asan
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
129 ## appends the process ID to the file name.
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
130 ASAN_OPTIONS="leak_check_at_exit=0:log_path=/tmp/oct-asan-log:verbosity=0"
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
131 else
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
132 ASAN_OPTIONS="$ADDRESS_SANITIZER_OPTIONS"
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
133 fi
f816a8c44924 allow build to succeed when address sanitizer is enabled (bug #61415)
John W. Eaton <jwe@octave.org>
parents: 29511
diff changeset
134 export ASAN_OPTIONS
20712
4a25c398ffa2 configure option to build with address sanitizer (bugg #46449)
John W. Eaton <jwe@octave.org>
parents: 20479
diff changeset
135 fi
4a25c398ffa2 configure option to build with address sanitizer (bugg #46449)
John W. Eaton <jwe@octave.org>
parents: 20479
diff changeset
136
20430
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
137 exec $builddir/libtool --mode=execute $driver \
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
138 "$octave_executable" --no-init-path --path="$LOADPATH" \
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
139 --image-path="$IMAGEPATH" --doc-cache-file="$DOCFILE" \
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
140 --built-in-docstrings-file="$BUILT_IN_DOCSTRINGS_FILE" \
a63f9cb609a1 run-octave: Use portable shell constructs
Mike Miller <mtmiller@octave.org>
parents: 19697
diff changeset
141 --texi-macros-file="$TEXIMACROSFILE" --info-file="$INFOFILE" "$@"