| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | # the install destination
 | 
					
						
							|  |  |  |  | includedir = ${prefix}/include/gtsam | 
					
						
							|  |  |  |  | libdir = ${exec_prefix}/lib | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | # library version
 | 
					
						
							|  |  |  |  | current = 0  # The most recent interface number that this library implements.  | 
					
						
							|  |  |  |  | revision = 0 # The implementation number of the current interface  | 
					
						
							|  |  |  |  | age = 0 # The difference between the newest and oldest interfaces that	\ | 
					
						
							|  |  |  |  | this library implements. In other words, the library implements all	\ | 
					
						
							|  |  |  |  | the interface numbers in the range from number current - age to		\ | 
					
						
							|  |  |  |  | current. | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | # from libtool manual:
 | 
					
						
							|  |  |  |  | # Here are a set of rules to help you update your library version information:
 | 
					
						
							|  |  |  |  | #   Start with version information of ‘0:0:0’ for each libtool library.
 | 
					
						
							|  |  |  |  | #   - Update the version information only immediately before a public
 | 
					
						
							|  |  |  |  | #   release of your software.
 | 
					
						
							|  |  |  |  | #   - If the library source code has changed at all since the last
 | 
					
						
							|  |  |  |  | #   update, then increment revision
 | 
					
						
							|  |  |  |  | #   - If any interfaces have been added, removed, or changed since the
 | 
					
						
							|  |  |  |  | #   last update, increment current, and set revision to 0.
 | 
					
						
							|  |  |  |  | #   - If any interfaces have been added since the last public release,
 | 
					
						
							|  |  |  |  | #   then increment age.
 | 
					
						
							|  |  |  |  | #   - If any interfaces have been removed since the last public release,
 | 
					
						
							|  |  |  |  | #   then set age to 0.
 | 
					
						
							|  |  |  |  | version = $(current):$(revision):$(age) | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | # we specify the library in levels
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | # basic Math
 | 
					
						
							| 
									
										
										
										
											2010-01-11 02:23:47 +08:00
										 |  |  |  | sources = Vector.cpp svdcmp.cpp Matrix.cpp  | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | check_PROGRAMS = testVector testMatrix  | 
					
						
							|  |  |  |  | testVector_SOURCES = testVector.cpp | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testVector_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | testMatrix_SOURCES = testMatrix.cpp | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testMatrix_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | # GTSAM basics
 | 
					
						
							|  |  |  |  | # The header files will be installed in ~/include/gtsam
 | 
					
						
							| 
									
										
										
										
											2010-01-16 12:22:41 +08:00
										 |  |  |  | headers = gtsam.h Value.h Testable.h Factor.h Conditional.h  | 
					
						
							| 
									
										
										
										
											2010-01-22 10:27:26 +08:00
										 |  |  |  | headers += Ordering.h IndexTable.h numericalDerivative.h | 
					
						
							| 
									
										
										
										
											2010-02-17 11:29:12 +08:00
										 |  |  |  | headers += BTree.h | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | sources += Ordering.cpp smallExample.cpp  | 
					
						
							| 
									
										
										
										
											2010-02-17 11:29:12 +08:00
										 |  |  |  | check_PROGRAMS += testOrdering testBTree | 
					
						
							|  |  |  |  | testOrdering_SOURCES = testOrdering.cpp | 
					
						
							|  |  |  |  | testOrdering_LDADD   = libgtsam.la | 
					
						
							|  |  |  |  | testBTree_SOURCES    = testBTree.cpp | 
					
						
							|  |  |  |  | testBTree_LDADD		   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-12-11 09:38:45 +08:00
										 |  |  |  | # Symbolic Inference
 | 
					
						
							|  |  |  |  | headers += SymbolicConditional.h | 
					
						
							|  |  |  |  | sources += SymbolicFactor.cpp SymbolicFactorGraph.cpp SymbolicBayesNet.cpp | 
					
						
							|  |  |  |  | check_PROGRAMS += testSymbolicFactor testSymbolicFactorGraph testSymbolicBayesNet   | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testSymbolicFactor_SOURCES      = testSymbolicFactor.cpp | 
					
						
							| 
									
										
										
										
											2009-12-11 09:38:45 +08:00
										 |  |  |  | testSymbolicFactor_LDADD        = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testSymbolicFactorGraph_SOURCES = testSymbolicFactorGraph.cpp | 
					
						
							| 
									
										
										
										
											2009-12-11 09:38:45 +08:00
										 |  |  |  | testSymbolicFactorGraph_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testSymbolicBayesNet_SOURCES    = testSymbolicBayesNet.cpp | 
					
						
							| 
									
										
										
										
											2009-12-11 09:38:45 +08:00
										 |  |  |  | testSymbolicBayesNet_LDADD      = libgtsam.la | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | # Inference
 | 
					
						
							|  |  |  |  | headers += inference.h inference-inl.h | 
					
						
							| 
									
										
											  
											
												Large gtsam refactoring
To support faster development *and* better performance Richard and I pushed through a large refactoring of NonlinearFactors.
The following are the biggest changes:
1) NonLinearFactor1 and NonLinearFactor2 are now templated on Config, Key type, and X type, where X is the argument to the measurement function.
2) The measurement itself is no longer kept in the nonlinear factor. Instead, a derived class (see testVSLAMFactor, testNonlinearEquality, testPose3Factor etc...) has to implement a function to compute the errors, "evaluateErrors". Instead of (h(x)-z), it needs to return (z-h(x)), so Ax-b is an approximation of the error. IMPORTANT: evaluateErrors needs - if asked - *combine* the calculation of the function value h(x) and the derivatives dh(x)/dx. This was a major performance issue. To do this, boost::optional<Matrix&> arguments are provided, and tin EvaluateErrors you just  says something like
	if (H) *H = Matrix_(3,6,....);
3) We are no longer using int or strings for nonlinear factors. Instead, the preferred key type is now Symbol, defined in Key.h. This is both fast and cool: you can construct it from an int, and cast it to a strong. It also does type checking: a Symbol<Pose3,'x'> will not match a Symbol<Pose2,'x'>
4) minor: take a look at LieConfig.h: it help you avoid writing a lot of code bu automatically creating configs for a certain type. See e.g. Pose3Config.h. A "double" LieConfig is on the way - Thanks Richard and Manohar !
											
										 
											2010-01-14 06:25:03 +08:00
										 |  |  |  | headers += graph.h graph-inl.h | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | headers += FactorGraph.h FactorGraph-inl.h | 
					
						
							| 
									
										
										
										
											2009-12-10 03:39:25 +08:00
										 |  |  |  | headers += BayesNet.h BayesNet-inl.h | 
					
						
							| 
									
										
										
										
											2009-12-28 07:15:36 +08:00
										 |  |  |  | headers += BayesTree.h BayesTree-inl.h | 
					
						
							|  |  |  |  | headers += ISAM.h ISAM-inl.h GaussianISAM.h | 
					
						
							| 
									
										
										
										
											2009-12-29 13:57:05 +08:00
										 |  |  |  | headers += ISAM2.h ISAM2-inl.h GaussianISAM2.h | 
					
						
							|  |  |  |  | sources += GaussianISAM.cpp GaussianISAM2.cpp | 
					
						
							| 
									
										
										
										
											2010-01-13 00:12:25 +08:00
										 |  |  |  | check_PROGRAMS += testGraph testFactorgraph testInference testOrdering | 
					
						
							| 
									
										
										
										
											2009-12-29 13:57:05 +08:00
										 |  |  |  | check_PROGRAMS += testBayesTree testISAM testGaussianISAM testGaussianISAM2 | 
					
						
							| 
									
										
										
										
											2010-01-13 00:12:25 +08:00
										 |  |  |  | testGraph_SOURCES              = testGraph.cpp | 
					
						
							|  |  |  |  | testGraph_LDADD                = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testFactorgraph_SOURCES        = testFactorgraph.cpp | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testInference_SOURCES          = testInference.cpp | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testFactorgraph_LDADD          = libgtsam.la | 
					
						
							|  |  |  |  | testInference_LDADD            = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testBayesTree_SOURCES          = testBayesTree.cpp | 
					
						
							| 
									
										
										
										
											2009-12-28 07:15:36 +08:00
										 |  |  |  | testBayesTree_LDADD            = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testGaussianISAM_SOURCES       = testGaussianISAM.cpp | 
					
						
							| 
									
										
										
										
											2009-12-28 07:15:36 +08:00
										 |  |  |  | testGaussianISAM_LDADD         = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testGaussianISAM2_SOURCES      = testGaussianISAM2.cpp | 
					
						
							| 
									
										
										
										
											2009-12-29 13:57:05 +08:00
										 |  |  |  | testGaussianISAM2_LDADD        = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testISAM_SOURCES               = testISAM.cpp | 
					
						
							| 
									
										
										
										
											2009-12-28 07:15:36 +08:00
										 |  |  |  | testISAM_LDADD                 = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-12-07 05:46:46 +08:00
										 |  |  |  | # Binary Inference
 | 
					
						
							|  |  |  |  | headers += BinaryConditional.h | 
					
						
							|  |  |  |  | check_PROGRAMS += testBinaryBayesNet | 
					
						
							|  |  |  |  | testBinaryBayesNet_SOURCES    = testBinaryBayesNet.cpp | 
					
						
							|  |  |  |  | testBinaryBayesNet_LDADD      = libgtsam.la  | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | # Gaussian inference 
 | 
					
						
							| 
									
										
										
										
											2010-02-17 11:29:12 +08:00
										 |  |  |  | headers += GaussianFactorSet.h SharedGaussian.h SharedDiagonal.h VectorConfig.h | 
					
						
							| 
									
										
										
										
											2010-02-21 08:01:43 +08:00
										 |  |  |  | sources += NoiseModel.cpp Errors.cpp VectorMap.cpp VectorBTree.cpp GaussianFactor.cpp  | 
					
						
							|  |  |  |  | sources += GaussianFactorGraph.cpp GaussianConditional.cpp GaussianBayesNet.cpp | 
					
						
							|  |  |  |  | check_PROGRAMS += testVectorMap testVectorBTree testGaussianFactor testGaussianFactorGraph  | 
					
						
							|  |  |  |  | check_PROGRAMS += testGaussianConditional testGaussianBayesNet testNoiseModel testErrors | 
					
						
							| 
									
										
										
										
											2010-02-17 11:29:12 +08:00
										 |  |  |  | testVectorMap_SOURCES           = testVectorMap.cpp | 
					
						
							|  |  |  |  | testVectorMap_LDADD             = libgtsam.la | 
					
						
							|  |  |  |  | testVectorBTree_SOURCES         = testVectorBTree.cpp | 
					
						
							|  |  |  |  | testVectorBTree_LDADD           = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testGaussianFactor_SOURCES      = testGaussianFactor.cpp | 
					
						
							| 
									
										
										
										
											2009-12-28 17:44:30 +08:00
										 |  |  |  | testGaussianFactor_LDADD        = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testGaussianFactorGraph_SOURCES = testGaussianFactorGraph.cpp | 
					
						
							| 
									
										
										
										
											2009-12-28 17:44:30 +08:00
										 |  |  |  | testGaussianFactorGraph_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testGaussianConditional_SOURCES = testGaussianConditional.cpp | 
					
						
							| 
									
										
										
										
											2009-11-13 00:41:18 +08:00
										 |  |  |  | testGaussianConditional_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testGaussianBayesNet_SOURCES    = testGaussianBayesNet.cpp | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testGaussianBayesNet_LDADD      = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-17 02:39:39 +08:00
										 |  |  |  | testNoiseModel_SOURCES          = testNoiseModel.cpp | 
					
						
							|  |  |  |  | testNoiseModel_LDADD            = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-02-21 08:01:43 +08:00
										 |  |  |  | testErrors_SOURCES              = testErrors.cpp | 
					
						
							|  |  |  |  | testErrors_LDADD                = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-12-31 20:56:47 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | # Iterative Methods
 | 
					
						
							| 
									
										
										
										
											2010-01-18 13:51:19 +08:00
										 |  |  |  | headers += iterative-inl.h SubgraphPreconditioner-inl.h | 
					
						
							| 
									
										
										
										
											2010-01-03 04:24:59 +08:00
										 |  |  |  | sources += iterative.cpp BayesNetPreconditioner.cpp SubgraphPreconditioner.cpp | 
					
						
							| 
									
										
										
										
											2009-12-31 20:56:47 +08:00
										 |  |  |  | check_PROGRAMS += testIterative testBayesNetPreconditioner testSubgraphPreconditioner | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testIterative_SOURCES              = testIterative.cpp | 
					
						
							| 
									
										
										
										
											2009-12-31 20:56:47 +08:00
										 |  |  |  | testIterative_LDADD                = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testBayesNetPreconditioner_SOURCES = testBayesNetPreconditioner.cpp | 
					
						
							| 
									
										
										
										
											2009-12-31 20:56:47 +08:00
										 |  |  |  | testBayesNetPreconditioner_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testSubgraphPreconditioner_SOURCES = testSubgraphPreconditioner.cpp | 
					
						
							| 
									
										
										
										
											2009-12-31 20:56:47 +08:00
										 |  |  |  | testSubgraphPreconditioner_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | # Nonlinear inference 
 | 
					
						
							| 
									
										
										
										
											2010-01-22 12:41:40 +08:00
										 |  |  |  | headers += Key.h SymbolMap.h NonlinearFactorGraph.h NonlinearFactorGraph-inl.h | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | headers += NonlinearOptimizer.h NonlinearOptimizer-inl.h  | 
					
						
							| 
									
										
										
										
											2010-01-14 23:31:58 +08:00
										 |  |  |  | headers += NonlinearFactor.h | 
					
						
							| 
									
										
										
										
											2010-01-19 00:18:02 +08:00
										 |  |  |  | check_PROGRAMS += testNonlinearFactor testNonlinearFactorGraph testNonlinearOptimizer testKey | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testNonlinearFactor_SOURCES      = testNonlinearFactor.cpp | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testNonlinearFactor_LDADD        = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testNonlinearFactorGraph_SOURCES = testNonlinearFactorGraph.cpp | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testNonlinearFactorGraph_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testNonlinearOptimizer_SOURCES   = testNonlinearOptimizer.cpp | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | testNonlinearOptimizer_LDADD     = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 00:18:02 +08:00
										 |  |  |  | testKey_SOURCES   				 = testKey.cpp | 
					
						
							|  |  |  |  | testKey_LDADD     				 = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-12-18 09:24:28 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | # Nonlinear constraints 
 | 
					
						
							|  |  |  |  | headers += NonlinearConstraint.h NonlinearConstraint-inl.h | 
					
						
							|  |  |  |  | headers += NonlinearEquality.h | 
					
						
							| 
									
										
										
										
											2010-01-19 13:33:44 +08:00
										 |  |  |  | check_PROGRAMS += testNonlinearConstraint testNonlinearEquality  | 
					
						
							| 
									
										
										
										
											2009-12-18 09:24:28 +08:00
										 |  |  |  | testNonlinearConstraint_SOURCES = testNonlinearConstraint.cpp | 
					
						
							|  |  |  |  | testNonlinearConstraint_LDADD   = libgtsam.la | 
					
						
							|  |  |  |  | testNonlinearEquality_SOURCES   = testNonlinearEquality.cpp | 
					
						
							|  |  |  |  | testNonlinearEquality_LDADD     = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 13:33:44 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | # SQP
 | 
					
						
							| 
									
										
										
										
											2010-02-06 22:48:46 +08:00
										 |  |  |  | check_PROGRAMS += testSQP  | 
					
						
							| 
									
										
										
										
											2010-01-19 13:33:44 +08:00
										 |  |  |  | testSQP_SOURCES                 = $(example) testSQP.cpp | 
					
						
							| 
									
										
										
										
											2009-12-18 09:24:28 +08:00
										 |  |  |  | testSQP_LDADD                   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | # geometry
 | 
					
						
							| 
									
										
										
										
											2010-01-10 07:15:06 +08:00
										 |  |  |  | headers += Lie.h Lie-inl.h | 
					
						
							| 
									
										
										
										
											2009-12-10 05:50:27 +08:00
										 |  |  |  | sources += Point2.cpp Rot2.cpp Pose2.cpp Point3.cpp Rot3.cpp Pose3.cpp Cal3_S2.cpp | 
					
						
							| 
									
										
										
										
											2010-01-14 10:58:29 +08:00
										 |  |  |  | check_PROGRAMS += testPoint2 testRot2 testPose2 testPoint3 testRot3 testPose3 testCal3_S2 testLieConfig testTupleConfig | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | testPoint2_SOURCES  = testPoint2.cpp | 
					
						
							| 
									
										
										
										
											2009-12-10 05:50:27 +08:00
										 |  |  |  | testRot2_SOURCES    = testRot2.cpp | 
					
						
							| 
									
										
										
										
											2009-08-29 09:24:26 +08:00
										 |  |  |  | testPose2_SOURCES   = testPose2.cpp | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | testPoint3_SOURCES  = testPoint3.cpp | 
					
						
							|  |  |  |  | testRot3_SOURCES    = testRot3.cpp | 
					
						
							|  |  |  |  | testPose3_SOURCES   = testPose3.cpp | 
					
						
							| 
									
										
										
										
											2010-01-10 14:35:16 +08:00
										 |  |  |  | testCal3_S2_SOURCES = testCal3_S2.cpp | 
					
						
							|  |  |  |  | testLieConfig_SOURCES = testLieConfig.cpp                | 
					
						
							| 
									
										
										
										
											2010-01-14 10:58:29 +08:00
										 |  |  |  | testTupleConfig_SOURCES = testTupleConfig.cpp                | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | testPoint2_LDADD    = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-12-10 05:50:27 +08:00
										 |  |  |  | testRot2_LDADD      = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-08-29 09:24:26 +08:00
										 |  |  |  | testPose2_LDADD     = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | testPoint3_LDADD    = libgtsam.la | 
					
						
							|  |  |  |  | testRot3_LDADD      = libgtsam.la | 
					
						
							|  |  |  |  | testPose3_LDADD     = libgtsam.la | 
					
						
							|  |  |  |  | testCal3_S2_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-10 14:35:16 +08:00
										 |  |  |  | testLieConfig_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-14 10:58:29 +08:00
										 |  |  |  | testTupleConfig_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | # simulated2D example
 | 
					
						
							| 
									
										
										
										
											2010-02-23 13:06:16 +08:00
										 |  |  |  | headers += Simulated2DConfig.h  | 
					
						
							|  |  |  |  | headers += Simulated2DPosePrior.h Simulated2DPointPrior.h  | 
					
						
							|  |  |  |  | headers += Simulated2DOdometry.h Simulated2DMeasurement.h | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | sources += simulated2D.cpp  | 
					
						
							|  |  |  |  | testSimulated2D_SOURCES = testSimulated2D.cpp | 
					
						
							|  |  |  |  | testSimulated2D_LDADD = libgtsam.la | 
					
						
							|  |  |  |  | check_PROGRAMS += testSimulated2D  | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | # simulated3D example
 | 
					
						
							|  |  |  |  | sources += Simulated3D.cpp  | 
					
						
							|  |  |  |  | testSimulated3D_SOURCES = testSimulated3D.cpp | 
					
						
							|  |  |  |  | testSimulated3D_LDADD = libgtsam.la | 
					
						
							|  |  |  |  | check_PROGRAMS += testSimulated3D  | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-11 02:37:55 +08:00
										 |  |  |  | # Pose SLAM headers
 | 
					
						
							| 
									
										
										
										
											2010-01-17 02:01:16 +08:00
										 |  |  |  | headers += BetweenFactor.h PriorFactor.h  | 
					
						
							|  |  |  |  | headers += LieConfig.h LieConfig-inl.h TupleConfig.h TupleConfig-inl.h | 
					
						
							| 
									
										
										
										
											2010-01-11 02:37:55 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-17 02:01:16 +08:00
										 |  |  |  | # 2D Pose SLAM
 | 
					
						
							| 
									
										
										
										
											2010-01-23 08:57:54 +08:00
										 |  |  |  | headers +=   | 
					
						
							| 
									
										
										
										
											2010-01-25 22:50:25 +08:00
										 |  |  |  | sources += pose2SLAM.cpp Pose2SLAMOptimizer.cpp dataset.cpp | 
					
						
							| 
									
										
										
										
											2010-01-17 02:01:16 +08:00
										 |  |  |  | check_PROGRAMS += testPose2Factor testPose2Config testPose2SLAM testPose2Prior | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPose2Prior_SOURCES  = testPose2Prior.cpp | 
					
						
							| 
									
										
										
										
											2010-01-17 02:01:16 +08:00
										 |  |  |  | testPose2Prior_LDADD    = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPose2Factor_SOURCES = testPose2Factor.cpp | 
					
						
							| 
									
										
										
										
											2009-12-18 09:24:28 +08:00
										 |  |  |  | testPose2Factor_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPose2Config_SOURCES = testPose2Config.cpp | 
					
						
							| 
									
										
										
										
											2010-01-10 23:46:18 +08:00
										 |  |  |  | testPose2Config_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPose2SLAM_SOURCES  = testPose2SLAM.cpp | 
					
						
							| 
									
										
										
										
											2010-01-17 02:01:16 +08:00
										 |  |  |  | testPose2SLAM_LDADD    = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-11 02:21:20 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-16 09:16:59 +08:00
										 |  |  |  | # 2D SLAM using Bearing and Range
 | 
					
						
							|  |  |  |  | headers +=    | 
					
						
							|  |  |  |  | sources += planarSLAM.cpp | 
					
						
							|  |  |  |  | check_PROGRAMS += testPlanarSLAM | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPlanarSLAM_SOURCES = testPlanarSLAM.cpp | 
					
						
							| 
									
										
										
										
											2010-01-16 09:16:59 +08:00
										 |  |  |  | testPlanarSLAM_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-12 10:10:42 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-11 02:21:20 +08:00
										 |  |  |  | # 3D Pose constraints
 | 
					
						
							| 
									
										
										
										
											2010-01-17 03:37:17 +08:00
										 |  |  |  | headers +=    | 
					
						
							|  |  |  |  | sources += pose3SLAM.cpp  | 
					
						
							|  |  |  |  | check_PROGRAMS += testPose3Factor testPose3Config testPose3SLAM  | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPose3Factor_SOURCES = testPose3Factor.cpp | 
					
						
							| 
									
										
										
										
											2009-12-18 09:24:28 +08:00
										 |  |  |  | testPose3Factor_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPose3Config_SOURCES = testPose3Config.cpp | 
					
						
							| 
									
										
										
										
											2010-01-11 02:21:20 +08:00
										 |  |  |  | testPose3Config_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-19 03:11:22 +08:00
										 |  |  |  | testPose3SLAM_SOURCES  = testPose3SLAM.cpp | 
					
						
							| 
									
										
										
										
											2010-01-17 03:37:17 +08:00
										 |  |  |  | testPose3SLAM_LDADD    = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-12-18 09:24:28 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | # Cameras
 | 
					
						
							|  |  |  |  | sources += CalibratedCamera.cpp SimpleCamera.cpp | 
					
						
							|  |  |  |  | check_PROGRAMS += testCalibratedCamera testSimpleCamera | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | testCalibratedCamera_SOURCES = testCalibratedCamera.cpp | 
					
						
							|  |  |  |  | testCalibratedCamera_LDADD = libgtsam.la | 
					
						
							|  |  |  |  | testSimpleCamera_SOURCES = testSimpleCamera.cpp | 
					
						
							|  |  |  |  | testSimpleCamera_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-14 15:26:10 +08:00
										 |  |  |  | # Tensors
 | 
					
						
							| 
									
										
										
										
											2010-02-16 04:25:38 +08:00
										 |  |  |  | headers += tensors.h Tensor1.h Tensor2.h Tensor3.h Tensor4.h Tensor5.h | 
					
						
							| 
									
										
										
										
											2010-02-14 15:26:10 +08:00
										 |  |  |  | headers += Tensor1Expression.h Tensor2Expression.h Tensor3Expression.h Tensor5Expression.h | 
					
						
							|  |  |  |  | headers += projectiveGeometry.h tensorInterface.h  | 
					
						
							|  |  |  |  | sources += projectiveGeometry.cpp tensorInterface.cpp | 
					
						
							| 
									
										
										
										
											2010-02-16 07:45:53 +08:00
										 |  |  |  | check_PROGRAMS += testTensors testHomography2 testTrifocal | 
					
						
							| 
									
										
										
										
											2010-02-14 15:26:10 +08:00
										 |  |  |  | testHomography2_SOURCES = testHomography2.cpp | 
					
						
							|  |  |  |  | testHomography2_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-02-16 04:25:38 +08:00
										 |  |  |  | testTensors_SOURCES = testTensors.cpp | 
					
						
							|  |  |  |  | testTensors_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-02-16 07:45:53 +08:00
										 |  |  |  | testTrifocal_SOURCES = testTrifocal.cpp | 
					
						
							|  |  |  |  | testTrifocal_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-02-14 15:26:10 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-12 12:54:31 +08:00
										 |  |  |  | # Visual SLAM
 | 
					
						
							| 
									
										
										
										
											2010-01-16 09:16:59 +08:00
										 |  |  |  | sources += visualSLAM.cpp | 
					
						
							| 
									
										
										
										
											2009-11-24 23:12:59 +08:00
										 |  |  |  | check_PROGRAMS += testVSLAMFactor testVSLAMGraph testVSLAMConfig | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | testVSLAMFactor_SOURCES = testVSLAMFactor.cpp | 
					
						
							|  |  |  |  | testVSLAMFactor_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-11-13 02:55:03 +08:00
										 |  |  |  | testVSLAMGraph_SOURCES = testVSLAMGraph.cpp | 
					
						
							|  |  |  |  | testVSLAMGraph_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-11-24 23:12:59 +08:00
										 |  |  |  | testVSLAMConfig_SOURCES = testVSLAMConfig.cpp | 
					
						
							|  |  |  |  | testVSLAMConfig_LDADD = libgtsam.la | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-09-09 12:43:04 +08:00
										 |  |  |  | headers += $(sources:.cpp=.h) | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-16 12:46:35 +08:00
										 |  |  |  | # Timing tests
 | 
					
						
							| 
									
										
										
										
											2010-01-29 21:57:45 +08:00
										 |  |  |  | noinst_PROGRAMS = timeGaussianFactor timeGaussianFactorGraph timeRot3 timeMatrix timeSymbolMaps timeVectorConfig | 
					
						
							| 
									
										
										
										
											2010-01-16 12:46:35 +08:00
										 |  |  |  | timeRot3_SOURCES = timeRot3.cpp | 
					
						
							| 
									
										
										
										
											2010-01-29 21:57:45 +08:00
										 |  |  |  | timeRot3_LDADD   = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-16 12:46:35 +08:00
										 |  |  |  | timeGaussianFactor_SOURCES = timeGaussianFactor.cpp | 
					
						
							| 
									
										
										
										
											2010-01-29 21:57:45 +08:00
										 |  |  |  | timeGaussianFactor_LDADD   = libgtsam.la  | 
					
						
							| 
									
										
										
										
											2010-01-16 12:46:35 +08:00
										 |  |  |  | timeGaussianFactorGraph_SOURCES = timeGaussianFactorGraph.cpp | 
					
						
							| 
									
										
										
										
											2010-01-29 21:57:45 +08:00
										 |  |  |  | timeGaussianFactorGraph_LDADD   = libgtsam.la | 
					
						
							|  |  |  |  | timeMatrix_SOURCES 			 = timeMatrix.cpp  | 
					
						
							|  |  |  |  | timeMatrix_LDADD 			   = libgtsam.la | 
					
						
							|  |  |  |  | timeSymbolMaps_SOURCES   = timeSymbolMaps.cpp | 
					
						
							|  |  |  |  | timeSymbolMaps_LDADD     = libgtsam.la | 
					
						
							|  |  |  |  | timeVectorConfig_SOURCES = timeVectorConfig.cpp  | 
					
						
							|  |  |  |  | timeVectorConfig_LDADD 	 = libgtsam.la | 
					
						
							| 
									
										
										
										
											2010-01-16 12:46:35 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | # create both dynamic and static libraries
 | 
					
						
							|  |  |  |  | AM_CXXFLAGS = -I$(boost) -fPIC | 
					
						
							|  |  |  |  | lib_LTLIBRARIES = libgtsam.la | 
					
						
							|  |  |  |  | libgtsam_la_SOURCES = $(sources) | 
					
						
							|  |  |  |  | libgtsam_la_CPPFLAGS = $(AM_CXXFLAGS) | 
					
						
							|  |  |  |  | libgtsam_la_LDFLAGS = -version-info $(version) -L../colamd -lcolamd #-lboost_serialization-mt | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-09-03 23:15:20 +08:00
										 |  |  |  | # enable debug if --enable-debug is set in configure
 | 
					
						
							|  |  |  |  | if DEBUG | 
					
						
							| 
									
										
										
										
											2010-01-27 13:15:52 +08:00
										 |  |  |  | AM_CXXFLAGS += -g | 
					
						
							| 
									
										
										
										
											2009-09-03 23:15:20 +08:00
										 |  |  |  | endif | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | # install the header files
 | 
					
						
							|  |  |  |  | include_HEADERS = $(headers) | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | AM_CXXFLAGS += -I..  | 
					
						
							|  |  |  |  | AM_LDFLAGS = -L../CppUnitLite -lCppUnitLite $(BOOST_LDFLAGS) $(boost_serialization) #-L. -lgtsam | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-25 02:12:48 +08:00
										 |  |  |  | # TESTING: adding cblas implementation with atlas
 | 
					
						
							|  |  |  |  | #AM_CXXFLAGS += -DCBLAS 
 | 
					
						
							|  |  |  |  | #libgtsam_la_CPPFLAGS += -DCBLAS
 | 
					
						
							|  |  |  |  | #AM_LDFLAGS += -lcblas -latlas 
 | 
					
						
							|  |  |  |  | #libgtsam_la_LDFLAGS += -lcblas -latlas
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-21 09:03:34 +08:00
										 |  |  |  | #######################
 | 
					
						
							|  |  |  |  | # GSL/ATLAS inclusion
 | 
					
						
							|  |  |  |  | #######################
 | 
					
						
							| 
									
										
										
										
											2010-01-27 13:15:52 +08:00
										 |  |  |  | #GSL using ATLAS
 | 
					
						
							|  |  |  |  | if GSL | 
					
						
							|  |  |  |  | AM_CXXFLAGS += -DGSL $(GSL_CFLAGS) | 
					
						
							|  |  |  |  | libgtsam_la_CPPFLAGS += -DGSL $(GSL_CFLAGS) | 
					
						
							|  |  |  |  | if ATLAS | 
					
						
							| 
									
										
										
										
											2010-02-01 02:26:18 +08:00
										 |  |  |  | AM_LDFLAGS += $(GSL_LIBS_NO_CBLAS) -lcblas -latlas  | 
					
						
							|  |  |  |  | libgtsam_la_LDFLAGS += $(GSL_LIBS_NO_CBLAS) -lcblas -latlas | 
					
						
							| 
									
										
										
										
											2010-01-27 13:15:52 +08:00
										 |  |  |  | else  | 
					
						
							| 
									
										
										
										
											2010-02-01 02:26:18 +08:00
										 |  |  |  | AM_LDFLAGS += $(GSL_LIBS)  | 
					
						
							|  |  |  |  | libgtsam_la_LDFLAGS += $(GSL_LIBS)  | 
					
						
							| 
									
										
										
										
											2010-01-27 13:15:52 +08:00
										 |  |  |  | endif | 
					
						
							|  |  |  |  | endif | 
					
						
							| 
									
										
										
										
											2010-01-21 08:59:33 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | TESTS = $(check_PROGRAMS) | 
					
						
							| 
									
										
										
										
											2009-09-01 11:32:11 +08:00
										 |  |  |  | CXXLINK = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \
 | 
					
						
							|  |  |  |  | 	$(CXXLD) -g $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
 | 
					
						
							| 
									
										
										
										
											2009-09-01 11:45:37 +08:00
										 |  |  |  | 	-o $@ # CXXLINK is only used for unit tests | 
					
						
							| 
									
										
										
										
											2009-08-22 06:23:24 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | # rule to run an executable
 | 
					
						
							|  |  |  |  | %.run: % libgtsam.la | 
					
						
							|  |  |  |  | 	./$^ | 
					
						
							| 
									
										
										
										
											2010-01-25 22:50:25 +08:00
										 |  |  |  | 	 |