36
30
<a name="l00011"></a>00011 <span class="comment"> * General Public License for more details.</span>
37
31
<a name="l00012"></a>00012 <span class="comment"> *</span>
38
32
<a name="l00013"></a>00013 <span class="comment"> * You should have received a copy of the GNU General Public License</span>
39
<a name="l00014"></a>00014 <span class="comment"> * along with this program; if not, write to the Free Software</span>
40
<a name="l00015"></a>00015 <span class="comment"> * Foundation, Inc., 59 Temple Place, Suite 330, Boston,</span>
41
<a name="l00016"></a>00016 <span class="comment"> * MA 02111-1307 USA</span>
42
<a name="l00017"></a>00017 <span class="comment"> *</span>
43
<a name="l00018"></a>00018 <span class="comment"> *********************************************************************/</span>
44
<a name="l00019"></a>00019
45
<a name="l00020"></a>00020 <span class="preprocessor">#include <config.h></span>
46
<a name="l00021"></a>00021
47
<a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/sbuild-i18n_8h.html">sbuild/sbuild-i18n.h</a>></span>
48
<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/sbuild-log_8h.html">sbuild/sbuild-log.h</a>></span>
49
<a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/sbuild-types_8h.html">sbuild/sbuild-types.h</a>></span>
50
<a name="l00025"></a>00025
51
<a name="l00026"></a>00026 <span class="preprocessor">#include "<a class="code" href="schroot-base-main_8h.html">schroot-base-main.h</a>"</span>
52
<a name="l00027"></a>00027
53
<a name="l00028"></a>00028 <span class="preprocessor">#include <cstdlib></span>
54
<a name="l00029"></a>00029 <span class="preprocessor">#include <ctime></span>
55
<a name="l00030"></a>00030 <span class="preprocessor">#include <iostream></span>
56
<a name="l00031"></a>00031
57
<a name="l00032"></a>00032 <span class="preprocessor">#include <syslog.h></span>
58
<a name="l00033"></a>00033
59
<a name="l00034"></a>00034 <span class="preprocessor">#include <boost/format.hpp></span>
60
<a name="l00035"></a>00035
61
<a name="l00036"></a>00036 <span class="keyword">using</span> std::endl;
62
<a name="l00037"></a>00037 <span class="keyword">using</span> boost::format;
63
<a name="l00038"></a>00038 <span class="keyword">using</span> sbuild::_;
64
<a name="l00039"></a>00039 <span class="keyword">using namespace </span>schroot_base;
65
<a name="l00040"></a>00040
66
<a name="l00041"></a><a class="code" href="classschroot__base_1_1main.html#eceeb5beb43967c3cf504f3646887c8f">00041</a> <a class="code" href="schroot_8cc.html#0ddf1224851353fc92bfbff6f499fa97" title="Main routine.">main::main</a> (std::string <span class="keyword">const</span>& program_name,
67
<a name="l00042"></a>00042 std::string <span class="keyword">const</span>& program_usage,
68
<a name="l00043"></a>00043 options::ptr <span class="keyword">const</span>& program_options,
69
<a name="l00044"></a>00044 <span class="keywordtype">bool</span> use_syslog):
70
<a name="l00045"></a>00045 program_name(program_name),
71
<a name="l00046"></a>00046 program_usage(program_usage),
72
<a name="l00047"></a>00047 program_options(program_options),
73
<a name="l00048"></a>00048 use_syslog(use_syslog)
74
<a name="l00049"></a>00049 {
75
<a name="l00050"></a>00050 }
76
<a name="l00051"></a>00051
77
<a name="l00052"></a><a class="code" href="classschroot__base_1_1main.html#4444e261c1a635e1aab12e00e5b95f5a">00052</a> <a class="code" href="classschroot__base_1_1main.html#4444e261c1a635e1aab12e00e5b95f5a" title="The destructor.">main::~main</a> ()
78
<a name="l00053"></a>00053 {
79
<a name="l00054"></a>00054 }
80
<a name="l00055"></a>00055
81
<a name="l00056"></a>00056 <span class="keywordtype">void</span>
82
<a name="l00057"></a><a class="code" href="classschroot__base_1_1main.html#cd9c1d4d7c52a423eb929a4bb6f644e0">00057</a> <a class="code" href="classschroot__base_1_1main.html#cd9c1d4d7c52a423eb929a4bb6f644e0" title="Print version information.">main::action_version</a> (std::ostream& stream)
83
<a name="l00058"></a>00058 {
84
<a name="l00059"></a>00059 <span class="comment">// TRANSLATORS: %1% = program name</span>
85
<a name="l00060"></a>00060 <span class="comment">// TRANSLATORS: %2% = program version</span>
86
<a name="l00061"></a>00061 <span class="comment">// TRANSLATORS: %3% = release date</span>
87
<a name="l00062"></a>00062 format fmt(_(<span class="stringliteral">"%1% (Debian sbuild) %2% (%3%)\n"</span>));
88
<a name="l00063"></a>00063 fmt % this-><a class="code" href="classschroot__base_1_1main.html#3d6be1d425f4d74cfced7ca5b6b6f79b" title="The name of the program.">program_name</a> % VERSION % <a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/classsbuild_1_1gmdate.html">sbuild::gmdate</a>(RELEASE_DATE);
89
<a name="l00064"></a>00064
90
<a name="l00065"></a>00065 stream << fmt
91
<a name="l00066"></a>00066 << _(<span class="stringliteral">"Written by Roger Leigh"</span>) << <span class="charliteral">'\n'</span> << <span class="charliteral">'\n'</span>
92
<a name="l00067"></a>00067 <span class="comment">// TRANSLATORS: '(C)' is a copyright symbol and '-' is an en-dash.</span>
93
<a name="l00068"></a>00068 << _(<span class="stringliteral">"Copyright (C) 2004-2007 Roger Leigh"</span>) << <span class="charliteral">'\n'</span>
94
<a name="l00069"></a>00069 << _(<span class="stringliteral">"This is free software; see the source for copying conditions. There is NO\n"</span>
95
<a name="l00070"></a>00070 <span class="stringliteral">"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"</span>)
96
<a name="l00071"></a>00071 << std::flush;
97
<a name="l00072"></a>00072 }
98
<a name="l00073"></a>00073
99
<a name="l00074"></a>00074 <span class="keywordtype">void</span>
100
<a name="l00075"></a><a class="code" href="classschroot__base_1_1main.html#4c246d8a2cedf030e094ffdee5a38553">00075</a> <a class="code" href="classschroot__base_1_1main.html#4c246d8a2cedf030e094ffdee5a38553" title="Print help information.">main::action_help</a> (std::ostream& stream)
101
<a name="l00076"></a>00076 {
102
<a name="l00077"></a>00077 stream
103
<a name="l00078"></a>00078 << _(<span class="stringliteral">"Usage:"</span>) << <span class="charliteral">'\n'</span>
104
<a name="l00079"></a>00079 << <span class="stringliteral">" "</span> << this-><a class="code" href="classschroot__base_1_1main.html#3d6be1d425f4d74cfced7ca5b6b6f79b" title="The name of the program.">program_name</a> << <span class="stringliteral">" "</span>
105
<a name="l00080"></a>00080 << this-><a class="code" href="classschroot__base_1_1main.html#a6c3a9a050dc1f525d289bbe7d63534b" title="The usage text of the program.">program_usage</a> << std::endl;
106
<a name="l00081"></a>00081
107
<a name="l00082"></a>00082 stream << this-><a class="code" href="classschroot__base_1_1main.html#5330208887270dab650b4400a8fb0995" title="The program options.">program_options</a>->get_visible_options() << std::flush;
108
<a name="l00083"></a>00083 }
109
<a name="l00084"></a>00084
110
<a name="l00085"></a>00085 <span class="keywordtype">int</span>
111
<a name="l00086"></a><a class="code" href="classschroot__base_1_1main.html#aea33f1f3d50f732d8ec6b0a09860ee7">00086</a> <a class="code" href="namespaceschroot__base.html#89b50862b19c7bac85832e27092ed01d" title="Main routine.">main::run</a> (<span class="keywordtype">int</span> argc,
112
<a name="l00087"></a>00087 <span class="keywordtype">char</span> *argv[])
113
<a name="l00088"></a>00088 {
114
<a name="l00089"></a>00089 <span class="keywordflow">try</span>
115
<a name="l00090"></a>00090 {
116
<a name="l00091"></a>00091 this-><a class="code" href="classschroot__base_1_1main.html#5330208887270dab650b4400a8fb0995" title="The program options.">program_options</a>->parse(argc, argv);
117
<a name="l00092"></a>00092
118
<a name="l00093"></a>00093 <span class="preprocessor">#ifdef SBUILD_DEBUG</span>
119
<a name="l00094"></a>00094 <span class="preprocessor"></span> <a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/namespacesbuild.html#8cce2f8a60529f8f0c5064028610c89c">sbuild::debug_level</a> = <a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/namespacesbuild.html#cc4d8fc120bfd21c22acd9d9ed0e754dffa463972dbe4f170e64069c622886ec">sbuild::DEBUG_CRITICAL</a>;
120
<a name="l00095"></a>00095 <span class="preprocessor">#endif</span>
121
<a name="l00096"></a>00096 <span class="preprocessor"></span>
122
<a name="l00097"></a>00097 <span class="keywordflow">if</span> (this->use_syslog)
123
<a name="l00098"></a>00098 openlog(this->program_name.c_str(), LOG_PID|LOG_NDELAY, LOG_AUTHPRIV);
124
<a name="l00099"></a>00099
125
<a name="l00100"></a>00100 <span class="keywordtype">int</span> status = <a class="code" href="classschroot__base_1_1main.html#e252e6014964a24c7290b9c0378c1310" title="Run the program.">run_impl</a>();
126
<a name="l00101"></a>00101
127
<a name="l00102"></a>00102 closelog();
128
<a name="l00103"></a>00103
129
<a name="l00104"></a>00104 <span class="keywordflow">return</span> status;
130
<a name="l00105"></a>00105 }
131
<a name="l00106"></a>00106 <span class="keywordflow">catch</span> (std::exception <span class="keyword">const</span>& e)
132
<a name="l00107"></a>00107 {
133
<a name="l00108"></a>00108 <a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/namespacesbuild.html#fb5f819f244e5c27be632b6243c7b82a">sbuild::log_exception_error</a>(e);
134
<a name="l00109"></a>00109
135
<a name="l00110"></a>00110 <span class="keywordflow">try</span>
136
<a name="l00111"></a>00111 {
137
<a name="l00112"></a>00112 <span class="keyword">dynamic_cast<</span>boost::program_options::error const&<span class="keyword">></span>(e);
138
<a name="l00113"></a>00113 <a class="codeRef" doxygen="sbuild.tag:/tmp/sr/schroot-1.1.5/doc/sbuild/html/" href="/tmp/sr/schroot-1.1.5/doc/sbuild/html/namespacesbuild.html#4b668d467f8c9c6063cd2c9c7aaf3086">sbuild::log_info</a>()
139
<a name="l00114"></a>00114 <span class="comment">// TRANSLATORS: %1% = program name</span>
140
<a name="l00115"></a>00115 << format(_(<span class="stringliteral">"Run \"%1% --help\" to list usage example and all available options"</span>))
141
<a name="l00116"></a>00116 % argv[0]
142
<a name="l00117"></a>00117 << endl;
143
<a name="l00118"></a>00118 }
144
<a name="l00119"></a>00119 <span class="keywordflow">catch</span> (std::bad_cast <span class="keyword">const</span>& discard)
145
<a name="l00120"></a>00120 {
146
<a name="l00121"></a>00121 }
147
<a name="l00122"></a>00122
148
<a name="l00123"></a>00123 <span class="keywordflow">if</span> (this->use_syslog)
149
<a name="l00124"></a>00124 closelog();
150
<a name="l00125"></a>00125
151
<a name="l00126"></a>00126 <span class="keywordflow">return</span> EXIT_FAILURE;
152
<a name="l00127"></a>00127 }
153
<a name="l00128"></a>00128 }
154
</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Sun Jul 8 21:23:55 2007 for schroot by
33
<a name="l00014"></a>00014 <span class="comment"> * along with this program. If not, see</span>
34
<a name="l00015"></a>00015 <span class="comment"> * <http://www.gnu.org/licenses/>.</span>
35
<a name="l00016"></a>00016 <span class="comment"> *</span>
36
<a name="l00017"></a>00017 <span class="comment"> *********************************************************************/</span>
37
<a name="l00018"></a>00018
38
<a name="l00019"></a>00019 <span class="preprocessor">#include <config.h></span>
39
<a name="l00020"></a>00020
40
<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/sbuild-i18n_8h.html">sbuild/sbuild-i18n.h</a>></span>
41
<a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/sbuild-log_8h.html">sbuild/sbuild-log.h</a>></span>
42
<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/sbuild-types_8h.html">sbuild/sbuild-types.h</a>></span>
43
<a name="l00024"></a>00024
44
<a name="l00025"></a>00025 <span class="preprocessor">#include "<a class="code" href="schroot-base-main_8h.html">schroot-base-main.h</a>"</span>
45
<a name="l00026"></a>00026
46
<a name="l00027"></a>00027 <span class="preprocessor">#include <cstdlib></span>
47
<a name="l00028"></a>00028 <span class="preprocessor">#include <ctime></span>
48
<a name="l00029"></a>00029 <span class="preprocessor">#include <iostream></span>
49
<a name="l00030"></a>00030
50
<a name="l00031"></a>00031 <span class="preprocessor">#include <syslog.h></span>
51
<a name="l00032"></a>00032
52
<a name="l00033"></a>00033 <span class="preprocessor">#include <boost/format.hpp></span>
53
<a name="l00034"></a>00034
54
<a name="l00035"></a>00035 <span class="keyword">using</span> std::endl;
55
<a name="l00036"></a>00036 <span class="keyword">using</span> boost::format;
56
<a name="l00037"></a>00037 <span class="keyword">using</span> sbuild::_;
57
<a name="l00038"></a>00038 <span class="keyword">using namespace </span>schroot_base;
58
<a name="l00039"></a>00039
59
<a name="l00040"></a><a class="code" href="classschroot__base_1_1main.html#eceeb5beb43967c3cf504f3646887c8f">00040</a> <a class="code" href="schroot_8cc.html#0ddf1224851353fc92bfbff6f499fa97" title="Main routine.">main::main</a> (std::string <span class="keyword">const</span>& program_name,
60
<a name="l00041"></a>00041 std::string <span class="keyword">const</span>& program_usage,
61
<a name="l00042"></a>00042 options::ptr <span class="keyword">const</span>& program_options,
62
<a name="l00043"></a>00043 <span class="keywordtype">bool</span> use_syslog):
63
<a name="l00044"></a>00044 program_name(program_name),
64
<a name="l00045"></a>00045 program_usage(program_usage),
65
<a name="l00046"></a>00046 program_options(program_options),
66
<a name="l00047"></a>00047 use_syslog(use_syslog)
67
<a name="l00048"></a>00048 {
68
<a name="l00049"></a>00049 }
69
<a name="l00050"></a>00050
70
<a name="l00051"></a><a class="code" href="classschroot__base_1_1main.html#4444e261c1a635e1aab12e00e5b95f5a">00051</a> <a class="code" href="classschroot__base_1_1main.html#4444e261c1a635e1aab12e00e5b95f5a" title="The destructor.">main::~main</a> ()
71
<a name="l00052"></a>00052 {
72
<a name="l00053"></a>00053 }
73
<a name="l00054"></a>00054
74
<a name="l00055"></a>00055 <span class="keywordtype">void</span>
75
<a name="l00056"></a><a class="code" href="classschroot__base_1_1main.html#cd9c1d4d7c52a423eb929a4bb6f644e0">00056</a> <a class="code" href="classschroot__base_1_1main.html#cd9c1d4d7c52a423eb929a4bb6f644e0" title="Print version information.">main::action_version</a> (std::ostream& stream)
76
<a name="l00057"></a>00057 {
77
<a name="l00058"></a>00058 <span class="comment">// TRANSLATORS: %1% = program name</span>
78
<a name="l00059"></a>00059 <span class="comment">// TRANSLATORS: %2% = program version</span>
79
<a name="l00060"></a>00060 <span class="comment">// TRANSLATORS: %3% = release date</span>
80
<a name="l00061"></a>00061 format fmt(_(<span class="stringliteral">"%1% (Debian sbuild) %2% (%3%)\n"</span>));
81
<a name="l00062"></a>00062 fmt % this-><a class="code" href="classschroot__base_1_1main.html#3d6be1d425f4d74cfced7ca5b6b6f79b" title="The name of the program.">program_name</a> % VERSION % <a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/classsbuild_1_1gmdate.html">sbuild::gmdate</a>(RELEASE_DATE);
82
<a name="l00063"></a>00063
83
<a name="l00064"></a>00064 stream << fmt
84
<a name="l00065"></a>00065 << _(<span class="stringliteral">"Written by Roger Leigh"</span>) << <span class="charliteral">'\n'</span> << <span class="charliteral">'\n'</span>
85
<a name="l00066"></a>00066 <span class="comment">// TRANSLATORS: '(C)' is a copyright symbol and '-' is an en-dash.</span>
86
<a name="l00067"></a>00067 << _(<span class="stringliteral">"Copyright (C) 2004-2008 Roger Leigh"</span>) << <span class="charliteral">'\n'</span>
87
<a name="l00068"></a>00068 << _(<span class="stringliteral">"This is free software; see the source for copying conditions. There is NO\n"</span>
88
<a name="l00069"></a>00069 <span class="stringliteral">"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"</span>)
89
<a name="l00070"></a>00070 << std::flush;
90
<a name="l00071"></a>00071 }
91
<a name="l00072"></a>00072
92
<a name="l00073"></a>00073 <span class="keywordtype">void</span>
93
<a name="l00074"></a><a class="code" href="classschroot__base_1_1main.html#4c246d8a2cedf030e094ffdee5a38553">00074</a> <a class="code" href="classschroot__base_1_1main.html#4c246d8a2cedf030e094ffdee5a38553" title="Print help information.">main::action_help</a> (std::ostream& stream)
94
<a name="l00075"></a>00075 {
95
<a name="l00076"></a>00076 stream
96
<a name="l00077"></a>00077 << _(<span class="stringliteral">"Usage:"</span>) << <span class="charliteral">'\n'</span>
97
<a name="l00078"></a>00078 << <span class="stringliteral">" "</span> << this-><a class="code" href="classschroot__base_1_1main.html#3d6be1d425f4d74cfced7ca5b6b6f79b" title="The name of the program.">program_name</a> << <span class="stringliteral">" "</span>
98
<a name="l00079"></a>00079 << this-><a class="code" href="classschroot__base_1_1main.html#a6c3a9a050dc1f525d289bbe7d63534b" title="The usage text of the program.">program_usage</a> << std::endl;
99
<a name="l00080"></a>00080
100
<a name="l00081"></a>00081 stream << this-><a class="code" href="classschroot__base_1_1main.html#5330208887270dab650b4400a8fb0995" title="The program options.">program_options</a>->get_visible_options() << std::flush;
101
<a name="l00082"></a>00082 }
102
<a name="l00083"></a>00083
103
<a name="l00084"></a>00084 <span class="keywordtype">int</span>
104
<a name="l00085"></a><a class="code" href="classschroot__base_1_1main.html#aea33f1f3d50f732d8ec6b0a09860ee7">00085</a> <a class="code" href="namespaceschroot__base.html#89b50862b19c7bac85832e27092ed01d" title="Main routine.">main::run</a> (<span class="keywordtype">int</span> argc,
105
<a name="l00086"></a>00086 <span class="keywordtype">char</span> *argv[])
106
<a name="l00087"></a>00087 {
107
<a name="l00088"></a>00088 <span class="keywordflow">try</span>
108
<a name="l00089"></a>00089 {
109
<a name="l00090"></a>00090 this-><a class="code" href="classschroot__base_1_1main.html#5330208887270dab650b4400a8fb0995" title="The program options.">program_options</a>->parse(argc, argv);
110
<a name="l00091"></a>00091
111
<a name="l00092"></a>00092 <span class="preprocessor">#ifdef SBUILD_DEBUG</span>
112
<a name="l00093"></a>00093 <span class="preprocessor"></span> <a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/namespacesbuild.html#8cce2f8a60529f8f0c5064028610c89c">sbuild::debug_level</a> = <a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/namespacesbuild.html#cc4d8fc120bfd21c22acd9d9ed0e754dffa463972dbe4f170e64069c622886ec">sbuild::DEBUG_CRITICAL</a>;
113
<a name="l00094"></a>00094 <span class="preprocessor">#endif</span>
114
<a name="l00095"></a>00095 <span class="preprocessor"></span>
115
<a name="l00096"></a>00096 <span class="keywordflow">if</span> (this->use_syslog)
116
<a name="l00097"></a>00097 openlog(this->program_name.c_str(), LOG_PID|LOG_NDELAY, LOG_AUTHPRIV);
117
<a name="l00098"></a>00098
118
<a name="l00099"></a>00099 <span class="keywordtype">int</span> status = <a class="code" href="classschroot__base_1_1main.html#e252e6014964a24c7290b9c0378c1310" title="Run the program.">run_impl</a>();
119
<a name="l00100"></a>00100
120
<a name="l00101"></a>00101 closelog();
121
<a name="l00102"></a>00102
122
<a name="l00103"></a>00103 <span class="keywordflow">return</span> status;
123
<a name="l00104"></a>00104 }
124
<a name="l00105"></a>00105 <span class="keywordflow">catch</span> (std::exception <span class="keyword">const</span>& e)
125
<a name="l00106"></a>00106 {
126
<a name="l00107"></a>00107 <a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/namespacesbuild.html#fb5f819f244e5c27be632b6243c7b82a">sbuild::log_exception_error</a>(e);
127
<a name="l00108"></a>00108
128
<a name="l00109"></a>00109 <span class="keywordflow">try</span>
129
<a name="l00110"></a>00110 {
130
<a name="l00111"></a>00111 <span class="keyword">dynamic_cast<</span>boost::program_options::error const&<span class="keyword">></span>(e);
131
<a name="l00112"></a>00112 <a class="codeRef" doxygen="sbuild.tag:/tmp/sb/schroot/doc/sbuild/html/" href="/tmp/sb/schroot/doc/sbuild/html/namespacesbuild.html#4b668d467f8c9c6063cd2c9c7aaf3086">sbuild::log_info</a>()
132
<a name="l00113"></a>00113 <span class="comment">// TRANSLATORS: %1% = program name</span>
133
<a name="l00114"></a>00114 << format(_(<span class="stringliteral">"Run \"%1% --help\" to list usage example and all available options"</span>))
134
<a name="l00115"></a>00115 % argv[0]
135
<a name="l00116"></a>00116 << endl;
136
<a name="l00117"></a>00117 }
137
<a name="l00118"></a>00118 <span class="keywordflow">catch</span> (std::bad_cast <span class="keyword">const</span>& discard)
138
<a name="l00119"></a>00119 {
139
<a name="l00120"></a>00120 }
140
<a name="l00121"></a>00121
141
<a name="l00122"></a>00122 <span class="keywordflow">if</span> (this->use_syslog)
142
<a name="l00123"></a>00123 closelog();
143
<a name="l00124"></a>00124
144
<a name="l00125"></a>00125 <span class="keywordflow">return</span> EXIT_FAILURE;
145
<a name="l00126"></a>00126 }
146
<a name="l00127"></a>00127 }
147
</pre></div><hr size="1"><address style="text-align: right;"><small>Generated on Mon Jan 21 00:38:28 2008 for schroot by
155
148
<a href="http://www.doxygen.org/index.html">
156
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.2 </small></address>
149
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.4 </small></address>