2 # This file is part of the GROMACS molecular simulation package.
4 # Copyright (c) 2012,2013, by the GROMACS development team, led by
5 # David van der Spoel, Berk Hess, Erik Lindahl, and including many
6 # others, as listed in the AUTHORS file in the top-level source
7 # directory and at http://www.gromacs.org.
9 # GROMACS is free software; you can redistribute it and/or
10 # modify it under the terms of the GNU Lesser General Public License
11 # as published by the Free Software Foundation; either version 2.1
12 # of the License, or (at your option) any later version.
14 # GROMACS is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 # Lesser General Public License for more details.
19 # You should have received a copy of the GNU Lesser General Public
20 # License along with GROMACS; if not, see
21 # http://www.gnu.org/licenses, or write to the Free Software Foundation,
22 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24 # If you want to redistribute modifications to GROMACS, please
25 # consider that scientific software is very special. Version
26 # control is crucial - bugs must be traceable. We will be happy to
27 # consider code for inclusion in the official distribution, but
28 # derived work must not be called official GROMACS. Details are found
29 # in the README & COPYING files - if they are missing, get the
30 # official version at http://www.gromacs.org.
32 # To help us fund GROMACS development, we humbly ask that you cite
33 # the research papers on the package. Check out http://www.gromacs.org.
35 install(FILES CMakeLists.txt.template
36 DESTINATION ${DATA_INSTALL_DIR}/template
38 COMPONENT development)
40 file(GLOB_RECURSE GROMACS_HEADERS ${CMAKE_SOURCE_DIR}/include *.h)
41 add_custom_command(OUTPUT gromacs
42 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/include gromacs
43 DEPENDS ${GROMACS_HEADERS})
44 add_custom_target(gromacs_include_links DEPENDS gromacs)
46 option(GMX_BUILD_TEMPLATE "Build gromacs template program" ON)
47 mark_as_advanced(GMX_BUILD_TEMPLATE)
48 # GMX_PREFER_STATIC_OPENMP=yes is a special case to build binaries
49 # to distribute and as the template is not installed it can be
51 # The template is build in a user-like environment, hence we use
52 # flags from PKG_CFLAGS. Again GMX_PREFER_STATIC_OPENMP=yes would
53 # need special link flags (OpenMP_LINKER_FLAGS), which are not
55 if (GMX_BUILD_TEMPLATE AND NOT GMX_PREFER_STATIC_OPENMP)
56 add_executable(template template.c)
57 remove_definitions( -DHAVE_CONFIG_H )
58 add_definitions("${PKG_CFLAGS}")
59 target_link_libraries(template gmx)
60 include_directories("${CMAKE_CURRENT_BINARY_DIR}")
61 add_dependencies(template gromacs_include_links)
64 install(FILES README template.c Makefile.pkg
65 DESTINATION ${DATA_INSTALL_DIR}/template
66 COMPONENT development)
68 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/FindGROMACS.cmakein
69 ${CMAKE_CURRENT_BINARY_DIR}/cmake/FindGROMACS.cmake @ONLY)
71 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cmake/FindGROMACS.cmake
72 DESTINATION ${DATA_INSTALL_DIR}/template/cmake
73 COMPONENT development)