Libmv: Update to latest upstream version
[blender-staging.git] / intern / cycles / blender / blender_logging.cpp
1 /*
2  * Copyright 2011-2014 Blender Foundation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #include "CCL_api.h"
18
19 #include <stdio.h>
20
21 #include "util_logging.h"
22
23 #ifdef _MSC_VER
24 #  define snprintf _snprintf
25 #endif
26
27 void CCL_init_logging(const char *argv0)
28 {
29 #ifdef WITH_CYCLES_LOGGING
30         /* Make it so FATAL messages are always print into console. */
31         char severity_fatal[32];
32         snprintf(severity_fatal, sizeof(severity_fatal), "%d",
33                  google::GLOG_FATAL);
34
35         google::InitGoogleLogging(argv0);
36         gflags::SetCommandLineOption("logtostderr", "1");
37         gflags::SetCommandLineOption("v", "0");
38         gflags::SetCommandLineOption("stderrthreshold", severity_fatal);
39         gflags::SetCommandLineOption("minloglevel", severity_fatal);
40 #else
41         (void) argv0;
42 #endif
43 }
44
45 void CCL_start_debug_logging(void)
46 {
47 #ifdef WITH_CYCLES_LOGGING
48         gflags::SetCommandLineOption("logtostderr", "1");
49         gflags::SetCommandLineOption("v", "2");
50         gflags::SetCommandLineOption("stderrthreshold", "1");
51         gflags::SetCommandLineOption("minloglevel", "0");
52 #endif
53 }
54
55 void CCL_logging_verbosity_set(int verbosity)
56 {
57 #ifdef WITH_CYCLES_LOGGING
58         char val[10];
59         snprintf(val, sizeof(val), "%d", verbosity);
60
61         gflags::SetCommandLineOption("v", val);
62 #else
63         (void) verbosity;
64 #endif
65 }