Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
138 commits
Select commit Hold shift + click to select a range
b638ba4
Standardize variable names and versions numbering used in CMake build…
Mar 30, 2015
c1e07a5
Add ext binaries to the list of targets in the gpstkTargets file.
Mar 30, 2015
dc1a3c7
Rework PythonSetup.cmake to import Python config through either syste…
Apr 21, 2015
17324bc
Remove extra python configurationfrom swig/CMakeLists.txt and ensure …
Apr 21, 2015
fc68a80
Adding EngAlmanac Test
May 13, 2015
d256ff4
Corrected binary sv id for subframe 4 page 25 which prevented the pag…
May 15, 2015
f8d5ae1
Refactored the get method tests
May 15, 2015
c318f72
Rename 'small' and 'big' variables to avoid conflict with Qt when bui…
May 15, 2015
638e6e6
Finishing EngAlmanac_T
May 18, 2015
d454d33
Minor fixes to EngAlmanac test, DN test now passes
May 19, 2015
ea420d9
Initial commit of ObsRngDev Test
May 20, 2015
c354c9a
Generated all the data necessary to construct the ORDS, but need new …
May 20, 2015
e6cb631
Successfully generated ObsRngDev objects, completed basic test
May 21, 2015
7443381
Successfully created one IonoModel object using EngAlmanac, but too m…
May 21, 2015
b78bc21
Factoring tests into fail counters, 91 tests count as one
May 21, 2015
59dba5a
SVNumXRef updates
May 22, 2015
8b9cd3e
Decided to remove the RinexObs dependencies and generate Ords by hand
May 22, 2015
e369513
Added flag to PackedNavBits - Fully backward compatible
May 23, 2015
8d67c16
Refactoring
May 25, 2015
fed47d0
Added calculation testing for every instance of ObsRngDev
May 26, 2015
67bfec1
Resetting a library file that was editted for testing
May 26, 2015
212e630
Fixed the way that floats are compared in ObsRngDev_T
May 26, 2015
4e23b56
Extending OrbElem class hierarchy to cover GLONASS
Jun 8, 2015
c7a6432
fix bug introduced in previous commit
Jun 10, 2015
27c8dcc
Update to CommonTime_T comments.
Jun 10, 2015
a3b9c74
Updating SVNumXRef
Jun 11, 2015
a3a0dc7
add leap second
Jun 18, 2015
1c0e7e4
Adding isSameData() method to OrbElemBase
Jun 20, 2015
17d1057
Refactor OrbElemStore classes for greater commonality
Jun 23, 2015
d20b956
Adding receiver ID option to PackedNavBits
Jun 24, 2015
a99a88c
Add sparse matrix package to Geomatics, add diagDopy to Matrix, small…
Jun 26, 2015
5721c51
Polymorphic behavior requires pointers.
Jun 26, 2015
9f393f3
fixes for windows
Jun 29, 2015
c7f2188
fix for windows
Jun 29, 2015
a51760b
fix for windows
Jun 29, 2015
4a1138e
Fix to addPackedBit( ) method.
Jun 29, 2015
0299872
small change to increase efficiency
Jun 29, 2015
44cdf5f
avoid duplicate file name
Jun 29, 2015
b129545
Standardize on "GPSTK" as the CMake project name.
Jun 29, 2015
96f948a
Missed a usage of projectConfig.cmake.in in the CMakeLists.txt file.
Jun 29, 2015
3f710c1
refine sparse matrix classes and add test program
Jul 1, 2015
82f81c2
remove until a windows version works
Jul 1, 2015
12d2978
Added test for zero input args to build.sh, and if found, call the us…
vestuto Jul 2, 2015
d4a93ff
Moved SVNumXRef from gpstk/ext/ to gpstk/core/ and added its test pro…
Jul 3, 2015
af94665
Ensure that SinexBlock contents are subclasses of Sinex::DataType.
Jul 9, 2015
698fbbe
Adding Rinex3Nav output options
Jul 13, 2015
28c30e4
Adding Sign & Mag capability to PackedNavBits
Jul 15, 2015
3b3e664
Adding OrbElemStore.getSatList()
Jul 15, 2015
fdafc00
Minor fixes to Matrix_SVD test (on the right branch this time)
Jul 15, 2015
21e52de
Updated SVNumXRef.cpp to include SVN72/PRN08 relationship and changed…
Jul 16, 2015
667c263
Added end date to SVN40/PRN10 in SVNumXRef.cpp
Jul 17, 2015
fb74d2d
Replaced CPPUNIT with TestUtil for ReferenceFrame_T
Jul 17, 2015
e291872
subtle bug arises when no reference position supplied
Jul 20, 2015
3c457a4
Add method to override fit interval limit
Jul 22, 2015
38240ec
Tweak boundary limits
Jul 22, 2015
49a2019
fix and rename strip() that respects quotes
Jul 23, 2015
d0d039f
fix test for splitWithQuotes
Jul 23, 2015
1bc86e7
handle repeated empty fields in splitWithQuotes
Jul 24, 2015
fd6db0c
Merging Rinex3ClockData
Jul 24, 2015
b5bc7dd
set firstObs TimeSytem to VERSION/TYPE if unset
Jul 27, 2015
b4c03d6
Updating Rinex3ClockData with the RinexClockData public members
Jul 27, 2015
a1643cb
fixed conditional statement
Jul 28, 2015
658b5bc
add header edit for REC #/TYPE/VERS and ANT #
Jul 29, 2015
2f0a1ae
Updates to force building gpstk/ext when the python bindings are built.
vestuto Jul 29, 2015
6a58385
Initial commit of Rinex3Obs_T and all depending test files
Jul 31, 2015
1c538d6
Commenting out modifier function in Rinex3ClockData that broke the build
Aug 1, 2015
544108c
Fixed error within the NumberHeaderRecordsToBeWritten
Aug 1, 2015
80bf0eb
Initial commit of Rinex3Nav_T and all dependent test files
Aug 3, 2015
13685b2
Reverting back to current GPSTk Rinex3Clock class for testing
Aug 3, 2015
e445063
Updated BINEX classes with latest MSN changes: typedefs, bugfixes, an…
Aug 3, 2015
24c869a
Initial commit of Rinex3Clock_T and all dependent test data files
Aug 3, 2015
2286120
Added GPSTK_ASSERT macro.
Aug 3, 2015
08a6da5
Added CommandOptionWithDecimalArg.
Aug 3, 2015
dc90de5
Minor changes to fix failing tests
Aug 4, 2015
460833b
Added Rinex version conversion tests to Rinex3Obs_T & Rinex3Nav_T
Aug 5, 2015
1230a27
Replaced hard-coded file seperator with a cross-platform call to getF…
Aug 6, 2015
2d805a0
Updated all RINEX tests to use a platform independent file seperator
Aug 7, 2015
103be0b
Minor fix to errors that broke the build
Aug 7, 2015
d844d99
Updates to comments for Python build configuration files.
vestuto Aug 7, 2015
03f9f91
Fixed PYTHON_VERSION variable names for custom python build config.
vestuto Aug 7, 2015
61e1467
Custom python build config changes
vestuto Aug 7, 2015
45d4d72
Added const versions of encodeVar and decodeVar; added some inline di…
Aug 7, 2015
9e0c645
Added back memory.h after accidentally removing it.
Aug 7, 2015
7542c62
Made getFitInterval static; added isValid and isDataSet.
Aug 10, 2015
479c1db
Removed broken arbitrary location encodeVar().
Aug 10, 2015
1b38bca
Update swig/CMakeLists.txt to use non-deprecated python paths.
Aug 10, 2015
22c93e8
Fixed bug introduced by changing int to size_t everywhere
Aug 11, 2015
d2edf16
Better diagnostics for the config mode
Aug 12, 2015
b1f4d66
SWIG, minor bug fix to doc.i created by CMake that caused a compiler …
vestuto Aug 13, 2015
3be62ff
CMake Python Config, python version changed to match that of the shar…
vestuto Aug 13, 2015
257c0c9
Code now compiles under solaris studio 12.4 with --std=c++11 option
Aug 14, 2015
35f975d
Add option to find millisecond clock adjusts
Aug 14, 2015
c573061
Removing test from CMakeFile that's not in the GPSTK repo
Aug 18, 2015
e0ffb8d
Added initial files for CDash support
Jun 18, 2015
7f7aba9
Letting the default C++ ABI be used by CC.
Aug 18, 2015
d956679
Fixing the test apps
Aug 21, 2015
c6e17a6
Added public accessors for ObsID.
Aug 21, 2015
763a6bb
Added CommandOptionNof.
Aug 24, 2015
29b2ca1
Added an index parameter to CommandOption::getOrder; changed 'order' …
Aug 24, 2015
21dc7e0
Removing depricated tests for the MSC class
Aug 25, 2015
e060b08
Added an edit method to IonoModelStore.
Aug 25, 2015
0e49571
Added utility methods to EngNav: sv2page(), sfpage2svid(), and zcount…
Aug 25, 2015
43fc00e
bug when string-without-trailer is shorter than trailer
Aug 26, 2015
535e33b
update and repair several things in RINEX tools
Aug 26, 2015
8c9dacf
not handling R ver.2 obs types correctly in warnings
Aug 26, 2015
8932ddc
another bug
Aug 26, 2015
db8b02c
Changes to support development of sgltk/apps/filetools/rnwcompare
Aug 27, 2015
9130c6c
Tweaks to Mac CDash scripts.
Aug 28, 2015
0b22ed9
Tweaking Linux and Solaris nightly CDash scripts.
Aug 28, 2015
dc400b2
Adding an overlooked modification
Aug 28, 2015
07b5a62
Added comparison operators for GPSWeekSecond to guide implicit type c…
Aug 31, 2015
3abd76b
Fix writing of marker number
Sep 3, 2015
3b85d9e
Updated SVNumXRef.cpp to include SVN36/PRN10 relationship.
Sep 9, 2015
675a334
add option to output in TEC units
Sep 15, 2015
db08124
Fixing missing comma in CNAV raw output
Sep 21, 2015
f2cc4ac
Fixing bugs found by clang
burundiocibu Sep 22, 2015
e1d3ab7
add some functionality
Sep 23, 2015
8945cb1
So we can ignore all build directotries...
Sep 23, 2015
51086c1
bugs in decimate (--TN) and delete sats (--DS)
Sep 25, 2015
5382505
bug fix in inverseUT() for 1x1 matrix, other small additions
Oct 1, 2015
ac5e31f
First cut at making complete out of tree build
Oct 9, 2015
1a2cf34
Now build through packages on Linux
Oct 9, 2015
e9a503f
Now builds and bundles on Darwin
Oct 9, 2015
45bc3fa
Fixed problem with finding hostname under solaris
Oct 9, 2015
c53d774
Still getting the hostname right on all platforms
Oct 12, 2015
955b49b
Tweak to dump() output format.
Oct 12, 2015
cfad4f8
Now can do a joint build with sgltk
Oct 13, 2015
b4f7e0a
Updated PRSolve and Rinex3 support to allow the user to specify P cod…
Oct 13, 2015
c7a0c1c
Added back some reporting on tests
Oct 14, 2015
e787d72
Making ctest work on multiple platforms.
Oct 14, 2015
5441273
Removing CDash scripts from the GPSTk repository.
Oct 15, 2015
cb23924
Spelling Tweaks in build.sh.
Oct 15, 2015
7cc5485
Fixing the var for the python executable. I really don't know how thi…
Oct 16, 2015
0ade534
Updated documents with new refactored build scripts and for RC27 rele…
Oct 16, 2015
07512e2
Fixing problem with building the python package.
Oct 16, 2015
f05841d
Minor tweak to setup.py.in to match new documentation name.
Oct 16, 2015
12c9eb1
Updating ChangeLog and News for RC2.7 Release.
Oct 16, 2015
b463a88
indlue dir changed to include/gpstk and exports are switched off
Feb 25, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Editor backup files:
*~
.*.swp
build/*
build*/

# Build output
*.o
Expand Down
File renamed without changes.
126 changes: 54 additions & 72 deletions BuildSetup.cmake
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@

if( DEBUG_SWITCH )
message( STATUS "DEBUG: Included CMake file BuildSetup.cmake" )
endif()

# gpstk/BuildSetup.cmake
#========================================
# Set Platform-Dependent Options
# Try to keep all the platform dependent
# options in this file
#========================================

#----------------------------------------
Expand All @@ -20,18 +17,20 @@ endif()
# Platform-dependent Compiler flags
#----------------------------------------
if( ${CMAKE_SYSTEM_NAME} MATCHES "SunOS" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -compat=5 -erroff=hidevf,wvarhidemem,badargtype2w" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -erroff=hidevf,wvarhidemem,badargtype2w" )
# add -DCMAKE_CXX_FLAGS=-std=c++03 or =-std=c++11 on the CMAKE invocation
set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -mt -shared" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Darwin" )
set( CMAKE_SHARED_LIBRARY_SUFFIX .dylib )
set( CMAKE_INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib" )
set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -shared" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Linux" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2" )
set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -shared" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Windows" )

else()
message( ERROR "ERROR: CMAKE_SYSTEM_NAME = ${CMAKE_SYSTEM_NAME}, not supported. Currently supported: Linux, Darwin, SunOS, " )
message( ERROR "CMAKE_SYSTEM_NAME = ${CMAKE_SYSTEM_NAME}, not supported. Currently supported: Linux, Darwin, SunOS, Windows" )
endif()

#----------------------------------------
Expand Down Expand Up @@ -76,97 +75,80 @@ endif( "${isSystemDir}" STREQUAL "-1" )


#----------------------------------------
# Debug Messages
#
# The CMake command-line tool, message( STATUS ) displays
# messages on stdout and all other message types on stderr.
#----------------------------------------

if( DEBUG_SWITCH )
message( STATUS "DEBUG: CMAKE_SYSTEM = ${CMAKE_SYSTEM}" ) # e.g., Linux-3.2.0
message( STATUS "DEBUG: CMAKE_SYSTEM_NAME = ${CMAKE_SYSTEM_NAME}" ) # e.g., Linux
message( STATUS "DEBUG: UNIX = ${UNIX}" ) # e.g., is the platform UNIX ?
message( STATUS "DEBUG: APPLE = ${APPLE}" ) # e.g., is the platform OSX?
message( STATUS "DEBUG: WIN32 = ${WIN32}" ) # e.g., is the platform Windows?
message( STATUS "DEBUG: MSVC11 = ${MSVC11}" ) # e.g., is the platform VisualStudio?
message( STATUS "DEBUG: MSVC12 = ${MSVC12}" ) # e.g., is the platform VisualStudio?
message( STATUS "DEBUG: CMAKE_COMMAND = ${CMAKE_COMMAND}" ) # e.g., /usr/bin/cmake
message( STATUS "DEBUG: CMAKE_VERSION = ${CMAKE_VERSION}" ) # e.g., 2.8.9
message( STATUS "DEBUG: CMAKE_BUILD_TOOL = ${CMAKE_BUILD_TOOL}" ) # e.g., /usr/bin/make
message( STATUS "DEBUG: STADYN = ${STADYN}" )
message( STATUS "DEBUG: CMAKE_COMPILER_IS_GNUCC = ${CMAKE_COMPILER_IS_GNUCC}" )
message( STATUS "DEBUG: CMAKE_CXX_FLAGS = ${CMAKE_CXX_FLAGS}" )
message( STATUS "DEBUG: CMAKE_SHARED_LINKER_FLAGS = ${CMAKE_SHARED_LINKER_FLAGS}" )
message( STATUS "DEBUG: CMAKE_SKIP_BUILD_RPATH = ${CMAKE_SKIP_BUILD_RPATH}" )
message( STATUS "DEBUG: CMAKE_INSTALL_RPATH = ${CMAKE_INSTALL_RPATH}" )
message( STATUS "DEBUG: CMAKE_BUILD_WITH_INSTALL_RPATH = ${CMAKE_BUILD_WITH_INSTALL_RPATH}" )
message( STATUS "DEBUG: CMAKE_INSTALL_RPATH_USE_LINK_PATH = ${CMAKE_INSTALL_RPATH_USE_LINK_PATH}" )
message( STATUS "DEBUG: CMAKE_CURRENT_LIST_DIR = ${CMAKE_CURRENT_LIST_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "DEBUG: CMAKE_CURRENT_LIST_FILE = ${CMAKE_CURRENT_LIST_FILE}" ) # e.g., $HOME/git/gpstk/CMakeLists.txt
message( STATUS "DEBUG: CMAKE_SOURCE_DIR = ${CMAKE_SOURCE_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "DEBUG: CMAKE_CURRENT_SOURCE_DIR = ${CMAKE_CURRENT_SOURCE_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "DEBUG: CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_BINARY_DIR}" ) # e.g., $HOME/git/gpstk/build
message( STATUS "DEBUG: PROJECT_NAME = ${PROJECT_NAME}" ) # e.g., gpstk
message( STATUS "DEBUG: PROJECT_BINARY_DIR = ${PROJECT_BINARY_DIR}" ) # e.g., $HOME/git/gpstk/build
message( STATUS "DEBUG: PROJECT_SOURCE_DIR = ${PROJECT_SOURCE_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "DEBUG: CMAKE_INSTALL_DIR = ${CMAKE_INSTALL_DIR}" ) # e.g., /usr
message( STATUS "DEBUG: CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX}" ) # e.g., $HOME/.local/gpstk
if( BUILD_PYTHON )
message( STATUS "DEBUG: PYTHON_INSTALL_PREFIX = ${PYTHON_INSTALL_PREFIX}" ) # e.g., $HOME/.local
endif()
if( DEBUG_SWITCH AND NOT DEBUG_VERBOSE )
message( STATUS "CMAKE_SYSTEM = ${CMAKE_SYSTEM}" ) # e.g., Linux-3.2.0
message( STATUS "CMAKE_SYSTEM_NAME = ${CMAKE_SYSTEM_NAME}" ) # e.g., Linux
message( STATUS "UNIX = ${UNIX}" ) # e.g., is the platform UNIX ?
message( STATUS "APPLE = ${APPLE}" ) # e.g., is the platform OSX?
message( STATUS "WIN32 = ${WIN32}" ) # e.g., is the platform Windows?
message( STATUS "MSVC11 = ${MSVC11}" ) # e.g., is the platform VisualStudio?
message( STATUS "MSVC12 = ${MSVC12}" ) # e.g., is the platform VisualStudio?
message( STATUS "CMAKE_COMMAND = ${CMAKE_COMMAND}" ) # e.g., /usr/bin/cmake
message( STATUS "CMAKE_VERSION = ${CMAKE_VERSION}" ) # e.g., 2.8.9
message( STATUS "CMAKE_BUILD_TOOL = ${CMAKE_BUILD_TOOL}" ) # e.g., /usr/bin/make
message( STATUS "STADYN = ${STADYN}" )
message( STATUS "CMAKE_COMPILER_IS_GNUCC = ${CMAKE_COMPILER_IS_GNUCC}" )
message( STATUS "CMAKE_CXX_FLAGS = ${CMAKE_CXX_FLAGS}" )
message( STATUS "CMAKE_SHARED_LINKER_FLAGS = ${CMAKE_SHARED_LINKER_FLAGS}" )
message( STATUS "CMAKE_SKIP_BUILD_RPATH = ${CMAKE_SKIP_BUILD_RPATH}" )
message( STATUS "CMAKE_INSTALL_RPATH = ${CMAKE_INSTALL_RPATH}" )
message( STATUS "CMAKE_BUILD_WITH_INSTALL_RPATH = ${CMAKE_BUILD_WITH_INSTALL_RPATH}" )
message( STATUS "CMAKE_INSTALL_RPATH_USE_LINK_PATH = ${CMAKE_INSTALL_RPATH_USE_LINK_PATH}" )
message( STATUS "CMAKE_CURRENT_LIST_DIR = ${CMAKE_CURRENT_LIST_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "CMAKE_CURRENT_LIST_FILE = ${CMAKE_CURRENT_LIST_FILE}" ) # e.g., $HOME/git/gpstk/CMakeLists.txt
message( STATUS "CMAKE_SOURCE_DIR = ${CMAKE_SOURCE_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "CMAKE_CURRENT_SOURCE_DIR = ${CMAKE_CURRENT_SOURCE_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_BINARY_DIR}" ) # e.g., $HOME/git/gpstk/build
message( STATUS "PROJECT_NAME = ${PROJECT_NAME}" ) # e.g., gpstk
message( STATUS "PROJECT_BINARY_DIR = ${PROJECT_BINARY_DIR}" ) # e.g., $HOME/git/gpstk/build
message( STATUS "PROJECT_SOURCE_DIR = ${PROJECT_SOURCE_DIR}" ) # e.g., $HOME/git/gpstk
message( STATUS "CMAKE_INSTALL_DIR = ${CMAKE_INSTALL_DIR}" ) # e.g., /usr
message( STATUS "CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX}" ) # e.g., $HOME/.local/gpstk
endif()

#----------------------------------------
# Debug Verbose: print all cmake variables
#----------------------------------------

if( DEBUG_VERBOSE )
get_cmake_property( _variableNames VARIABLES )
foreach( _variableName ${_variableNames} )
message( STATUS "---- DEBUG VERBOSE: ${_variableName} = ${${_variableName}}" )
message( STATUS "---- ${_variableName} = ${${_variableName}}" )
endforeach()
endif()

#----------------------------------------
# Get CMake vars into C++
#----------------------------------------

configure_file( "${PROJECT_SOURCE_DIR}/build_config.h.in" "${PROJECT_BINARY_DIR}/generated/build_config.h" )
include_directories( "${PROJECT_BINARY_DIR}/generated/" )
install( FILES "${PROJECT_BINARY_DIR}/generated/build_config.h" DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" )


#-----------------------------------------
# Build debs, tgz packages for binaries
# Usage: "$ make package"
#-----------------------------------------

#----------------------------------------
if( ${CMAKE_SYSTEM_NAME} MATCHES "SunOS" )
set( CPACK_GENERATOR "TGZ" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Darwin" )
set( CPACK_GENERATOR "TGZ" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Linux" )
set( CPACK_GENERATOR "DEB;TGZ" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Windows" )
set( CPACK_GENERATOR "ZIP" )
endif()

set( CPACK_PACKAGE_DESCRIPTION_SUMMARY "GPSTk libraries and applications for GNSS processing.")
set( CPACK_PACKAGE_VENDOR "ARL:UT SGL" )
set( CPACK_PACKAGE_CONTACT "Bryan Parsons" )
set( CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README.txt" )
set( CPACK_PACKAGE_VERSION_MAJOR "${gpstk_VERSION_MAJOR}" )
set( CPACK_PACKAGE_VERSION_MINOR "${gpstk_VERSION_MINOR}" )
set( CPACK_PACKAGE_VERSION_PATCH "${gpstk_VERSION_PATCH}" )
set( CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README.md" )
set( CPACK_PACKAGE_VERSION_MAJOR "${GPSTK_VERSION_MAJOR}" )
set( CPACK_PACKAGE_VERSION_MINOR "${GPSTK_VERSION_MINOR}" )
set( CPACK_PACKAGE_VERSION_PATCH "${GPSTK_VERSION_PATCH}" )
set( CPACK_INCLUDE_TOPLEVEL_DIRECTORY "OFF" )
set( CPACK_PACKAGE_INSTALL_DIRECTORY "gpstk")
set( CPACK_TOPLEVEL_TAG "gpstk" )

set( CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.13)" )
set( CPACK_DEBIAN_SECTION "stable" )
set( CPACK_DEBIAN_PACKAGE_SECTION "science" )

set( CPACK_GENERATOR "DEB;TGZ" )

#-----------------------------------------
# Build tgz packages for source release
# Usage: "$ make package_source"
#-----------------------------------------

set( CPACK_SOURCE_IGNORE_FILES "/build/")
set( CPACK_SOURCE_IGNORE_FILES "${PROJECT_BINARY_DIR}" "build-*/" "/.git" )
set( CPACK_SOURCE_GENERATOR "TGZ")

include( CPack )

#----------------------------------------
# The End
#----------------------------------------
93 changes: 40 additions & 53 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,41 +8,27 @@

cmake_minimum_required( VERSION 2.8.5 )

project( gpstk )
set( "${PROJECT_NAME}_VERSION_MAJOR" "2" )
set( "${PROJECT_NAME}_VERSION_MINOR" "6" )
set( "${PROJECT_NAME}_VERSION_PATCH" "0" )
project( GPSTK )
set( GPSTK_VERSION_MAJOR "2" )
set( GPSTK_VERSION_MINOR "7" )
set( GPSTK_VERSION_PATCH "0" )
set( GPSTK_VERSION "${GPSTK_VERSION_MAJOR}.${GPSTK_VERSION_MINOR}.${GPSTK_VERSION_PATCH}" )

#============================================================
# Set up
#============================================================

#----------------------------------------
# Determine Installation Path Prefix
# Path to which we will install the
# gpstk /lib, /bin, and /include dirs.
#----------------------------------------
# This sets up veriables contining GNU standard installation locations.
include( GNUInstallDirs )

if( DEFINED CMAKE_INSTALL_PREFIX )
message( STATUS "CMAKE_INSTALL_PREFIX was defined by user with the cmake command line. CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX}" )
elseif( DEFINED ENV{gpstk} )
set( CMAKE_INSTALL_PREFIX $ENV{gpstk} )
message( STATUS "CMAKE_INSTALL_PREFIX was defined the environment variable ENV{gpstk}. CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX} " )
else()
message( STATUS "CMAKE_INSTALL_PREFIX was not defined by any supported method." )
message( STATUS "Either set an environment variable ENV{gpstk} or pass in a cmake variable as -DCMAKE_INSTALL_PREFIX")
message( FATAL_ERROR "CMAKE_INSTALL_PREFIX must be set by the user. Exitting now!" )
return()
endif()
# For now, override to use 'lib' for the library install dir.
set( CMAKE_INSTALL_LIBDIR lib )

include( GNUInstallDirs )
# For now, overrride to use 'lib' for the library install dir.
set ( CMAKE_INSTALL_LIBDIR lib )
# Set a filename for collecting exported targets.
set( EXPORT_TARGETS_FILENAME "GPSTKTargets" )

#----------------------------------------
# Option Switches
#
# Usage: option( <option_variable> "help string" [initial value] )
#----------------------------------------

option( DEBUG_SWITCH "HELP: DEBUG_SWITCH: Default = OFF, print some CMake variable values to stdout." OFF )
Expand All @@ -51,6 +37,12 @@ option( BUILD_EXT "HELP: BUILD_EXT: SWITCH, Default = OFF, Build the ext library
option( TEST_SWITCH "HELP: TEST_SWITCH: SWITCH, Default = OFF, Turn on test mode." OFF )
option( BUILD_PYTHON "HELP: BUILD_PYTHON: SWITCH, Default = OFF, Turn on processing of python extension package." OFF )

if( BUILD_PYTHON AND !BUILD_EXT )
message( WARNING "Combination of BUILD_PYTHON=ON and BUILD_EXT=OFF is not allowed. Python swig bindings depend on gpstk/ext." )
message( WARNING "Setting BUILD_EXT = TRUE" )
set( BUILD_EXT TRUE )
endif()

#----------------------------------------
# Pull in Build Config
#----------------------------------------
Expand Down Expand Up @@ -139,30 +131,18 @@ endif()
add_library( gpstk ${STADYN} ${GPSTK_SRC_FILES} ${GPSTK_INC_FILES} )

# GPSTk library install target
install( TARGETS gpstk DESTINATION "${CMAKE_INSTALL_LIBDIR}" EXPORT "${PROJECT_NAME}Config" )
install( TARGETS gpstk DESTINATION "${CMAKE_INSTALL_LIBDIR}" EXPORT "${EXPORT_TARGETS_FILENAME}" )

# GPSTk header file install target \todo without "/gpstk"?
# GPSTk header file install target
install( FILES ${GPSTK_INC_FILES} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/gpstk" )

#============================================================
# Testing
#============================================================

# CMake command enable_testing() enables capability
# to use CMake add_test() command for this directory and below.
# This adds another build target, which is "test" for
# Makefile generators, or "RUN_TESTS" for IDEs (e.g. Visual Studio).
# From that point on, you can use the ADD_TEST() command
# to add tests cases to the project build target test:
#
# add_test( testname Exename arg1 arg2 ... )
#
# Must call enable_test() prior to any add_subdirectory()
# that is intended to contain test cases.

if( TEST_SWITCH )
enable_testing()
list( APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/Modules )
# include( CTest )
endif( )

#----------------------------------------
Expand All @@ -174,22 +154,29 @@ add_subdirectory( core )
if( BUILD_EXT )
add_subdirectory( ext )
add_subdirectory( examples )
if( BUILD_PYTHON )
include( PythonSetup.cmake )
add_subdirectory( swig )
endif()
endif()

if( BUILD_PYTHON )
add_subdirectory( swig )
endif()

#----------------------------------------
# Export the project import cmake files.
#----------------------------------------

configure_file( "${CMAKE_SOURCE_DIR}/ProjectConfig-misc.cmake.in" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Config-misc.cmake" )
# \todo make smth with it
#install( FILES "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Config-misc.cmake" DESTINATION "${CMAKE_INSTALL_DATADIR}/cmake/${PROJECT_NAME}" )
#install( EXPORT "${PROJECT_NAME}Config" DESTINATION "${CMAKE_INSTALL_DATADIR}/cmake/${PROJECT_NAME}" )

#============================================================
# The End
#============================================================

#include( CMakePackageConfigHelpers )
#set( INSTALL_CONFIG_DIR ${CMAKE_INSTALL_DATADIR}/cmake/GPSTK)
#configure_package_config_file( ${CMAKE_CURRENT_SOURCE_DIR}/GPSTKConfig.cmake.in
# ${CMAKE_CURRENT_BINARY_DIR}/GPSTKConfig.cmake
# INSTALL_DESTINATION ${INSTALL_CONFIG_DIR}
# PATH_VARS CMAKE_INSTALL_LIBDIR CMAKE_INSTALL_INCLUDEDIR CMAKE_INSTALL_BINDIR CMAKE_INSTALL_PREFIX INSTALL_CONFIG_DIR )
#write_basic_package_version_file( ${CMAKE_CURRENT_BINARY_DIR}/GPSTKConfigVersion.cmake
# VERSION ${GPSTK_VERSION}
# COMPATIBILITY ExactVersion )
#install( FILES
# ${CMAKE_CURRENT_BINARY_DIR}/GPSTKConfig.cmake
# ${CMAKE_CURRENT_BINARY_DIR}/GPSTKConfigVersion.cmake
# DESTINATION
# ${INSTALL_CONFIG_DIR} )
#
#install( EXPORT ${EXPORT_TARGETS_FILENAME} DESTINATION ${INSTALL_CONFIG_DIR} )
File renamed without changes.
File renamed without changes.
15 changes: 15 additions & 0 deletions CTestConfig.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
## This file should be placed in the root directory of your project.
## Then modify the CMakeLists.txt file in the root directory of your
## project to incorporate the testing dashboard.
##
## # The following are required to submit to the CDash dashboard:
## ENABLE_TESTING()
## INCLUDE(CTest)

set(CTEST_PROJECT_NAME "GPSTk")
set(CTEST_NIGHTLY_START_TIME "01:00:00 UTC")

set(CTEST_DROP_METHOD "http")
set(CTEST_DROP_SITE "cdash.arlut.utexas.edu")
set(CTEST_DROP_LOCATION "/CDash/submit.php?project=GPSTk")
set(CTEST_DROP_SITE_CDASH TRUE)
Loading