From 985aeeb9c480a1a32213ed4e8a80fe4a66a271bf Mon Sep 17 00:00:00 2001 From: Alex Cunningham Date: Thu, 16 Jun 2011 19:55:45 +0000 Subject: [PATCH] Moved ccolamd build script into general 3rdparty script --- configure.ac | 3 --- gtsam/3rdparty/Makefile.am | 28 +++++++++++++++++++++++----- gtsam/3rdparty/ccolamd/Makefile.am | 27 --------------------------- gtsam/Makefile.am | 2 +- gtsam/inference/Makefile.am | 2 +- gtsam/linear/Makefile.am | 2 +- gtsam/nonlinear/Makefile.am | 2 +- gtsam/slam/Makefile.am | 2 +- 8 files changed, 28 insertions(+), 40 deletions(-) delete mode 100644 gtsam/3rdparty/ccolamd/Makefile.am diff --git a/configure.ac b/configure.ac index a70938a7e..168546e3c 100644 --- a/configure.ac +++ b/configure.ac @@ -15,9 +15,7 @@ AC_CONFIG_SRCDIR([gtsam/nonlinear/NonlinearOptimizer.cpp]) AC_CONFIG_SRCDIR([gtsam/slam/pose2SLAM.cpp]) AC_CONFIG_SRCDIR([tests/testTupleValues.cpp]) AC_CONFIG_SRCDIR([examples/SimpleRotation.cpp]) - AC_CONFIG_SRCDIR([gtsam/3rdparty/Makefile.am]) -AC_CONFIG_SRCDIR([gtsam/3rdparty/ccolamd/Makefile.am]) # Check for OS AC_CANONICAL_HOST # needs to be called at some point earlier @@ -115,7 +113,6 @@ AX_BOOST_BASE([1.40]) #AC_SUBST([boost]) AC_CONFIG_FILES([CppUnitLite/Makefile \ -gtsam/3rdparty/ccolamd/Makefile \ gtsam/3rdparty/Makefile \ gtsam/base/Makefile \ gtsam/geometry/Makefile \ diff --git a/gtsam/3rdparty/Makefile.am b/gtsam/3rdparty/Makefile.am index 37e70e877..1cff3779e 100644 --- a/gtsam/3rdparty/Makefile.am +++ b/gtsam/3rdparty/Makefile.am @@ -1,16 +1,34 @@ # 3rd Party libraries to be built and installed along with gtsam -# All the sub-directories that need to be built -SUBDIRS = ccolamd - -# And the corresponding libraries produced -SUBLIBS = ccolamd/libccolamd.la +# use nostdinc to turn off -I. and -I.., we do not need them because +# header files are qualified so they can be included in external projects. +AUTOMAKE_OPTIONS = nostdinc # set up the folders for includes 3rdpartydir = $(pkgincludedir)/3rdparty 3rdparty_includedir = $(includedir)/gtsam/3rdparty nobase_3rdparty_HEADERS = +# CCOLAMD (with UFconfig files included) +ccolamd_path = +ccolamd_path += ccolamd +headers = $(ccolamd_path)/ccolamd.h $(ccolamd_path)/UFconfig.h +sources = $(ccolamd_path)/ccolamd.c $(ccolamd_path)/ccolamd_global.c $(ccolamd_path)/UFconfig.c + +#---------------------------------------------------------------------------------------------------- +# Create a libtool library that is not installed +# It will be packaged in the toplevel libgtsam.la as specfied in ../Makefile.am +# The headers are installed in $(includedir)/gtsam/3rdparty: +#---------------------------------------------------------------------------------------------------- +nobase_3rdparty_HEADERS += $(headers) +noinst_LTLIBRARIES = libccolamd.la +libccolamd_la_SOURCES = $(sources) + +AM_CPPFLAGS = + +AM_CPPFLAGS += $(BOOST_CPPFLAGS) -I$(top_srcdir) +AM_LDFLAGS = $(BOOST_LDFLAGS) + # Eigen Installation - just copies the headers eigen_path = eigen_path += Eigen diff --git a/gtsam/3rdparty/ccolamd/Makefile.am b/gtsam/3rdparty/ccolamd/Makefile.am deleted file mode 100644 index 4110d5df9..000000000 --- a/gtsam/3rdparty/ccolamd/Makefile.am +++ /dev/null @@ -1,27 +0,0 @@ -#---------------------------------------------------------------------------------------------------- -# GTSAM 3rdparty: CCOLAMD -# Tim Davis' sparse library for column ordering - part of suitesparse -#---------------------------------------------------------------------------------------------------- - -# use nostdinc to turn off -I. and -I.., we do not need them because -# header files are qualified so they can be included in external projects. -AUTOMAKE_OPTIONS = nostdinc - -# CCOLAMD (with UFconfig files included) -headers = ccolamd.h UFconfig.h -sources = ccolamd.c ccolamd_global.c UFconfig.c - -#---------------------------------------------------------------------------------------------------- -# Create a libtool library that is not installed -# It will be packaged in the toplevel libgtsam.la as specfied in ../Makefile.am -# The headers are installed in $(includedir)/gtsam/3rdparty: -#---------------------------------------------------------------------------------------------------- -ccolamddir = $(pkgincludedir)/3rdparty/ccolamd -ccolamd_HEADERS = $(headers) -noinst_LTLIBRARIES = libccolamd.la -libccolamd_la_SOURCES = $(sources) - -AM_CPPFLAGS = - -AM_CPPFLAGS += $(BOOST_CPPFLAGS) -I$(top_srcdir) -AM_LDFLAGS = $(BOOST_LDFLAGS) diff --git a/gtsam/Makefile.am b/gtsam/Makefile.am index fffa6594f..1a09b5b63 100644 --- a/gtsam/Makefile.am +++ b/gtsam/Makefile.am @@ -3,7 +3,7 @@ SUBDIRS = 3rdparty base geometry inference linear nonlinear slam # And the corresponding libraries produced -SUBLIBS = 3rdparty/ccolamd/libccolamd.la base/libbase.la geometry/libgeometry.la \ +SUBLIBS = 3rdparty/libccolamd.la base/libbase.la geometry/libgeometry.la \ inference/libinference.la linear/liblinear.la nonlinear/libnonlinear.la \ slam/libslam.la diff --git a/gtsam/inference/Makefile.am b/gtsam/inference/Makefile.am index cc4016ad4..25dcad07b 100644 --- a/gtsam/inference/Makefile.am +++ b/gtsam/inference/Makefile.am @@ -62,7 +62,7 @@ AM_CXXFLAGS = #---------------------------------------------------------------------------------------------------- TESTS = $(check_PROGRAMS) AM_LDFLAGS += $(boost_serialization) -LDADD = libinference.la ../base/libbase.la ../3rdparty/ccolamd/libccolamd.la +LDADD = libinference.la ../base/libbase.la ../3rdparty/libccolamd.la LDADD += ../../CppUnitLite/libCppUnitLite.a AM_DEFAULT_SOURCE_EXT = .cpp diff --git a/gtsam/linear/Makefile.am b/gtsam/linear/Makefile.am index 448fc04f5..c29e03403 100644 --- a/gtsam/linear/Makefile.am +++ b/gtsam/linear/Makefile.am @@ -59,7 +59,7 @@ AM_CXXFLAGS = #---------------------------------------------------------------------------------------------------- TESTS = $(check_PROGRAMS) AM_LDFLAGS += $(boost_serialization) -LDADD = liblinear.la ../inference/libinference.la ../base/libbase.la ../3rdparty/ccolamd/libccolamd.la +LDADD = liblinear.la ../inference/libinference.la ../base/libbase.la ../3rdparty/libccolamd.la LDADD += ../../CppUnitLite/libCppUnitLite.a AM_DEFAULT_SOURCE_EXT = .cpp diff --git a/gtsam/nonlinear/Makefile.am b/gtsam/nonlinear/Makefile.am index 9bf1d820a..7e3919b0b 100644 --- a/gtsam/nonlinear/Makefile.am +++ b/gtsam/nonlinear/Makefile.am @@ -52,7 +52,7 @@ AM_CXXFLAGS = #---------------------------------------------------------------------------------------------------- TESTS = $(check_PROGRAMS) AM_LDFLAGS += $(boost_serialization) -LDADD = libnonlinear.la ../linear/liblinear.la ../inference/libinference.la ../base/libbase.la ../3rdparty/ccolamd/libccolamd.la +LDADD = libnonlinear.la ../linear/liblinear.la ../inference/libinference.la ../base/libbase.la ../3rdparty/libccolamd.la LDADD += ../../CppUnitLite/libCppUnitLite.a AM_DEFAULT_SOURCE_EXT = .cpp diff --git a/gtsam/slam/Makefile.am b/gtsam/slam/Makefile.am index b58686d70..48d2eb7f5 100644 --- a/gtsam/slam/Makefile.am +++ b/gtsam/slam/Makefile.am @@ -71,7 +71,7 @@ AM_LDFLAGS = $(BOOST_LDFLAGS) TESTS = $(check_PROGRAMS) AM_DEFAULT_SOURCE_EXT = .cpp AM_LDFLAGS += $(boost_serialization) -LDADD = libslam.la ../geometry/libgeometry.la ../nonlinear/libnonlinear.la ../linear/liblinear.la ../inference/libinference.la ../base/libbase.la ../3rdparty/ccolamd/libccolamd.la +LDADD = libslam.la ../geometry/libgeometry.la ../nonlinear/libnonlinear.la ../linear/liblinear.la ../inference/libinference.la ../base/libbase.la ../3rdparty/libccolamd.la LDADD += ../../CppUnitLite/libCppUnitLite.a # rule to run an executable