Merging r38364 through r38389 from trunk into soc-2011-tomato
[blender.git] / extern / libmv / CMakeLists.txt
1 # $Id$
2 # ***** BEGIN GPL LICENSE BLOCK *****
3 #
4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software Foundation,
16 # Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
17 #
18 # The Original Code is Copyright (C) 2011, Blender Foundation
19 # All rights reserved.
20 #
21 # Contributor(s): Blender Foundation,
22 #                 Sergey Sharybin
23 #
24 # ***** END GPL LICENSE BLOCK *****
25
26 set(INC
27         .
28         ../Eigen3
29         ./third_party/ssba
30         ./third_party/ldl/Include
31         ../colamd/Include
32 )
33
34 set(INC_SYS
35
36 )
37
38 set(SRC
39         libmv-capi.cpp
40         libmv/numeric/numeric.cc
41         libmv/numeric/poly.cc
42         libmv/numeric/tinyvector.cc
43         libmv/simple_pipeline/reconstruction.cc
44         libmv/simple_pipeline/resect.cc
45         libmv/simple_pipeline/intersect.cc
46         libmv/simple_pipeline/initialize_reconstruction.cc
47         libmv/simple_pipeline/camera_intrinsics.cc
48         libmv/simple_pipeline/pipeline.cc
49         libmv/simple_pipeline/tracks.cc
50         libmv/simple_pipeline/bundle.cc
51         libmv/image/convolve.cc
52         libmv/image/array_nd.cc
53         libmv/tracking/pyramid_region_tracker.cc
54         libmv/tracking/trklt_region_tracker.cc
55         libmv/tracking/klt_region_tracker.cc
56         libmv/tracking/retrack_region_tracker.cc
57         libmv/multiview/projection.cc
58         libmv/multiview/conditioning.cc
59         libmv/multiview/fundamental.cc
60         libmv/multiview/euclidean_resection.cc
61         libmv/multiview/triangulation.cc
62
63         third_party/ssba/Geometry/v3d_metricbundle.cpp
64         third_party/ssba/Math/v3d_optimization.cpp
65         third_party/gflags/gflags.cc
66         third_party/gflags/gflags_reporting.cc
67         third_party/gflags/gflags_completions.cc
68         third_party/ldl/Source/ldl.c
69
70         libmv-capi.h
71         libmv/logging/logging.h
72         libmv/numeric/dogleg.h
73         libmv/numeric/levenberg_marquardt.h
74         libmv/numeric/poly.h
75         libmv/numeric/function_derivative.h
76         libmv/numeric/numeric.h
77         libmv/simple_pipeline/resect.h
78         libmv/simple_pipeline/reconstruction.h
79         libmv/simple_pipeline/camera_intrinsics.h
80         libmv/simple_pipeline/tracks.h
81         libmv/simple_pipeline/pipeline.h
82         libmv/simple_pipeline/intersect.h
83         libmv/simple_pipeline/bundle.h
84         libmv/simple_pipeline/initialize_reconstruction.h
85         libmv/image/convolve.h
86         libmv/image/tuple.h
87         libmv/image/array_nd.h
88         libmv/image/sample.h
89         libmv/image/image.h
90         libmv/tracking/region_tracker.h
91         libmv/tracking/retrack_region_tracker.h
92         libmv/tracking/pyramid_region_tracker.h
93         libmv/tracking/trklt_region_tracker.h
94         libmv/tracking/klt_region_tracker.h
95         libmv/base/id_generator.h
96         libmv/base/vector.h
97         libmv/base/scoped_ptr.h
98         libmv/base/vector_utils.h
99         libmv/multiview/nviewtriangulation.h
100         libmv/multiview/resection.h
101         libmv/multiview/euclidean_resection.h
102         libmv/multiview/triangulation.h
103         libmv/multiview/projection.h
104         libmv/multiview/fundamental.h
105         libmv/multiview/conditioning.h
106
107         third_party/ssba/Geometry/v3d_metricbundle.h
108         third_party/ssba/Geometry/v3d_cameramatrix.h
109         third_party/ssba/Geometry/v3d_distortion.h
110         third_party/ssba/Math/v3d_linear_utils.h
111         third_party/ssba/Math/v3d_optimization.h
112         third_party/ssba/Math/v3d_mathutilities.h
113         third_party/ssba/Math/v3d_linear.h
114         third_party/gflags/gflags_completions.h
115         third_party/gflags/mutex.h
116         third_party/gflags/config.h
117         third_party/gflags/gflags.h
118         third_party/ldl/Include/ldl.h
119         third_party/msinttypes/stdint.h
120         third_party/msinttypes/inttypes.h
121 )
122
123 IF(WIN32)
124         list(APPEND SRC
125                 third_party/glog/src/logging.cc
126                 third_party/glog/src/raw_logging.cc
127                 third_party/glog/src/utilities.cc
128                 third_party/glog/src/vlog_is_on.cc
129                 third_party/glog/src/windows/port.cc
130
131                 third_party/glog/src/utilities.h
132                 third_party/glog/src/stacktrace_generic-inl.h
133                 third_party/glog/src/stacktrace.h
134                 third_party/glog/src/stacktrace_x86_64-inl.h
135                 third_party/glog/src/base/googleinit.h
136                 third_party/glog/src/base/mutex.h
137                 third_party/glog/src/base/commandlineflags.h
138                 third_party/glog/src/stacktrace_powerpc-inl.h
139                 third_party/glog/src/stacktrace_x86-inl.h
140                 third_party/glog/src/config.h
141                 third_party/glog/src/stacktrace_libunwind-inl.h
142                 third_party/glog/src/windows/glog/raw_logging.h
143                 third_party/glog/src/windows/glog/vlog_is_on.h
144                 third_party/glog/src/windows/glog/logging.h
145                 third_party/glog/src/windows/glog/log_severity.h
146                 third_party/glog/src/windows/port.h
147                 third_party/glog/src/windows/config.h
148         )
149
150         list(APPEND INC
151                 ./third_party/glog/src/windows
152                 ./third_party/msinttypes
153         )
154 ELSE(WIN32)
155         list(APPEND SRC
156                 third_party/glog/src/utilities.cc
157                 third_party/glog/src/symbolize.cc
158                 third_party/glog/src/vlog_is_on.cc
159                 third_party/glog/src/signalhandler.cc
160                 third_party/glog/src/logging.cc
161                 third_party/glog/src/demangle.cc
162                 third_party/glog/src/raw_logging.cc
163
164                 third_party/glog/src/utilities.h
165                 third_party/glog/src/stacktrace_generic-inl.h
166                 third_party/glog/src/config_mac.h
167                 third_party/glog/src/stacktrace.h
168                 third_party/glog/src/stacktrace_x86_64-inl.h
169                 third_party/glog/src/symbolize.h
170                 third_party/glog/src/base/googleinit.h
171                 third_party/glog/src/base/mutex.h
172                 third_party/glog/src/base/commandlineflags.h
173                 third_party/glog/src/stacktrace_powerpc-inl.h
174                 third_party/glog/src/stacktrace_x86-inl.h
175                 third_party/glog/src/config.h
176                 third_party/glog/src/demangle.h
177                 third_party/glog/src/stacktrace_libunwind-inl.h
178                 third_party/glog/src/glog/raw_logging.h
179                 third_party/glog/src/glog/vlog_is_on.h
180                 third_party/glog/src/glog/logging.h
181                 third_party/glog/src/glog/log_severity.h
182                 third_party/glog/src/config_linux.h
183         )
184
185         list(APPEND INC
186                 ./third_party/glog/src
187         )
188 ENDIF(WIN32)
189
190 add_definitions(-DV3DLIB_ENABLE_SUITESPARSE -DGOOGLE_GLOG_DLL_DECL=)
191
192 blender_add_lib(extern_libmv "${SRC}" "${INC}" "${INC_SYS}")