Skip to content

Commit

Permalink
Tidy up build specs a bit
Browse files Browse the repository at this point in the history
Better to specify TESTSOURCES_REMAIN as ALL_TESTSOURCES less the ones
that are being explicitly put elsewhere (so that things are less likely
to get missed).
  • Loading branch information
tonyelewis committed Jan 26, 2018
1 parent 230a11b commit 97eaf82
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 44 deletions.
81 changes: 40 additions & 41 deletions source/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,6 @@ include( ./auto_generated_file_list.cmake )

include_directories( $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/uni> )

set(
NORMSOURCES_REMAIN
${NORMSOURCES_UNI_ACQUIRER}
${NORMSOURCES_UNI_ALIGNMENT}
${NORMSOURCES_UNI_DISPLAY}
${NORMSOURCES_UNI_FILE}
${NORMSOURCES_UNI_OUTPUTTER}
${NORMSOURCES_UNI_SCAN}
${NORMSOURCES_UNI_SCORE}
${NORMSOURCES_UNI_SSAP}
${NORMSOURCES_UNI_STRUCTURE}
${NORMSOURCES_UNI_SUPERPOSITION}
)

add_library( ct_biocore ${NORMSOURCES_BIOCORE} )
add_library( ct_cath_assign_domains ${NORMSOURCES_CATH_ASSIGN_DOMAINS} )
add_library( ct_cath_cluster ${NORMSOURCES_CATH_CLUSTER} )
Expand All @@ -32,7 +18,7 @@ add_library( ct_cluster ${NORMSOURCES_CLUSTER} )
add_library( ct_common ${NORMSOURCES_SRC_COMMON} )
add_library( ct_display_colour ${NORMSOURCES_DISPLAY_COLOUR} )
add_library( ct_options ${NORMSOURCES_OPTIONS} )
add_library( ct_remain ${NORMSOURCES_REMAIN} )
add_library( ct_uni ${NORMSOURCES_UNI} )
add_library( ct_resolve_hits ${NORMSOURCES_RESOLVE_HITS} )
add_library( ct_seq ${NORMSOURCES_SEQ} )
add_library( ct_test ${NORMSOURCES_SRC_TEST} )
Expand All @@ -52,7 +38,7 @@ target_include_directories( ct_chopping PUBLIC $<BUILD_INTERFACE:${CM
target_include_directories( ct_cluster PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> )
target_include_directories( ct_display_colour PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> )
target_include_directories( ct_options PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> )
target_include_directories( ct_remain PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> )
target_include_directories( ct_uni PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> )
target_include_directories( ct_resolve_hits PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> )
target_include_directories( ct_seq PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> )

Expand All @@ -68,34 +54,47 @@ target_link_libraries ( ct_cluster PUBLIC ct_common
target_link_libraries ( ct_common PUBLIC Boost::boost Boost::log Boost::thread Boost::timer ${RT_LIBRARY} )
target_link_libraries ( ct_display_colour PUBLIC ct_common )
target_link_libraries ( ct_options PUBLIC ct_common ct_chopping Boost::program_options )
target_link_libraries ( ct_remain PUBLIC ct_common )
target_link_libraries ( ct_uni PUBLIC ct_common )
target_link_libraries ( ct_resolve_hits PUBLIC ct_common )
target_link_libraries ( ct_seq PUBLIC ct_common )
target_link_libraries ( ct_test PUBLIC ct_common )

#####################################################################
#####################################################################

# TODO: Have ALL_NORMSOURCES and ALL_TESTSOURCES get auto-generated in auto_generated_file_list.cmake
set(
TESTSOURCES_REMAIN
ALL_TESTSOURCES
${TESTSOURCES_BIOCORE}
${TESTSOURCES_CATH_ASSIGN_DOMAINS}
${TESTSOURCES_CATH_CLUSTER}
${TESTSOURCES_CATH_REFINE_ALIGN}
${TESTSOURCES_CATH_SCORE_ALIGN}
${TESTSOURCES_CATH_SUPERPOSE}
${TESTSOURCES_CHOPPING}
${TESTSOURCES_CLUSTER}
${TESTSOURCES_DISPLAY_COLOUR}
${TESTSOURCES_EXECUTABLES}
${TESTSOURCES_OPTIONS}
${TESTSOURCES_TEST_PREDICATE}
${TESTSOURCES_UNI_ACQUIRER}
${TESTSOURCES_UNI_ALIGNMENT}
${TESTSOURCES_UNI_DISPLAY}
${TESTSOURCES_UNI_FILE}
${TESTSOURCES_UNI_OUTPUTTER}
${TESTSOURCES_UNI_SCAN}
${TESTSOURCES_UNI_SCORE}
${TESTSOURCES_UNI_SSAP}
${TESTSOURCES_UNI_STRUCTURE}
${TESTSOURCES_UNI_SUPERPOSITION}
${TESTSOURCES_RESOLVE_HITS}
${TESTSOURCES_SEQ}
${TESTSOURCES_SRC_CLUSTAGGLOM}
${TESTSOURCES_SRC_COMMON}
${TESTSOURCES_SRC_TEST}
${TESTSOURCES_UNI}
)

set( TESTSOURCES_REMAIN ${ALL_TESTSOURCES} )
list( REMOVE_ITEM TESTSOURCES_REMAIN
${TESTSOURCES_EXECUTABLES}

${TESTSOURCES_BIOCORE}
${TESTSOURCES_CHOPPING}
${TESTSOURCES_CLUSTER}
${TESTSOURCES_RESOLVE_HITS}
${TESTSOURCES_SEQ}
${TESTSOURCES_SRC_CLUSTAGGLOM}
${TESTSOURCES_SRC_COMMON}
)

add_library( testsrcs_biocore OBJECT ${TESTSOURCES_BIOCORE} )
Expand Down Expand Up @@ -154,15 +153,15 @@ add_executable( cath-superpose ${NORMSOURCES_EXECUTABLES_CATH_SUPERPOSE}
#####################################################################
#####################################################################

target_link_libraries( build-test PRIVATE ct_cath_cluster ct_cath_refine_align ct_cath_superpose ct_clustagglom ct_cluster ct_resolve_hits ct_test ct_seq ct_remain ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization Boost::unit_test_framework ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-assign-domains PRIVATE ct_cath_assign_domains ct_remain ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-cluster PRIVATE ct_cath_cluster ct_seq ct_options ct_chopping ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-map-clusters PRIVATE ct_cluster ct_seq ct_options ct_chopping ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-refine-align PRIVATE ct_cath_refine_align ct_remain ct_options ct_biocore ct_chopping ct_display_colour Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-resolve-hits PRIVATE ct_resolve_hits ct_seq ct_options ct_biocore ct_chopping ct_display_colour )
target_link_libraries( cath-score-align PRIVATE ct_cath_score_align ct_remain ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-ssap PRIVATE ct_remain ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-superpose PRIVATE ct_cath_superpose ct_remain ct_options ct_biocore ct_chopping ct_display_colour Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( build-test PRIVATE ct_cath_cluster ct_cath_refine_align ct_cath_superpose ct_clustagglom ct_cluster ct_resolve_hits ct_test ct_seq ct_uni ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization Boost::unit_test_framework ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-assign-domains PRIVATE ct_cath_assign_domains ct_uni ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-cluster PRIVATE ct_cath_cluster ct_seq ct_options ct_chopping ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-map-clusters PRIVATE ct_cluster ct_seq ct_options ct_chopping ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-refine-align PRIVATE ct_cath_refine_align ct_uni ct_options ct_biocore ct_chopping ct_display_colour Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-resolve-hits PRIVATE ct_resolve_hits ct_seq ct_options ct_biocore ct_chopping ct_display_colour )
target_link_libraries( cath-score-align PRIVATE ct_cath_score_align ct_uni ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-ssap PRIVATE ct_uni ct_options ct_biocore ct_chopping ct_display_colour Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-superpose PRIVATE ct_cath_superpose ct_uni ct_options ct_biocore ct_chopping ct_display_colour Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )

#####################################################################
#####################################################################
Expand Down Expand Up @@ -200,9 +199,9 @@ IF ( BUILD_EXTRA_CATH_TOOLS )
add_executable( check-pdb ${NORMSOURCES_EXECUTABLES_CATH_CHECK_PDB} )
add_executable( snap-judgement ${NORMSOURCES_EXECUTABLES_SNAP_JUDGEMENT} )

target_link_libraries( cath-extract-pdb PRIVATE ct_remain ct_biocore ct_chopping ct_display_colour ct_options Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( check-pdb PRIVATE ct_remain ct_biocore ct_chopping ct_display_colour ct_options Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( snap-judgement PRIVATE ct_cath_superpose ct_remain ct_biocore ct_chopping ct_display_colour ct_options Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( cath-extract-pdb PRIVATE ct_uni ct_biocore ct_chopping ct_display_colour ct_options Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( check-pdb PRIVATE ct_uni ct_biocore ct_chopping ct_display_colour ct_options Boost::filesystem Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )
target_link_libraries( snap-judgement PRIVATE ct_cath_superpose ct_uni ct_biocore ct_chopping ct_display_colour ct_options Boost::iostreams Boost::serialization ${GSL_LIB_SUFFIX} )

ENDIF()

Expand Down
6 changes: 3 additions & 3 deletions source/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Layout:
* cath_tools_git_version.hpp.in - Template from which CMake can make a header in the build directory with the Git version details
* CMakeLists.txt - CMake configuration file for these sources
* src_* - Individual libraries in separate directories to prevent inappropriate #include-ing
* uni - A big mess of interdependent source code that should be separated out into libraries
* [anything else] - Library that isn't quite separated enough as yet to go into its own separate src_* directory
* uni - A big mess of interdependent source code that should be separated out into individual libraries
* [anything else] - Separate libraries that aren't quite separated enough as yet to go into their own separate src_* directories

Ideally, code should migrate from uni / [anything else] into src_*.
Ideally, code should migrate: uni -> [anything else] -> src_*.

0 comments on commit 97eaf82

Please sign in to comment.