1 include_directories(${CMAKE_CURRENT_SOURCE_DIR})
3 # The nonbonded directory contains subdirectories that are only
4 # conditionally built, so we cannot use a GLOB_RECURSE here.
5 file(GLOB GMXLIB_SOURCES *.c *.cpp
6 statistics/*.c nonbonded/*.c nonbonded/nb_kernel_c/*.c
7 nonbonded/nb_kernel_adress_c/*.c)
16 file(GLOB GMX_SSEKERNEL_C_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*.c)
17 if(GMX_ASM_USEASM_NASM)
18 file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*intel_syntax*.s)
20 file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*${SSETYPE}.s nonbonded/nb_kernel_ia32_${SSETYPE}/*asm.s)
25 file(GLOB GMX_SSEKERNEL_C_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*.c)
26 if(GMX_ASM_USEASM_NASM)
27 file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*intel_syntax*.s)
29 file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*${SSETYPE}.s nonbonded/nb_kernel_x86_64_${SSETYPE}/*asm.s)
35 file(GLOB FORTRAN_SOURCES nonbonded/nb_kernel_f77_double/*.[cf])
37 file(GLOB FORTRAN_SOURCES nonbonded/nb_kernel_f77_single/*.[cf])
42 file(GLOB FORTRAN_SOURCES nonbonded/nb_kernel_power6/*.[cF])
46 file(GLOB GMX_BLUEGENE_C_SRC nonbonded/nb_kernel_bluegene/*.c)
50 file(GLOB GMX_PPC_ALTIVEC_SRC nonbonded/nb_kernel_ppc_altivec/*.c)
51 endif(GMX_PPC_ALTIVEC)
53 # This would be the standard way to include thread_mpi, but we want libgmx
54 # to link the functions directly
56 # add_subdirectory(thread_mpi)
57 #endif(GMX_THREAD_MPI)
58 #target_link_libraries(gmx ${GMX_EXTRA_LIBRARIES} ${THREAD_MPI_LIB})
60 # Files called xxx_test.c are test drivers with a main() function for module xxx.c,
61 # so they should not be included in the library
62 file(GLOB_RECURSE NOT_GMXLIB_SOURCES *_test.c *\#*)
63 list(REMOVE_ITEM GMXLIB_SOURCES ${NOT_GMXLIB_SOURCES})
66 set(GMXLIB_SOURCES ${GMXLIB_SOURCES} ${CMAKE_SOURCE_DIR}/src/external/vmd_molfile/vmddlopen.c)
68 list(REMOVE_ITEM GMXLIB_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/vmdio.c)
71 # An ugly hack to get absolute paths...
72 file(GLOB THREAD_MPI_SOURCES ${THREAD_MPI_SRC})
73 file(GLOB THREAD_MPI_CXX_SOURCES ${THREAD_MPI_CXX_SRC})
75 set(GMX_SSEKERNEL_ASM_SRC ${GMX_SSEKERNEL_ASM_SRC} PARENT_SCOPE)
76 set(GMXLIB_SOURCES ${GMXLIB_SOURCES}
77 ${GMX_SSEKERNEL_C_SRC} ${FORTRAN_SOURCES}
78 ${GMX_BLUEGENE_C_SRC} ${GMX_PPC_ALTIVEC_SRC} ${THREAD_MPI_SOURCES}
79 ${THREAD_MPI_CXX_SOURCES}