Merge release-4-6 into master
[alexxy/gromacs.git] / src / tools / CMakeLists.txt
1 add_library(gmxana 
2             autocorr.c      expfit.c        polynomials.c   levenmar.c      
3             anadih.c        pp2shift.c      dlist.c         
4             eigio.c         cmat.c          nsc.c
5             hxprops.c       fitahx.c        
6             geminate.c      nsfactor.c
7             gmx_analyze.c   gmx_anaeig.c    gmx_angle.c     gmx_bond.c      
8             gmx_bundle.c    gmx_chi.c       gmx_cluster.c   gmx_confrms.c   
9             gmx_covar.c     gmx_current.c   
10             gmx_density.c   gmx_densmap.c       
11             gmx_dielectric.c        
12             gmx_kinetics.c  gmx_spatial.c   gmx_tune_pme.c
13             gmx_dipoles.c   gmx_disre.c     gmx_dist.c      gmx_dyndom.c    
14             gmx_enemat.c    gmx_energy.c    gmx_lie.c       gmx_filter.c    
15             gmx_gyrate.c    gmx_h2order.c   gmx_hbond.c     gmx_helix.c     
16             gmx_mindist.c   gmx_msd.c       gmx_morph.c     gmx_nmeig.c     
17             gmx_nmens.c     gmx_order.c     gmx_principal.c 
18             gmx_polystat.c  gmx_potential.c gmx_rama.c      
19             gmx_rdf.c       gmx_rms.c       gmx_rmsf.c      
20             gmx_rotacf.c    gmx_saltbr.c    gmx_sas.c       gmx_sans.c
21             gmx_rmsdist.c   gmx_rotmat.c
22             gmx_sgangle.c   gmx_sorient.c   gmx_spol.c      gmx_tcaf.c      
23             gmx_traj.c      gmx_velacc.c    gmx_helixorient.c 
24             gmx_clustsize.c gmx_mdmat.c     gmx_wham.cpp
25             correl.c        gmx_sham.c      gmx_nmtraj.c    
26             gmx_trjconv.c   gmx_trjcat.c    gmx_trjorder.c  gmx_xpm2ps.c    
27             gmx_editconf.c  gmx_genbox.cpp    gmx_genion.c    gmx_genconf.c
28             gmx_genpr.c     gmx_eneconv.c   gmx_vanhove.c   gmx_wheel.c     
29             addconf.c       calcpot.c       edittop.c       gmx_bar.c
30             gmx_pme_error.c gmx_options.c   gmx_dos.c
31             gmx_hydorder.c  gmx_densorder.c powerspect.c    dens_filter.c
32             binsearch.c     gmx_dyecoupl.c  gmx_make_edi.c  gmx_sigeps.c
33             gmx_do_dssp.c   gmx_anadock.c   gmx_make_ndx.c  gmx_mk_angndx.c
34             gmx_saxs.c
35             )
36
37
38 target_link_libraries(gmxana libgromacs ${GSL_LIBRARIES} ${GMX_SHARED_LINKER_FLAGS})
39 set_target_properties(gmxana PROPERTIES OUTPUT_NAME "gmxana${GMX_LIBS_SUFFIX}" SOVERSION ${SOVERSION}
40     COMPILE_FLAGS "${OpenMP_C_FLAGS}")
41
42 # List of programs with single corresponding .c source file,
43 # used to create build rules automatically.
44 #
45 set(GMX_TOOLS_PROGRAMS
46     g_tune_pme g_pme_error
47     )
48
49 set(GMX_TOOLS_PROGRAMS_NOT_FOR_INSTALLATION
50   # names of any executables that should be built but not installed can go here
51     )
52
53
54 foreach(TOOL ${GMX_TOOLS_PROGRAMS} ${GMX_TOOLS_PROGRAMS_NOT_FOR_INSTALLATION})
55     add_executable(${TOOL} ${TOOL}.c)
56     gmx_add_man_page(${TOOL})
57     target_link_libraries(${TOOL} gmxana ${GMX_EXE_LINKER_FLAGS})
58     set_target_properties(${TOOL} PROPERTIES OUTPUT_NAME "${TOOL}${GMX_BINARY_SUFFIX}")
59 endforeach(TOOL ${GMX_TOOLS_PROGRAMS}) 
60
61
62 install(TARGETS gmxana DESTINATION ${LIB_INSTALL_DIR} COMPONENT runtime)
63 install(TARGETS ${GMX_TOOLS_PROGRAMS}
64         DESTINATION ${BIN_INSTALL_DIR}
65         COMPONENT runtime)
66
67 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libgmxana.pc.cmakein ${CMAKE_CURRENT_BINARY_DIR}/libgmxana.pc @ONLY)
68 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libgmxana.pc
69         DESTINATION ${LIB_INSTALL_DIR}/pkgconfig
70         RENAME "libgmxana${GMX_LIBS_SUFFIX}.pc"
71         COMPONENT development)