annotate scripts/miscellaneous/license.m @ 12597:e12a7c0a1fc5 stable

getappdata.m: If no property name is provided, return a structure representing the appdata.
author Ben Abbott <bpabbott@mac.com>
date Tue, 12 Apr 2011 18:50:20 -0400
parents 139f993936af
children 45f4ff9a6247
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11523
fd0a3ac60b0e update copyright notices
John W. Eaton <jwe@octave.org>
parents: 11472
diff changeset
1 ## Copyright (C) 2005-2011 William Poetra Yoga Hadisoeseno
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
2 ##
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
3 ## This file is part of Octave.
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
4 ##
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
5 ## Octave is free software; you can redistribute it and/or modify it
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
6 ## under the terms of the GNU General Public License as published by
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6555
diff changeset
7 ## the Free Software Foundation; either version 3 of the License, or (at
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6555
diff changeset
8 ## your option) any later version.
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
9 ##
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
10 ## Octave is distributed in the hope that it will be useful, but
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
13 ## General Public License for more details.
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
14 ##
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
15 ## You should have received a copy of the GNU General Public License
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6555
diff changeset
16 ## along with Octave; see the file COPYING. If not, see
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6555
diff changeset
17 ## <http://www.gnu.org/licenses/>.
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
18
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
19 ## -*- texinfo -*-
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
20 ## @deftypefn {Function File} {} license
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
21 ## Display the license of Octave.
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
22 ##
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
23 ## @deftypefnx {Function File} {} license ("inuse")
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
24 ## Display a list of packages currently being used.
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
25 ##
6547
4fb053f24fd6 [project @ 2007-04-19 21:47:40 by jwe]
jwe
parents: 5642
diff changeset
26 ## @deftypefnx {Function File} {@var{retval} =} license ("inuse")
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
27 ## Return a structure containing the fields @code{feature} and @code{user}.
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
28 ##
6547
4fb053f24fd6 [project @ 2007-04-19 21:47:40 by jwe]
jwe
parents: 5642
diff changeset
29 ## @deftypefnx {Function File} {@var{retval} =} license ("test", @var{feature})
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
30 ## Return 1 if a license exists for the product identified by the string
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
31 ## @var{feature} and 0 otherwise. The argument @var{feature} is case
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
32 ## insensitive and only the first 27 characters are checked.
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
33 ##
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
34 ## @deftypefnx {Function File} {} license ("test", @var{feature}, @var{toggle})
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
35 ## Enable or disable license testing for @var{feature}, depending on
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
36 ## @var{toggle}, which may be one of:
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
37 ##
11595
5ec6aa05638d Prevent doubled quotes around @table items in Info.
Rik <octave@nomad.inbox5.com>
parents: 11523
diff changeset
38 ## @table @asis
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
39 ## @item "enable"
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
40 ## Future tests for the specified license of @var{feature} are conducted
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
41 ## as usual.
10821
693e22af08ae Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents: 10549
diff changeset
42 ##
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
43 ## @item "disable"
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
44 ## Future tests for the specified license of @var{feature} return 0.
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
45 ## @end table
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
46 ##
6547
4fb053f24fd6 [project @ 2007-04-19 21:47:40 by jwe]
jwe
parents: 5642
diff changeset
47 ## @deftypefnx {Function File} {@var{retval} =} license ("checkout", @var{feature})
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
48 ## Check out a license for @var{feature}, returning 1 on success and 0
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
49 ## on failure.
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
50 ##
9051
1bf0ce0930be Grammar check TexInfo in all .m files
Rik <rdrider0-list@yahoo.com>
parents: 7017
diff changeset
51 ## This function is provided for compatibility with @sc{matlab}.
5642
2618a0750ae6 [project @ 2006-03-06 21:26:48 by jwe]
jwe
parents: 5548
diff changeset
52 ## @seealso{ver, version}
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
53 ## @end deftypefn
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
54
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
55 ## Author: William Poetra Yoga Hadisoeseno <williampoetra@gmail.com>
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
56
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
57 function retval = license (varargin)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
58
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
59 persistent __octave_licenses__;
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
60
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
61 if (isempty (__octave_licenses__))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
62 __octave_licenses__ = cell ();
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
63 __octave_licenses__{1,1} = "Octave";
6555
69e864d21c11 [project @ 2007-04-20 18:16:08 by jwe]
jwe
parents: 6547
diff changeset
64 __octave_licenses__{1,2} = "GNU General Public License";
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
65 __octave_licenses__{1,3} = true;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
66 if (exist ("OCTAVE_FORGE_VERSION"))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
67 __octave_licenses__{2,1} = "octave-forge";
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
68 __octave_licenses__{2,2} = "<various licenses>";
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
69 __octave_licenses__{2,3} = true;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
70 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
71 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
72
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
73 nout = nargout;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
74 nin = nargin;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
75 nr_licenses = rows (__octave_licenses__);
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
76
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
77 if (nout > 1 || nin > 3)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
78 error ("type `help license' for usage info");
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
79 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
80
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
81 if (nin == 0)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
82
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
83 found = false;
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
84 for p = 1:nr_licenses
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
85 if (strcmp (__octave_licenses__{p,1}, "Octave"))
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
86 found = true;
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
87 break;
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
88 endif
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
89 endfor
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
90
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
91 if (found)
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
92 result = __octave_licenses__{p,2};
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
93 else
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
94 result = "unknown";
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
95 endif
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
96
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
97 if (nout == 0)
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
98 printf ("%s\n", result);
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
99 else
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
100 retval = result;
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
101 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
102
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
103 elseif (nin == 1)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
104
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
105 if (nout == 0)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
106
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
107 if (! strcmp (varargin{1}, "inuse"))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
108 usage ("license (\"inuse\")");
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
109 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
110
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
111 for p = 1:nr_licenses
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
112 printf ("%s\n", __octave_licenses__{p,1});
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
113 endfor
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
114
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
115 else
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
116
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
117 if (! strcmp (varargin{1}, "inuse"))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
118 usage ("retval = license (\"inuse\")");
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
119 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
120
5548
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
121 pw = getpwuid (getuid ());
5cc01ba4c052 [project @ 2005-11-30 03:04:44 by jwe]
jwe
parents: 5546
diff changeset
122 if (isstruct (pw))
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 9245
diff changeset
123 username = pw.name;
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
124 else
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 9245
diff changeset
125 username = "octave_user";
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
126 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
127
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
128 retval(1:nr_licenses) = struct ("feature", "", "user", "");
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
129 for p = 1:nr_licenses
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
130 retval(p).feature = __octave_licenses__{p,1};
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
131 retval(p).user = username;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
132 endfor
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
133
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
134 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
135
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
136 else
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
137
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
138 feature = varargin{2}(1:(min ([(length (varargin{2})), 27])));
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
139
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
140 if (strcmp (varargin{1}, "test"))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
141
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
142 found = false;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
143 for p = 1:nr_licenses
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
144 if (strcmpi (feature, __octave_licenses__{p,1}))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
145 found = true;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
146 break;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
147 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
148 endfor
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
149
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
150 if (nin == 2)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
151 retval = found && __octave_licenses__{p,3};
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
152 else
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
153 if (found)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
154 if (strcmp (varargin{3}, "enable"))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
155 __octave_licenses__{p,3} = true;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
156 elseif (strcmp (varargin{3}, "disable"))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
157 __octave_licenses__{p,3} = false;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
158 else
11472
1740012184f9 Use uppercase for variable names in error() strings to match Info documentation. Only m-files done.
Rik <octave@nomad.inbox5.com>
parents: 10821
diff changeset
159 error ("TOGGLE must be either `enable' of `disable'");
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
160 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
161 else
12480
139f993936af Uppercase variables in script error strings.
Rik <octave@nomad.inbox5.com>
parents: 11595
diff changeset
162 error ("FEATURE `%s' not found", feature);
5546
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
163 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
164 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
165
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
166 elseif (strcmp (varargin{1}, "checkout"))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
167
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
168 if (nin != 2)
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
169 usage ("retval = license (\"checkout\", feature)");
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
170 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
171
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
172 found = false;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
173 for p = 1:nr_licenses
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
174 if (strcmpi (feature, __octave_licenses__{p,1}))
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
175 found = true;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
176 break;
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
177 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
178 endfor
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
179
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
180 retval = found && __octave_licenses__{p,3};
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
181
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
182 else
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
183
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
184 error ("type `help license' for usage info");
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
185
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
186 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
187
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
188 endif
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
189
3ebf0e35156c [project @ 2005-11-29 17:30:50 by jwe]
jwe
parents:
diff changeset
190 endfunction