diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000000..9b4ad178f2 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,33 @@ +# This file is part of STIR. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. +# +# This file is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# See STIR/LICENSE.txt for details + +# cmake file for building STIR. See the STIR User's Guide and http://www.cmake.org. + +# avoid warning about WIN32 no longer defined in CYGWIN +set(CMAKE_LEGACY_CYGWIN_WIN32 0) + +PROJECT(STIR) + +SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON) +# require 2.8.3 to get FOLDER properties support (without that, we only need cmake 2.6) +cmake_minimum_required(VERSION 2.8.3) + +# add project source to cmake path such that it can use our find_package modules and .cmake files +set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/src/cmake) + +#### enable support for ctest +ENABLE_TESTING() + +ADD_SUBDIRECTORY(src) +ADD_SUBDIRECTORY(scripts) \ No newline at end of file diff --git a/src/GPL.txt b/GPL.txt similarity index 100% rename from src/GPL.txt rename to GPL.txt diff --git a/src/LGPL.txt b/LGPL.txt similarity index 100% rename from src/LGPL.txt rename to LGPL.txt diff --git a/src/LICENSE.txt b/LICENSE.txt similarity index 100% rename from src/LICENSE.txt rename to LICENSE.txt diff --git a/src/PARAPETLICENSE.txt b/PARAPETLICENSE.txt similarity index 100% rename from src/PARAPETLICENSE.txt rename to PARAPETLICENSE.txt diff --git a/src/VERSION.txt b/VERSION.txt similarity index 100% rename from src/VERSION.txt rename to VERSION.txt diff --git a/documentation/release_3.0.htm b/documentation/release_3.0.htm index 2814e9a9a9..df68a8ded9 100644 --- a/documentation/release_3.0.htm +++ b/documentation/release_3.0.htm @@ -1,11 +1,11 @@ - Summary of changes in STIR release 3.0 alpha (dated 13/01/2014) + Summary of changes in STIR release 3.0 beta (dated 17/03/2014) -

Summary of changes in STIR release 3.0 alpha (dated 13/01/2014)

+

Summary of changes in STIR release 3.0 beta (dated 17/03/2014)

This version is almost backwards compatible with STIR 2.4 for the user (see below), but not for developers. Required code changes are minor however and detailed below. @@ -83,6 +83,15 @@

Changes that break backwards compatibility

+

New directory structure

+ +

New functionality

@@ -130,7 +139,8 @@

Build system

for Visual Studio are no longer distributed. Hand-crafted Unix Makefiles are still there but getting out-of date (no ITK for instance). -
  • compilation when using CMake is speeded-up a bit as dependencies of the tests on STIR libraries are reduced.
  • +
  • Compilation when using CMake is speeded-up a bit as dependencies of the tests on STIR libraries are reduced.
  • +
  • You should now point cmake to the STIR main directory, not STIR/src. @@ -211,7 +221,7 @@

    What's new for developers (aside from what should be obvious

    Major bugs fixed

    New functionality

    @@ -236,7 +246,7 @@

    New functionality

  • removed CListModeData::get_scan_start_time_in_secs_since_1970(). Get it via its ExamInfo.
  • -
  • Using the above changes, LmToProjData properly writes time frame information to the projection data.
  • +
  • using the above changes, LmToProjData properly writes time frame information to the projection data.
  • changes to ProjDataInfoCylindrical to allow different radii for different views, useful for SPECT (or an elliptical PET scanner?)
  • @@ -265,6 +275,12 @@

    Build system

    add_subdirectory(${STIR_LOCAL}) +
  • All CMake help-fules have been moved to a spearate sub-directory src/cmake which is +added to the CMazke module path. That means that you should use them for instance as +
    +include(stir_lib_target)
    +
    +
  • diff --git a/src/samples/PET_simulation/FBP2D.par b/examples/PET_simulation/FBP2D.par similarity index 100% rename from src/samples/PET_simulation/FBP2D.par rename to examples/PET_simulation/FBP2D.par diff --git a/src/samples/PET_simulation/OSMAPOSL_QP.par b/examples/PET_simulation/OSMAPOSL_QP.par similarity index 100% rename from src/samples/PET_simulation/OSMAPOSL_QP.par rename to examples/PET_simulation/OSMAPOSL_QP.par diff --git a/src/samples/PET_simulation/OSSPS_QP.par b/examples/PET_simulation/OSSPS_QP.par similarity index 100% rename from src/samples/PET_simulation/OSSPS_QP.par rename to examples/PET_simulation/OSSPS_QP.par diff --git a/src/samples/PET_simulation/README.txt b/examples/PET_simulation/README.txt similarity index 100% rename from src/samples/PET_simulation/README.txt rename to examples/PET_simulation/README.txt diff --git a/src/samples/PET_simulation/Shell-scripting-primer.txt b/examples/PET_simulation/Shell-scripting-primer.txt similarity index 100% rename from src/samples/PET_simulation/Shell-scripting-primer.txt rename to examples/PET_simulation/Shell-scripting-primer.txt diff --git a/src/samples/PET_simulation/forward_projector_proj_matrix_ray_tracing.par b/examples/PET_simulation/forward_projector_proj_matrix_ray_tracing.par similarity index 100% rename from src/samples/PET_simulation/forward_projector_proj_matrix_ray_tracing.par rename to examples/PET_simulation/forward_projector_proj_matrix_ray_tracing.par diff --git a/src/samples/PET_simulation/generate_input_data.sh b/examples/PET_simulation/generate_input_data.sh similarity index 100% rename from src/samples/PET_simulation/generate_input_data.sh rename to examples/PET_simulation/generate_input_data.sh diff --git a/src/samples/PET_simulation/generate_uniform_cylinder.par b/examples/PET_simulation/generate_uniform_cylinder.par similarity index 100% rename from src/samples/PET_simulation/generate_uniform_cylinder.par rename to examples/PET_simulation/generate_uniform_cylinder.par diff --git a/src/samples/PET_simulation/recon_FBP2D.sh b/examples/PET_simulation/recon_FBP2D.sh similarity index 100% rename from src/samples/PET_simulation/recon_FBP2D.sh rename to examples/PET_simulation/recon_FBP2D.sh diff --git a/src/samples/PET_simulation/recon_iterative.sh b/examples/PET_simulation/recon_iterative.sh similarity index 100% rename from src/samples/PET_simulation/recon_iterative.sh rename to examples/PET_simulation/recon_iterative.sh diff --git a/src/samples/PET_simulation/run_simulation.sh b/examples/PET_simulation/run_simulation.sh similarity index 100% rename from src/samples/PET_simulation/run_simulation.sh rename to examples/PET_simulation/run_simulation.sh diff --git a/src/samples/PET_simulation/scatter.par b/examples/PET_simulation/scatter.par similarity index 100% rename from src/samples/PET_simulation/scatter.par rename to examples/PET_simulation/scatter.par diff --git a/src/samples/PET_simulation/scatter_template.hs b/examples/PET_simulation/scatter_template.hs similarity index 100% rename from src/samples/PET_simulation/scatter_template.hs rename to examples/PET_simulation/scatter_template.hs diff --git a/src/samples/PET_simulation/simulate_data.sh b/examples/PET_simulation/simulate_data.sh similarity index 100% rename from src/samples/PET_simulation/simulate_data.sh rename to examples/PET_simulation/simulate_data.sh diff --git a/src/samples/PET_simulation/simulate_scatter.sh b/examples/PET_simulation/simulate_scatter.sh similarity index 100% rename from src/samples/PET_simulation/simulate_scatter.sh rename to examples/PET_simulation/simulate_scatter.sh diff --git a/src/samples/FBP2D.par b/examples/samples/FBP2D.par similarity index 100% rename from src/samples/FBP2D.par rename to examples/samples/FBP2D.par diff --git a/src/samples/FBP2D_SPECT.par b/examples/samples/FBP2D_SPECT.par similarity index 100% rename from src/samples/FBP2D_SPECT.par rename to examples/samples/FBP2D_SPECT.par diff --git a/src/samples/FBP2D_using_ITK_to_write_image.par b/examples/samples/FBP2D_using_ITK_to_write_image.par similarity index 100% rename from src/samples/FBP2D_using_ITK_to_write_image.par rename to examples/samples/FBP2D_using_ITK_to_write_image.par diff --git a/src/samples/FBP3DRP.par b/examples/samples/FBP3DRP.par similarity index 100% rename from src/samples/FBP3DRP.par rename to examples/samples/FBP3DRP.par diff --git a/src/samples/MCIR.par b/examples/samples/MCIR.par similarity index 100% rename from src/samples/MCIR.par rename to examples/samples/MCIR.par diff --git a/src/samples/OSEM_SPECT.par b/examples/samples/OSEM_SPECT.par similarity index 100% rename from src/samples/OSEM_SPECT.par rename to examples/samples/OSEM_SPECT.par diff --git a/src/samples/OSMAPOSL_MRP.par b/examples/samples/OSMAPOSL_MRP.par similarity index 100% rename from src/samples/OSMAPOSL_MRP.par rename to examples/samples/OSMAPOSL_MRP.par diff --git a/src/samples/OSMAPOSL_QuadraticPrior.par b/examples/samples/OSMAPOSL_QuadraticPrior.par similarity index 100% rename from src/samples/OSMAPOSL_QuadraticPrior.par rename to examples/samples/OSMAPOSL_QuadraticPrior.par diff --git a/src/samples/OSMAPOSL_emml_with_projector_pair.par b/examples/samples/OSMAPOSL_emml_with_projector_pair.par similarity index 100% rename from src/samples/OSMAPOSL_emml_with_projector_pair.par rename to examples/samples/OSMAPOSL_emml_with_projector_pair.par diff --git a/src/samples/OSMAPOSL_emml_with_projmatrix.par b/examples/samples/OSMAPOSL_emml_with_projmatrix.par similarity index 100% rename from src/samples/OSMAPOSL_emml_with_projmatrix.par rename to examples/samples/OSMAPOSL_emml_with_projmatrix.par diff --git a/src/samples/OSMAPOSL_osem_SPECT.par b/examples/samples/OSMAPOSL_osem_SPECT.par similarity index 100% rename from src/samples/OSMAPOSL_osem_SPECT.par rename to examples/samples/OSMAPOSL_osem_SPECT.par diff --git a/src/samples/OSMAPOSL_osem_with_interfiltering.par b/examples/samples/OSMAPOSL_osem_with_interfiltering.par similarity index 100% rename from src/samples/OSMAPOSL_osem_with_interfiltering.par rename to examples/samples/OSMAPOSL_osem_with_interfiltering.par diff --git a/src/samples/OSSPS_QuadraticPrior.par b/examples/samples/OSSPS_QuadraticPrior.par similarity index 100% rename from src/samples/OSSPS_QuadraticPrior.par rename to examples/samples/OSSPS_QuadraticPrior.par diff --git a/src/samples/POSMAPOSL.par b/examples/samples/POSMAPOSL.par similarity index 100% rename from src/samples/POSMAPOSL.par rename to examples/samples/POSMAPOSL.par diff --git a/src/samples/POSSPS.par b/examples/samples/POSSPS.par similarity index 100% rename from src/samples/POSSPS.par rename to examples/samples/POSSPS.par diff --git a/src/samples/PatlakPlot.par b/examples/samples/PatlakPlot.par similarity index 100% rename from src/samples/PatlakPlot.par rename to examples/samples/PatlakPlot.par diff --git a/src/samples/SPECT_Interfile_header.hs b/examples/samples/SPECT_Interfile_header.hs similarity index 100% rename from src/samples/SPECT_Interfile_header.hs rename to examples/samples/SPECT_Interfile_header.hs diff --git a/src/samples/correct_projdata.par b/examples/samples/correct_projdata.par similarity index 100% rename from src/samples/correct_projdata.par rename to examples/samples/correct_projdata.par diff --git a/src/samples/fore.par b/examples/samples/fore.par similarity index 100% rename from src/samples/fore.par rename to examples/samples/fore.par diff --git a/src/samples/forward_project_SPECT.par b/examples/samples/forward_project_SPECT.par similarity index 100% rename from src/samples/forward_project_SPECT.par rename to examples/samples/forward_project_SPECT.par diff --git a/src/samples/forward_projector_proj_matrix_ray_tracing.par b/examples/samples/forward_projector_proj_matrix_ray_tracing.par similarity index 100% rename from src/samples/forward_projector_proj_matrix_ray_tracing.par rename to examples/samples/forward_projector_proj_matrix_ray_tracing.par diff --git a/src/samples/forward_projector_ray_tracing.par b/examples/samples/forward_projector_ray_tracing.par similarity index 100% rename from src/samples/forward_projector_ray_tracing.par rename to examples/samples/forward_projector_ray_tracing.par diff --git a/src/samples/generate_image.par b/examples/samples/generate_image.par similarity index 100% rename from src/samples/generate_image.par rename to examples/samples/generate_image.par diff --git a/src/samples/list_ROI_values.par b/examples/samples/list_ROI_values.par similarity index 100% rename from src/samples/list_ROI_values.par rename to examples/samples/list_ROI_values.par diff --git a/src/samples/lm_to_projdata.par b/examples/samples/lm_to_projdata.par similarity index 100% rename from src/samples/lm_to_projdata.par rename to examples/samples/lm_to_projdata.par diff --git a/src/samples/postfilter_Metz.par b/examples/samples/postfilter_Metz.par similarity index 100% rename from src/samples/postfilter_Metz.par rename to examples/samples/postfilter_Metz.par diff --git a/src/samples/postfilter_median3x3x3.par b/examples/samples/postfilter_median3x3x3.par similarity index 100% rename from src/samples/postfilter_median3x3x3.par rename to examples/samples/postfilter_median3x3x3.par diff --git a/src/samples/scatter.par b/examples/samples/scatter.par similarity index 100% rename from src/samples/scatter.par rename to examples/samples/scatter.par diff --git a/src/samples/stir_math_output_file_format.par b/examples/samples/stir_math_output_file_format.par similarity index 100% rename from src/samples/stir_math_output_file_format.par rename to examples/samples/stir_math_output_file_format.par diff --git a/src/samples/write_proj_matrix_by_bin.par b/examples/samples/write_proj_matrix_by_bin.par similarity index 100% rename from src/samples/write_proj_matrix_by_bin.par rename to examples/samples/write_proj_matrix_by_bin.par diff --git a/src/examples/CMakeLists.txt b/examples/src/CMakeLists.txt similarity index 75% rename from src/examples/CMakeLists.txt rename to examples/src/CMakeLists.txt index d467b768e5..6fe1bfc5f7 100644 --- a/src/examples/CMakeLists.txt +++ b/examples/src/CMakeLists.txt @@ -9,4 +9,4 @@ set(${dir_EXE_SOURCES} ) -include(../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/examples/README.txt b/examples/src/README.txt similarity index 92% rename from src/examples/README.txt rename to examples/src/README.txt index ff2c1c6a13..53dfc8555a 100644 --- a/src/examples/README.txt +++ b/examples/src/README.txt @@ -43,7 +43,7 @@ exe.mk Supporting files ---------------- extra_dirs.mk - A sub-makefile that needs to be moved to STIR/local. This way, it + A sub-makefile that needs to be moved to STIR/src/local. This way, it will be picked up by the Makefile. Its contents simply say that there is an exe.mk sub-makefile in examples/. @@ -73,13 +73,15 @@ small.*s How to compile using the "hand-made" Makefiles ----------------------------------------------- -cp extra_dirs.mk ../local/ +mkdir -p ../src/local +cp extra_dirs.mk ../src/local/ cd .. make examples How to compile using CMake (on Unix-type systems) ----------------------------------------------- -cp extra_stir_dirs.cmake ../local/ +mkdir -p ../src/local +cp extra_stir_dirs.cmake ../src/local/ cd your-build-dir # reconfigure your project ccmake . @@ -95,8 +97,8 @@ First you need to create some data. #Generate an image generate_image generate_image.par -#Generate projection data (you will have to answer questions by fwdtest) - fwdtest sino.hs small.hs image.hv +#Generate projection data + forward_project sino.hs image.hv small.hs # Run the demos. DEST=../opt @@ -127,3 +129,4 @@ Good luck Kris Thielemans 12 November 2004 +(with minor updates until 2014) diff --git a/src/examples/demo.par b/examples/src/demo.par similarity index 100% rename from src/examples/demo.par rename to examples/src/demo.par diff --git a/src/examples/demo1.cxx b/examples/src/demo1.cxx similarity index 100% rename from src/examples/demo1.cxx rename to examples/src/demo1.cxx diff --git a/src/examples/demo2.cxx b/examples/src/demo2.cxx similarity index 100% rename from src/examples/demo2.cxx rename to examples/src/demo2.cxx diff --git a/src/examples/demo3.cxx b/examples/src/demo3.cxx similarity index 100% rename from src/examples/demo3.cxx rename to examples/src/demo3.cxx diff --git a/src/examples/demoPM.par b/examples/src/demoPM.par similarity index 100% rename from src/examples/demoPM.par rename to examples/src/demoPM.par diff --git a/src/examples/exe.mk b/examples/src/exe.mk similarity index 100% rename from src/examples/exe.mk rename to examples/src/exe.mk diff --git a/src/examples/extra_dirs.mk b/examples/src/extra_dirs.mk similarity index 100% rename from src/examples/extra_dirs.mk rename to examples/src/extra_dirs.mk diff --git a/src/examples/extra_stir_dirs.cmake b/examples/src/extra_stir_dirs.cmake similarity index 100% rename from src/examples/extra_stir_dirs.cmake rename to examples/src/extra_stir_dirs.cmake diff --git a/src/examples/generate_image.par b/examples/src/generate_image.par similarity index 100% rename from src/examples/generate_image.par rename to examples/src/generate_image.par diff --git a/src/examples/small.hs b/examples/src/small.hs similarity index 100% rename from src/examples/small.hs rename to examples/src/small.hs diff --git a/src/examples/small.s b/examples/src/small.s similarity index 100% rename from src/examples/small.s rename to examples/src/small.s diff --git a/src/scripts/CMakeLists.txt b/scripts/CMakeLists.txt similarity index 95% rename from src/scripts/CMakeLists.txt rename to scripts/CMakeLists.txt index 81120abcf9..3bffdbad9d 100644 --- a/src/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt @@ -30,7 +30,7 @@ set(${dir_scripts} -#include(../stir_test_exe_targets.cmake) +#include(stir_test_exe_targets) install(PROGRAMS ${${dir_scripts}} DESTINATION bin) diff --git a/src/scripts/count b/scripts/count similarity index 100% rename from src/scripts/count rename to scripts/count diff --git a/src/scripts/exe.mk b/scripts/exe.mk similarity index 100% rename from src/scripts/exe.mk rename to scripts/exe.mk diff --git a/src/scripts/stir_divide b/scripts/stir_divide similarity index 100% rename from src/scripts/stir_divide rename to scripts/stir_divide diff --git a/src/scripts/stir_print_voxel_sizes.sh b/scripts/stir_print_voxel_sizes.sh similarity index 100% rename from src/scripts/stir_print_voxel_sizes.sh rename to scripts/stir_print_voxel_sizes.sh diff --git a/src/scripts/stir_subtract b/scripts/stir_subtract similarity index 100% rename from src/scripts/stir_subtract rename to scripts/stir_subtract diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index bf49e7c945..620f618878 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -18,18 +18,6 @@ # cmake file for building STIR. See the STIR User's Guide and http://www.cmake.org. -# avoid warning about WIN32 no longer defined in CYGWIN -set(CMAKE_LEGACY_CYGWIN_WIN32 0) - -PROJECT(STIR) - -SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON) -# require 2.8.3 to get FOLDER properties support (without that, we only need cmake 2.6) -cmake_minimum_required(VERSION 2.8.3) - -# add project source to cmake path such that it can use our find_package modules -list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}) - INCLUDE(${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake) option(STIR_MPI @@ -162,15 +150,12 @@ if(STIR_OPENMP) endif() -#### enable support for ctest -ENABLE_TESTING() - #### STIR library -include(stir_dirs.cmake) +include(stir_dirs) # see if there's a local subdirectory. if(NOT DISABLE_STIR_LOCAL) - find_path(STIR_LOCAL NAME "extra_stir_dirs.cmake" PATHS "${PROJECT_SOURCE_DIR}/local/" NO_DEFAULT_PATH) + find_path(STIR_LOCAL NAME "extra_stir_dirs.cmake" PATHS "${PROJECT_SOURCE_DIR}/src/local/" NO_DEFAULT_PATH) if (STIR_LOCAL) include(${STIR_LOCAL}/extra_stir_dirs.cmake) endif() diff --git a/src/IO/CMakeLists.txt b/src/IO/CMakeLists.txt index b8ff64345c..5260be4006 100644 --- a/src/IO/CMakeLists.txt +++ b/src/IO/CMakeLists.txt @@ -60,7 +60,7 @@ if(AVW_FOUND) ) endif() -include(../stir_lib_target.cmake) +include(stir_lib_target) if (LLN_FOUND) target_link_libraries(IO ${LLN_LIBRARIES}) diff --git a/src/Shape_buildblock/CMakeLists.txt b/src/Shape_buildblock/CMakeLists.txt index 42c0f74380..1aaef4df04 100644 --- a/src/Shape_buildblock/CMakeLists.txt +++ b/src/Shape_buildblock/CMakeLists.txt @@ -15,6 +15,6 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= $(dir)_registries -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(Shape_buildblock buildblock IO ) diff --git a/src/SimSET/CMakeLists.txt b/src/SimSET/CMakeLists.txt index d1980f7930..b4781a2215 100644 --- a/src/SimSET/CMakeLists.txt +++ b/src/SimSET/CMakeLists.txt @@ -28,7 +28,7 @@ set(${dir_EXE_SOURCES} conv_to_SimSET_att_image ) -include(../stir_exe_targets.cmake) +include(stir_exe_targets) # stand-alone add_executable(write_phg_image_info write_phg_image_info.c) diff --git a/src/SimSET/scripts/CMakeLists.txt b/src/SimSET/scripts/CMakeLists.txt index 7661fcbc24..c744a1a23b 100644 --- a/src/SimSET/scripts/CMakeLists.txt +++ b/src/SimSET/scripts/CMakeLists.txt @@ -32,7 +32,7 @@ stir_image_to_simset_object.sh ) -#include(../stir_test_exe_targets.cmake) +#include(stir_test_exe_targets) install(PROGRAMS ${${dir_scripts}} DESTINATION bin) diff --git a/src/analytic/FBP2D/CMakeLists.txt b/src/analytic/FBP2D/CMakeLists.txt index 9d4a29bcb7..e3845d697f 100644 --- a/src/analytic/FBP2D/CMakeLists.txt +++ b/src/analytic/FBP2D/CMakeLists.txt @@ -12,7 +12,7 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= -include(../../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(analytic_FBP2D recon_buildblock IO ) set (dir_EXE_SOURCES ${dir}_EXE_SOURCES) @@ -21,4 +21,4 @@ set(${dir_EXE_SOURCES} FBP2D ) -include(../../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/analytic/FBP3DRP/CMakeLists.txt b/src/analytic/FBP3DRP/CMakeLists.txt index 34ebe34d2f..a66952761a 100644 --- a/src/analytic/FBP3DRP/CMakeLists.txt +++ b/src/analytic/FBP3DRP/CMakeLists.txt @@ -12,7 +12,7 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= -include(../../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(analytic_FBP3DRP analytic_FBP2D recon_buildblock ) set (dir_EXE_SOURCES ${dir}_EXE_SOURCES) @@ -21,5 +21,5 @@ set(${dir_EXE_SOURCES} FBP3DRP ) -include(../../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/buildblock/CMakeLists.txt b/src/buildblock/CMakeLists.txt index a637b9e1af..e146517871 100644 --- a/src/buildblock/CMakeLists.txt +++ b/src/buildblock/CMakeLists.txt @@ -75,7 +75,7 @@ if (NOT HAVE_SYSTEM_GETOPT) list(APPEND ${dir_LIB_SOURCES} getopt) endif() -include(../stir_lib_target.cmake) +include(stir_lib_target) # TODO Remove but currently needed for ProjData.cxx, DynamicDisc*cxx, TimeFrameDef if (LLN_FOUND) diff --git a/src/FindAVW.cmake b/src/cmake/FindAVW.cmake similarity index 90% rename from src/FindAVW.cmake rename to src/cmake/FindAVW.cmake index 740def3102..582c1e9c64 100644 --- a/src/FindAVW.cmake +++ b/src/cmake/FindAVW.cmake @@ -15,7 +15,7 @@ # message(STATUS "AVW_INCLUDE_DIRS ${AVW_INCLUDE_DIRS}") find_library(AVW_LIBRARIES NAME AVW - HINTS ${AVW_ROOT_DIR}/$ENV(TARGET)/lib/ + HINTS ${AVW_ROOT_DIR}/$ENV{TARGET}/lib/ DOC "location of AVW library") # handle the QUIETLY and REQUIRED arguments and set AVW_FOUND to TRUE if diff --git a/src/FindLLN.cmake b/src/cmake/FindLLN.cmake similarity index 100% rename from src/FindLLN.cmake rename to src/cmake/FindLLN.cmake diff --git a/src/FindRDF.cmake b/src/cmake/FindRDF.cmake similarity index 100% rename from src/FindRDF.cmake rename to src/cmake/FindRDF.cmake diff --git a/src/stir_dirs.cmake b/src/cmake/stir_dirs.cmake similarity index 77% rename from src/stir_dirs.cmake rename to src/cmake/stir_dirs.cmake index c081cc82a6..06bbc94312 100644 --- a/src/stir_dirs.cmake +++ b/src/cmake/stir_dirs.cmake @@ -24,16 +24,18 @@ # add the STIR include directory to the search path for the compiler -include_directories ("${PROJECT_SOURCE_DIR}/include") +include_directories ("${PROJECT_SOURCE_DIR}/src/include") + +SET( STIR_IO_REGISTRIES ${PROJECT_SOURCE_DIR}/src/IO/IO_registries.cxx) SET ( STIR_REGISTRIES -${CMAKE_HOME_DIRECTORY}/buildblock/buildblock_registries.cxx -${CMAKE_HOME_DIRECTORY}/data_buildblock/data_buildblock_registries.cxx -${CMAKE_HOME_DIRECTORY}/IO/IO_registries.cxx -${CMAKE_HOME_DIRECTORY}/recon_buildblock/recon_buildblock_registries.cxx -${CMAKE_HOME_DIRECTORY}/Shape_buildblock/Shape_buildblock_registries.cxx -${CMAKE_HOME_DIRECTORY}/modelling_buildblock/modelling_registries.cxx -${CMAKE_HOME_DIRECTORY}/spatial_transformation_buildblock/spatial_transformation_registries.cxx +${PROJECT_SOURCE_DIR}/src/buildblock/buildblock_registries.cxx +${PROJECT_SOURCE_DIR}/src/data_buildblock/data_buildblock_registries.cxx +${STIR_IO_REGISTRIES} +${PROJECT_SOURCE_DIR}/src/recon_buildblock/recon_buildblock_registries.cxx +${PROJECT_SOURCE_DIR}/src/Shape_buildblock/Shape_buildblock_registries.cxx +${PROJECT_SOURCE_DIR}/src/modelling_buildblock/modelling_registries.cxx +${PROJECT_SOURCE_DIR}/src/spatial_transformation_buildblock/spatial_transformation_registries.cxx ) SET( STIR_LIBRARIES analytic_FBP3DRP analytic_FBP2D iterative_OSMAPOSL @@ -69,7 +71,6 @@ SET( STIR_DIRS iterative/OSSPS iterative/POSMAPOSL iterative/POSSPS - scripts SimSET SimSET/scripts ) diff --git a/src/stir_exe_targets.cmake b/src/cmake/stir_exe_targets.cmake similarity index 100% rename from src/stir_exe_targets.cmake rename to src/cmake/stir_exe_targets.cmake diff --git a/src/stir_lib_target.cmake b/src/cmake/stir_lib_target.cmake similarity index 100% rename from src/stir_lib_target.cmake rename to src/cmake/stir_lib_target.cmake diff --git a/src/stir_test_exe_targets.cmake b/src/cmake/stir_test_exe_targets.cmake similarity index 100% rename from src/stir_test_exe_targets.cmake rename to src/cmake/stir_test_exe_targets.cmake diff --git a/src/data_buildblock/CMakeLists.txt b/src/data_buildblock/CMakeLists.txt index 6770fb118d..18464888b0 100644 --- a/src/data_buildblock/CMakeLists.txt +++ b/src/data_buildblock/CMakeLists.txt @@ -34,6 +34,6 @@ if (HAVE_ECAT) ) endif() -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(${dir} buildblock) diff --git a/src/display/CMakeLists.txt b/src/display/CMakeLists.txt index b8cf8a74ab..adbfbd1a3b 100644 --- a/src/display/CMakeLists.txt +++ b/src/display/CMakeLists.txt @@ -42,7 +42,7 @@ else() message(FATAL_ERROR "GRAPHICS has to be X, PGM or None") endif() -include(../stir_lib_target.cmake) +include(stir_lib_target) if( "${GRAPHICS}" STREQUAL "X") find_package(Curses REQUIRED) diff --git a/src/eval_buildblock/CMakeLists.txt b/src/eval_buildblock/CMakeLists.txt index b6e2664e5e..baddb8ea01 100644 --- a/src/eval_buildblock/CMakeLists.txt +++ b/src/eval_buildblock/CMakeLists.txt @@ -13,7 +13,7 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= $(dir)_registries.cxx -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(eval_buildblock buildblock ) diff --git a/src/iterative/OSMAPOSL/CMakeLists.txt b/src/iterative/OSMAPOSL/CMakeLists.txt index 4d2761d6b6..bc8fb36108 100644 --- a/src/iterative/OSMAPOSL/CMakeLists.txt +++ b/src/iterative/OSMAPOSL/CMakeLists.txt @@ -9,7 +9,7 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= -include(${PROJECT_SOURCE_DIR}/stir_lib_target.cmake) +include(stir_lib_target) set (dir_EXE_SOURCES ${dir}_EXE_SOURCES) @@ -17,7 +17,7 @@ set(${dir_EXE_SOURCES} OSMAPOSL ) -include(../../stir_exe_targets.cmake) +include(stir_exe_targets) if (STIR_MPI) SET_PROPERTY(TARGET OSMAPOSL PROPERTY LINK_FLAGS ${MPI_CXX_LINK_FLAGS}) diff --git a/src/iterative/OSSPS/CMakeLists.txt b/src/iterative/OSSPS/CMakeLists.txt index b3c0d0a259..4b5ba24ed4 100644 --- a/src/iterative/OSSPS/CMakeLists.txt +++ b/src/iterative/OSSPS/CMakeLists.txt @@ -9,7 +9,7 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= -include(${PROJECT_SOURCE_DIR}/stir_lib_target.cmake) +include(stir_lib_target) set (dir_EXE_SOURCES ${dir}_EXE_SOURCES) @@ -18,7 +18,7 @@ set(${dir_EXE_SOURCES} ) -include(../../stir_exe_targets.cmake) +include(stir_exe_targets) if (STIR_MPI) SET_PROPERTY(TARGET OSSPS PROPERTY LINK_FLAGS ${MPI_CXX_LINK_FLAGS}) diff --git a/src/iterative/POSMAPOSL/CMakeLists.txt b/src/iterative/POSMAPOSL/CMakeLists.txt index 718784e078..3882467be0 100644 --- a/src/iterative/POSMAPOSL/CMakeLists.txt +++ b/src/iterative/POSMAPOSL/CMakeLists.txt @@ -26,4 +26,4 @@ set(${dir_EXE_SOURCES} POSMAPOSL ) -include(../../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/iterative/POSSPS/CMakeLists.txt b/src/iterative/POSSPS/CMakeLists.txt index 3af0fef3f8..cb0145c200 100644 --- a/src/iterative/POSSPS/CMakeLists.txt +++ b/src/iterative/POSSPS/CMakeLists.txt @@ -26,4 +26,4 @@ set(${dir_EXE_SOURCES} POSSPS ) -include(../../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/listmode_buildblock/CMakeLists.txt b/src/listmode_buildblock/CMakeLists.txt index 1061ea6421..613296cd82 100644 --- a/src/listmode_buildblock/CMakeLists.txt +++ b/src/listmode_buildblock/CMakeLists.txt @@ -22,6 +22,6 @@ endif() #$(dir)_REGISTRY_SOURCES:= $(dir)_registries -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(listmode_buildblock IO data_buildblock ) diff --git a/src/listmode_utilities/CMakeLists.txt b/src/listmode_utilities/CMakeLists.txt index df30908303..0251dfb429 100644 --- a/src/listmode_utilities/CMakeLists.txt +++ b/src/listmode_utilities/CMakeLists.txt @@ -41,4 +41,4 @@ endif() -include(../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/local/buildblock/CMakeLists.txt b/src/local/buildblock/CMakeLists.txt index bc4eff2579..b59557658a 100644 --- a/src/local/buildblock/CMakeLists.txt +++ b/src/local/buildblock/CMakeLists.txt @@ -7,7 +7,7 @@ set(${dir_LIB_SOURCES} Quaternion.cxx ) -include(${CMAKE_SOURCE_DIR}/stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(${dir} buildblock) diff --git a/src/local/listmode/CMakeLists.txt b/src/local/listmode/CMakeLists.txt index 2c52001456..e824c6eb61 100644 --- a/src/local/listmode/CMakeLists.txt +++ b/src/local/listmode/CMakeLists.txt @@ -16,6 +16,6 @@ endif() #$(dir)_REGISTRY_SOURCES:= $(dir)_registries -include(../../stir_lib_target.cmake) +include(/stir_lib_target) target_link_libraries(local_listmode_buildblock listmode_buildblock ) diff --git a/src/local/listmode_utilities/CMakeLists.txt b/src/local/listmode_utilities/CMakeLists.txt index 8c339bba04..95aa100833 100644 --- a/src/local/listmode_utilities/CMakeLists.txt +++ b/src/local/listmode_utilities/CMakeLists.txt @@ -34,4 +34,4 @@ endif() -include(../../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/local/motion/CMakeLists.txt b/src/local/motion/CMakeLists.txt index 02f90cf3a7..d226075bdf 100755 --- a/src/local/motion/CMakeLists.txt +++ b/src/local/motion/CMakeLists.txt @@ -7,7 +7,7 @@ set(${dir_LIB_SOURCES} transform_3d_object.cxx ) -include(${CMAKE_SOURCE_DIR}/stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(${dir} numerics_buildblock local_buildblock ) diff --git a/src/local/motion_utilities/CMakeLists.txt b/src/local/motion_utilities/CMakeLists.txt index d74952c9bf..3b60f2f5c9 100644 --- a/src/local/motion_utilities/CMakeLists.txt +++ b/src/local/motion_utilities/CMakeLists.txt @@ -26,9 +26,9 @@ set(${dir_EXE_SOURCES} rigid_object_transform_image ) -#include(${CMAKE_SOURCE_DIR}/stir_exe_targets.cmake) +#include(stir_exe_targets) foreach(executable ${${dir_EXE_SOURCES}}) - add_executable(${executable} ${executable} ${CMAKE_HOME_DIRECTORY}/IO/IO_registries.cxx ) + add_executable(${executable} ${executable} ${STIR_IO_REGISTRIES} ) target_link_libraries(${executable} buildblock IO buildblock local_motion_buildblock buildblock IO buildblock listmode_buildblock) SET_PROPERTY(TARGET ${executable} PROPERTY FOLDER "Executables") endforeach() diff --git a/src/local/recon_buildblock/CMakeLists.txt b/src/local/recon_buildblock/CMakeLists.txt index 3220e0b3ac..348cb11b51 100644 --- a/src/local/recon_buildblock/CMakeLists.txt +++ b/src/local/recon_buildblock/CMakeLists.txt @@ -26,7 +26,7 @@ set (dir_LIB_SOURCES ${dir}_LIB_SOURCES) set(${dir_LIB_SOURCES} ) -include(${PROJECT_SOURCE_DIR}/stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(local_recon_buildblock display buildblock recon_buildblock) diff --git a/src/modelling_buildblock/CMakeLists.txt b/src/modelling_buildblock/CMakeLists.txt index 510ca6c134..69ceccea6c 100644 --- a/src/modelling_buildblock/CMakeLists.txt +++ b/src/modelling_buildblock/CMakeLists.txt @@ -13,6 +13,6 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= modelling_registries -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(modelling_buildblock buildblock) diff --git a/src/modelling_utilities/CMakeLists.txt b/src/modelling_utilities/CMakeLists.txt index 5d66f54e42..9ae0130520 100644 --- a/src/modelling_utilities/CMakeLists.txt +++ b/src/modelling_utilities/CMakeLists.txt @@ -30,4 +30,4 @@ set(${dir_EXE_SOURCES} mult_image_parameters ) -include(../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/numerics_buildblock/CMakeLists.txt b/src/numerics_buildblock/CMakeLists.txt index aba49b4120..b8b4693e04 100644 --- a/src/numerics_buildblock/CMakeLists.txt +++ b/src/numerics_buildblock/CMakeLists.txt @@ -11,6 +11,6 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= $(dir)_registries.cxx -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(${dir} buildblock) diff --git a/src/recon_buildblock/CMakeLists.txt b/src/recon_buildblock/CMakeLists.txt index 1e503e857e..3e9da33ba6 100644 --- a/src/recon_buildblock/CMakeLists.txt +++ b/src/recon_buildblock/CMakeLists.txt @@ -91,7 +91,7 @@ set(${dir_LIB_SOURCES} ) endif() -include(../stir_lib_target.cmake) +include(stir_lib_target) if (STIR_MPI) diff --git a/src/recon_test/CMakeLists.txt b/src/recon_test/CMakeLists.txt index ea033bd15d..0648378a87 100644 --- a/src/recon_test/CMakeLists.txt +++ b/src/recon_test/CMakeLists.txt @@ -32,7 +32,7 @@ set(${dir_INVOLVED_TEST_EXE_SOURCES} bcktest ) -include(../stir_test_exe_targets.cmake) +include(stir_test_exe_targets) # a test that uses MPI create_stir_mpi_test(test_PoissonLogLikelihoodWithLinearModelForMeanAndProjData.cxx "${STIR_LIBRARIES}" "${STIR_REGISTRIES}") diff --git a/src/samples/local/config.mk b/src/samples/local/config.mk deleted file mode 100644 index c614567ed7..0000000000 --- a/src/samples/local/config.mk +++ /dev/null @@ -1,42 +0,0 @@ -# Sample file for local/config.mk (by Kris Thielemans) -# See the STIR User's Guide. -# Use this file to modify defaults for some variables in the 'global' config.mk -# Modify according to your own needs -# i.e. DO NOT just copy it as it won't work for you. -# -# Note that this file is largely obsolete as usging CMake is now recommended. - -# set non-default location of Louvain la Neuve files -LLN_INCLUDE_DIR=$(HOME)/lln/ecat - -# set non-default location where files will be installed -# this sets it to the "standard" location, but this means you need -# superuser permissions -INSTALL_PREFIX=/usr/local - -# This file only sets EXTRA_OPT -# Changes w.r.t. defaults: -# use all warnings, -# use debug flag -g even in optimised mode -# so, set EXTRA_OPT=-g -Wall -# for some systems, do more... -ifeq ($(SYSTEM),LINUX) -# always compile with debug, have all warnings on, -# optimise for your current processor (compiled code might fail on other systems) -EXTRA_CFLAGS=-g -Wall -march=native -else -ifeq ($(SYSTEM),CYGWIN) -# an incredibly old NT system has Pentium II processors -# maybe cygwin can't find X include files by default -EXTRA_CFLAGS=-g -Wall -march=pentium2 -I /usr/X11R6/include -else -ifeq ($(SYSTEM),CC) -# our Parsytec CC system had gcc 2.8.1, so we don't use -Wall -# and have to set the template depth -EXTRA_CFLAGS= -ftemplate-depth-25 -else -# default -EXTRA_CFLAGS=-g -Wall -endif -endif -endif diff --git a/src/samples/local/extra_dirs.mk b/src/samples/local/extra_dirs.mk deleted file mode 100644 index a2b8c39647..0000000000 --- a/src/samples/local/extra_dirs.mk +++ /dev/null @@ -1,10 +0,0 @@ -# -# - -LIBDIRS += local/buildblock local/recon_buildblock - -EXEDIRS += local/utilities \ - --include local/extra_dirs_$(USER).mk - -TESTDIRS += local/test diff --git a/src/scatter_buildblock/CMakeLists.txt b/src/scatter_buildblock/CMakeLists.txt index 697fb31e91..fe078329ce 100644 --- a/src/scatter_buildblock/CMakeLists.txt +++ b/src/scatter_buildblock/CMakeLists.txt @@ -18,5 +18,5 @@ set(${dir_LIB_SOURCES} #$(dir)_REGISTRY_SOURCES:= scatter_buildblock_registries -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(scatter_buildblock recon_buildblock ) diff --git a/src/scatter_utilities/CMakeLists.txt b/src/scatter_utilities/CMakeLists.txt index 0efb67c28c..12cc471025 100644 --- a/src/scatter_utilities/CMakeLists.txt +++ b/src/scatter_utilities/CMakeLists.txt @@ -27,4 +27,4 @@ set(${dir_EXE_SOURCES} upsample_and_fit_single_scatter ) -include(../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/spatial_transformation_buildblock/CMakeLists.txt b/src/spatial_transformation_buildblock/CMakeLists.txt index a2afc6e0f9..98dbf61de7 100644 --- a/src/spatial_transformation_buildblock/CMakeLists.txt +++ b/src/spatial_transformation_buildblock/CMakeLists.txt @@ -28,6 +28,6 @@ set(${dir_LIB_SOURCES} warp_image ) -include(../stir_lib_target.cmake) +include(stir_lib_target) target_link_libraries(${dir} buildblock numerics_buildblock ) diff --git a/src/stir_dirs.mk b/src/stir_dirs.mk index ccec018e5c..6a502ab349 100644 --- a/src/stir_dirs.mk +++ b/src/stir_dirs.mk @@ -29,6 +29,6 @@ EXEDIRS += utilities recon_test \ analytic/FBP3DRP \ SimSET \ SimSET/scripts \ - scripts + ../scripts TESTDIRS += test recon_test test/numerics test/modelling diff --git a/src/test/CMakeLists.txt b/src/test/CMakeLists.txt index b0579b3567..7a47cf2f7a 100644 --- a/src/test/CMakeLists.txt +++ b/src/test/CMakeLists.txt @@ -57,7 +57,7 @@ set(buildblock_simple_tests test_find_fwhm_in_image ) -include(${PROJECT_SOURCE_DIR}/stir_test_exe_targets.cmake) +include(stir_test_exe_targets) foreach(source ${buildblock_simple_tests}) create_stir_test(${source} "buildblock;IO;buildblock" "") diff --git a/src/test/modelling/CMakeLists.txt b/src/test/modelling/CMakeLists.txt index 42f5eb3529..8b7a53d790 100644 --- a/src/test/modelling/CMakeLists.txt +++ b/src/test/modelling/CMakeLists.txt @@ -34,5 +34,5 @@ ADD_TEST(test_modelling ${CMAKE_CURRENT_BINARY_DIR}/test_modelling ${CMAKE_CURRENT_SOURCE_DIR}/input ) -include(../../stir_test_exe_targets.cmake) +include(stir_test_exe_targets) diff --git a/src/test/numerics/CMakeLists.txt b/src/test/numerics/CMakeLists.txt index 92eec7b5b0..fe7e6efe2a 100644 --- a/src/test/numerics/CMakeLists.txt +++ b/src/test/numerics/CMakeLists.txt @@ -32,5 +32,5 @@ create_stir_test (test_overlap_interpolate.cxx "buildblock" "") create_stir_test (test_integrate_discrete_function.cxx "buildblock" "") -include(${PROJECT_SOURCE_DIR}/stir_test_exe_targets.cmake) +include(stir_test_exe_targets) diff --git a/src/utilities/CMakeLists.txt b/src/utilities/CMakeLists.txt index b0642f86b8..a4a8cd9c88 100644 --- a/src/utilities/CMakeLists.txt +++ b/src/utilities/CMakeLists.txt @@ -69,4 +69,4 @@ if (AVW_FOUND) list(APPEND ${dir_EXE_SOURCES} conv_AVW) endif() -include(../stir_exe_targets.cmake) +include(stir_exe_targets) diff --git a/src/utilities/ecat/CMakeLists.txt b/src/utilities/ecat/CMakeLists.txt index 4eaa4fb865..bc7da310e5 100644 --- a/src/utilities/ecat/CMakeLists.txt +++ b/src/utilities/ecat/CMakeLists.txt @@ -13,4 +13,4 @@ set(${dir_EXE_SOURCES} ) -include(../../stir_exe_targets.cmake) +include(stir_exe_targets)