diff --git a/CMakeLists.txt b/CMakeLists.txt index 59598a67a..e5f19f33a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors) +# Copyright (C) 2010-2014 (see AUTHORS file for a list of contributors) # # This file is part of GNSS-SDR. # @@ -535,23 +535,34 @@ if(NOT ARMADILLO_FOUND) message (STATUS " Armadillo has not been found.") message (STATUS " Armadillo will be downloaded and built automatically ") message (STATUS " when doing 'make'. ") - set(armadillo_RELEASE 3.930.2) - set(armadillo_MD5 "eef486a0fdde9a23b1067e9c57f146e4") + set(armadillo_RELEASE 4.000.0) + set(armadillo_MD5 "3110e2030ebf61ac61ba0d0423816790") if(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/download/armadillo-${armadillo_RELEASE}/armadillo-${armadillo_RELEASE}.tar.gz) set(ARMADILLO_PATCH_FILE ${CMAKE_CURRENT_BINARY_DIR}/armadillo-${armadillo_RELEASE}/armadillo_no.patch) file(WRITE ${ARMADILLO_PATCH_FILE} "") else(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/download/armadillo-${armadillo_RELEASE}/armadillo-${armadillo_RELEASE}.tar.gz) set(ARMADILLO_PATCH_FILE ${CMAKE_CURRENT_BINARY_DIR}/armadillo-${armadillo_RELEASE}/armadillo_staticlib.patch) + set(ARMADILLO_PATCH_FILE2 ${CMAKE_CURRENT_BINARY_DIR}/armadillo-${armadillo_RELEASE}/armadillo_enable_lapack.patch) file(WRITE ${ARMADILLO_PATCH_FILE} -"35c35 -< set(ARMA_USE_WRAPPER true ) +"30c30 +< set(ARMA_USE_LAPACK false) +--- +> set(ARMA_USE_LAPACK true) +36c36 +< set(ARMA_USE_WRAPPER true ) --- > set(ARMA_USE_WRAPPER false) -343c343 -< add_library( armadillo SHARED src/wrapper ) +318c318 +< add_library( armadillo SHARED \${PROJECT_SOURCE_DIR}/src/wrapper.cpp ) --- -> add_library( armadillo STATIC src/wrapper ) -") +> add_library( armadillo STATIC \${PROJECT_SOURCE_DIR}/src/wrapper.cpp ) +") + file(WRITE ${ARMADILLO_PATCH_FILE2} +"12c12 +< // #define ARMA_USE_LAPACK +--- +> #define ARMA_USE_LAPACK +") endif(EXISTS ${CMAKE_CURRENT_BINARY_DIR}/download/armadillo-${armadillo_RELEASE}/armadillo-${armadillo_RELEASE}.tar.gz) # Check if the patch command is available (does not come by default on Fedora or openSUSE) find_program(PATCH_EXECUTABLE NAME patch PATHS ENV PATH) @@ -573,7 +584,7 @@ if(NOT ARMADILLO_FOUND) URL http://sourceforge.net/projects/arma/files/armadillo-${armadillo_RELEASE}.tar.gz DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}/download/armadillo-${armadillo_RELEASE} URL_MD5 ${armadillo_MD5} - PATCH_COMMAND patch -N /CMakeLists.txt ${ARMADILLO_PATCH_FILE} + PATCH_COMMAND patch -N /CMakeLists.txt ${ARMADILLO_PATCH_FILE} && patch -N /include/armadillo_bits/config.hpp ${ARMADILLO_PATCH_FILE2} BUILD_IN_SOURCE 1 BUILD_COMMAND make UPDATE_COMMAND "" @@ -584,7 +595,7 @@ if(NOT ARMADILLO_FOUND) set(ARMADILLO_INCLUDE_DIRS ${binary_dir}/include ) find_library(lapack NAMES lapack HINTS /usr/lib /usr/local/lib /usr/lib64) find_library(blas NAMES blas HINTS /usr/lib /usr/local/lib /usr/lib64) - set(ARMADILLO_LIBRARIES ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}armadillo.a ${lapack} ${blas} gfortran) + set(ARMADILLO_LIBRARIES ${lapack} ${blas} gfortran ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}armadillo.a) set(LOCAL_ARMADILLO true) # Save a copy at the thirdparty folder file(COPY ${CMAKE_CURRENT_BINARY_DIR}/armadillo-${armadillo_RELEASE} diff --git a/README b/README index c2ff0d4c0..a34a23303 100644 --- a/README +++ b/README @@ -5,7 +5,7 @@ This document describes how to set up the compilation environment and build GNSS GNU/Linux ----------------------------------------------------------- -Tested distributions: Ubuntu 12.04, 12.10, 13.04 and 13.10 (32 and 64 bits), Debian 6.0.6 and 7.2, Fedora 18, 10 and 20 (newer versions should work, too) +Tested distributions: Ubuntu 12.04, 12.10, 13.04 and 13.10 (32 and 64 bits), Debian 6.0.6 and 7.2, Fedora 18, 10 and 20 and openSUSE 13.1 (newer versions should work, too) * Install GNU Radio: @@ -23,7 +23,7 @@ You can safely accept the default options but for prefix. We recommend to put /u gituser = username prefix = /usr/local satisfy_order = deb,src # For Debian/Ubuntu/LinuxMint -satisfy_order = rpm,src # For Fedora/CentOS/RHEL +satisfy_order = rpm,src # For Fedora/CentOS/RHEL/openSUSE forcepkgs = timeout = 30 cmakebuildtype = RelWithDebInfo @@ -43,10 +43,11 @@ In case you do not want to use PyBOMBS and prefer to build and install GNU Radio $ sudo apt-get install libblas-dev liblapack-dev gfortran # For Debian/Ubuntu/LinuxMint $ sudo yum install lapack-devel blas-devel gcc-fortran # For Fedora/CentOS/RHEL +$ sudo zypper install lapack-devel blas-devel gcc-fortran # For OpenSUSE -$ wget http://sourceforge.net/projects/arma/files/armadillo-3.930.2.tar.gz -$ tar xvfz armadillo-3.930.2.tar.gz -$ cd armadillo-3.930.2 +$ wget http://sourceforge.net/projects/arma/files/armadillo-4.000.0.tar.gz +$ tar xvfz armadillo-4.000.0.tar.gz +$ cd armadillo-4.000.0 $ cmake . $ make $ sudo make install diff --git a/docs/doxygen/other/reference_docs.dox b/docs/doxygen/other/reference_docs.dox index 8883ca630..1622b3e79 100644 --- a/docs/doxygen/other/reference_docs.dox +++ b/docs/doxygen/other/reference_docs.dox @@ -49,9 +49,10 @@ to use the future Galileo system and what they can expect in terms of performanc \subsection beidou BeiDou Official webpage at beidou.gov.cn -\li BeiDou Navigation Satellite System Signal In Space Interface Control Document -Open Service Signal B1I (Version 1.0). China Satellite Navigation Office, December 2012. +\li BeiDou Navigation Satellite System Signal In Space Interface Control Document. +Open Service Signal (Version 2.0). China Satellite Navigation Office, December 2013. +\li BeiDou Navigation Satellite System Open Service Performance Standard. (Version 1.0). China Satellite Navigation Office, December 2013. \subsection sbas Satellite Based Augmentation Systems (SBAS)