diff --git a/external/external_build.cmake b/external/external_build.cmake index c28c6db..8835789 100644 --- a/external/external_build.cmake +++ b/external/external_build.cmake @@ -22,28 +22,34 @@ SET(INTERNAL_QHULL ON) IF(INTERNAL_GENGETOPT) SET(GENGETOPT_URL "ftp://ftp.gnu.org/gnu/gengetopt/gengetopt-2.22.5.tar.gz" CACHE STRING "URL to download gengetopt from") + mark_as_advanced(GENGETOPT_URL) ENDIF(INTERNAL_GENGETOPT) IF(INTERNAL_HDF5) SET(HDF5_URL "http://www.hdfgroup.org/ftp/HDF5/current/src/hdf5-1.8.9.tar.gz" CACHE STRING "URL to download HDF5 from") + mark_as_advanced(HDF5_URL) ENDIF(INTERNAL_HDF5) IF(INTERNAL_NETCDF) SET(NETCDF_URL "http://www.unidata.ucar.edu/downloads/netcdf/ftp/netcdf-4.1.3.tar.gz" CACHE STRING "URL to download NetCDF from") + mark_as_advanced(NETCDF_URL) ENDIF(INTERNAL_NETCDF) IF(INTERNAL_BOOST) SET(BOOST_URL "http://sourceforge.net/projects/boost/files/boost/1.49.0/boost_1_49_0.tar.gz/download" CACHE STRING "URL to download Boost from") + mark_as_advanced(BOOST_URL) ELSE(INTERNAL_BOOST) find_package(Boost 1.49.0 COMPONENTS format spirit phoenix python FATAL_ERROR) ENDIF(INTERNAL_BOOST) IF(INTERNAL_GSL) SET(GSL_URL "ftp://ftp.gnu.org/gnu/gsl/gsl-1.15.tar.gz" CACHE STRING "URL to download GSL from ") + mark_as_advanced(GSL_URL) ENDIF(INTERNAL_GSL) IF(INTERNAL_QHULL) SET(QHULL_URL "http://www.qhull.org/download/qhull-2012.1-src.tgz" CACHE STRING "URL to download QHull from") + mark_as_advanced(QHULL_URL) ENDIF(INTERNAL_QHULL) @@ -72,10 +78,11 @@ if (INTERNAL_GENGETOPT) BUILD_IN_SOURCE 1 INSTALL_COMMAND make install ) - SET(GENGETOPT ${GENGETOPT_BIN_DIR}/bin/gengetopt) + SET(GENGETOPT ${GENGETOPT_BIN_DIR}/bin/gengetopt CACHE FILEPATH "Path GenGetOpt binary") else(INTERNAL_GENGETOPT) find_program(GENGETOPT gengetopt) endif(INTERNAL_GENGETOPT) +mark_as_advanced(GENGETOPT) ############### # Build HDF5 @@ -113,6 +120,7 @@ else(INTERNAL_HDF5) find_library(HDF5HL_LIBRARY hdf5_hl) endif (INTERNAL_HDF5) SET(CONFIGURE_CPP_FLAGS "${CONFIGURE_CPP_FLAGS} -I${HDF5_INCLUDE_PATH}") +mark_as_advanced(HDF5_INCLUDE_PATH HDF5_LIBRARY HDF5_CPP_LIBRARY HDF5HL_LIBRARY HDF5HL_CPP_LIBRARY) ############### # Build NetCDF @@ -154,6 +162,7 @@ ELSE(INTERNAL_NETCDF) SET(CONFIGURE_CPP_FLAGS ${CONFIGURE_CPP_FLAGS} -I${NETCDF_INCLUDE_PATH} -I${NETCDFCPP_INCLUDE_PATH}) endif (INTERNAL_NETCDF) +mark_as_advanced(NETCDF_LIBRARY NETCDFCPP_LIBRARY NETCDF_INCLUDE_PATH NETCDFCPP_INCLUDE_PATH) ################## # Build BOOST @@ -171,8 +180,9 @@ if (INTERNAL_BOOST) INSTALL_COMMAND echo "No install" ) set(Boost_INCLUDE_DIRS ${BOOST_SOURCE_DIR} CACHE STRING "Boost path" FORCE) - set(Boost_LIBRARIES ${BOOST_SOURCE_DIR}/stage/lib/libboost_python.a) + set(Boost_LIBRARIES ${BOOST_SOURCE_DIR}/stage/lib/libboost_python.a CACHE STRING "Boost libraries" FORCE) endif (INTERNAL_BOOST) +mark_as_advanced(Boost_INCLUDE_DIRS Boost_LIBRARIES) ################## # Build GSl @@ -201,6 +211,7 @@ ELSE(INTERNAL_GSL) find_library(GSLCBLAS_LIBRARY gslcblas) find_path(GSL_INCLUDE_PATH NAMES gsl/gsl_blas.h) ENDIF(INTERNAL_GSL) +mark_as_advanced(GSL_LIBRARY GSLCBLAS_LIBRARY GSL_INCLUDE_PATH) ################## # Build CosmoTool @@ -242,8 +253,9 @@ ExternalProject_Add(cfitsio BUILD_IN_SOURCE 1 INSTALL_COMMAND make install ) -SET(CFITSIO_LIBRARY ${CMAKE_BINARY_DIR}/ext_build/cfitsio/lib/libcfitsio.a) -SET(CFITSIO_INCLUDE_PATH ${CMAKE_BINARY_DIR}/ext_build/cfitsio/include) +SET(CFITSIO_PREFIX ${CMAKE_BINARY_DIR}/ext_build/cfitsio) +SET(CFITSIO_LIBRARY ${CFITSIO_PREFIX}/lib/libcfitsio.a) +SET(CFITSIO_INCLUDE_PATH ${CFITSIO_PREFIX}/include) ################# # Build Healpix @@ -298,6 +310,7 @@ if (INTERNAL_QHULL) add_definitions(-Dqh_QHpointer) else(INTERNAL_QHULL) + message(FATAL_ERROR "Only packaged QHull is supported") endif(INTERNAL_QHULL) SET(QHULL_LIBRARIES ${QHULL_CPP_LIBRARY} ${QHULL_LIBRARY} ) diff --git a/external/external_python_build.cmake b/external/external_python_build.cmake index d934e17..6e78b42 100644 --- a/external/external_python_build.cmake +++ b/external/external_python_build.cmake @@ -3,7 +3,13 @@ INCLUDE(FindPythonInterp) SET(INTERNAL_NETCDF4_PYTHON ON) SET(INTERNAL_CYTHON ON) SET(INTERNAL_HEALPY ON) -SET(INTERNAL_ARGPARSE ON) + +IF (PYTHON_VERSION_STRING VERSION_LESS 2.7) + MESSAGE(STATUS "Python version is less than 2.7, argparse is needed.") + SET(INTERNAL_ARGPARSE ON) +ELSE (PYTHON_VERSION_STRING VERSION_LESS 2.7) + MESSAGE(STATUS "Python version is greater than 2.7, argparse is already bundled.") +ENDIF (PYTHON_VERSION_STRING VERSION_LESS 2.7) IF(INTERNAL_CYTHON) SET(CYTHON_URL "http://cython.org/release/Cython-0.17.1.tar.gz" CACHE STRING "URL to download Cython from") @@ -91,6 +97,7 @@ IF(INTERNAL_HEALPY) "-DPYTHON_CPPFLAGS:STRING=${PYTHON_CPPFLAGS}" "-DCFITSIO_EXT_LIB=${CFITSIO_LIBRARY}" "-DCFITSIO_EXT_INC=${CFITSIO_INCLUDE_PATH}" + "-DCFITSIO_EXT_PREFIX=${CFITSIO_PREFIX}" "-DNETCDF4_DIR=${NETCDF_BIN_DIR}" "-DPYTHON_LDFLAGS:STRING=${PYTHON_LDFLAGS}" "-DPYTHON_LOCAL_SITE_PACKAGE=${PYTHON_LOCAL_SITE_PACKAGE}" diff --git a/external/python_build.cmake b/external/python_build.cmake index ca9970e..b834e9b 100644 --- a/external/python_build.cmake +++ b/external/python_build.cmake @@ -6,6 +6,7 @@ SET(ENV{VOID_GSL} ${VOID_GSL}) SET(ENV{PYTHONPATH} ${PYTHON_LOCAL_SITE_PACKAGE}:$ENV{PYTHONPATH}) SET(ENV{CFITSIO_EXT_INC} ${CFITSIO_EXT_INC}) SET(ENV{CFITSIO_EXT_LIB} ${CFITSIO_EXT_LIB}) +SET(ENV{CFITSIO_EXT_PREFIX} ${CFITSIO_EXT_PREFIX}) SET(PYTHON_BUILD_COMMAND ${PYTHON_EXECUTABLE} setup.py build) MESSAGE(STATUS "Running ${PYTHON_BUILD_COMMAND}") diff --git a/external/python_install.cmake b/external/python_install.cmake index e33e377..ee04a3c 100644 --- a/external/python_install.cmake +++ b/external/python_install.cmake @@ -4,6 +4,7 @@ SET(ENV{CPPFLAGS} ${PYTHON_CPPFLAGS}) SET(ENV{LDFLAGS} ${PYTHON_LDFLAGS}) SET(ENV{VOID_GSL} ${VOID_GSL}) SET(ENV{CFITSIO_EXT_INC} ${CFITSIO_EXT_INC}) +SET(ENV{CFITSIO_EXT_PREFIX} ${CFITSIO_EXT_PREFIX}) SET(ENV{CFITSIO_EXT_LIB} ${CFITSIO_EXT_LIB}) SET(ENV{PYTHONPATH} ${PYTHON_LOCAL_SITE_PACKAGE}:$ENV{PYTHONPATH})