Merge remote-tracking branch 'gerrit/release-4-6'
authorRoland Schulz <roland@utk.edu>
Wed, 8 Feb 2012 18:16:42 +0000 (13:16 -0500)
committerRoland Schulz <roland@utk.edu>
Wed, 8 Feb 2012 18:20:19 +0000 (13:20 -0500)
Conflicts:
src/gmxlib/CMakeLists.txt
src/gromacs/selection/parser.cpp
src/gromacs/selection/parser.h
src/gromacs/selection/parser.y
src/gromacs/selection/scanner_internal.cpp

Modified:
src/gromacs/CMakeLists.txt
src/gromacs/gmxlib/CMakeLists.txt

The modifications in src/gromacs/*/CMakeLists.txt copy the NASM
renaming changes originally in src/gmxlib/CMakeLists.txt.

None of the parser and scanner modifications are included (whole
file resolved in favor of master).

Change-Id: Ic05705bf6d35b460ab9b6ae6ea315848514eadc9

1  2 
CMakeLists.txt
src/gromacs/CMakeLists.txt
src/gromacs/gmxlib/CMakeLists.txt
src/gromacs/gmxlib/nonbonded/nonbonded.c

diff --cc CMakeLists.txt
Simple merge
index b8310c0761c70177b6f30db3362a4944baadd0e3,0000000000000000000000000000000000000000..5b586a19c7da2ad04875ddb237c3495bcbd957e4
mode 100644,000000..100644
--- /dev/null
@@@ -1,86 -1,0 +1,86 @@@
- if(GMX_ASM_USEASM-NASM)
-   enable_language(ASM-NASM)
 +set(LIBGROMACS_SOURCES)
 +
 +add_subdirectory(legacyheaders)
 +add_subdirectory(gmxlib)
 +add_subdirectory(mdlib)
 +add_subdirectory(gmxpreprocess)
 +add_subdirectory(analysisdata)
 +add_subdirectory(fatalerror)
 +add_subdirectory(options)
 +add_subdirectory(selection)
 +add_subdirectory(trajectoryanalysis)
 +add_subdirectory(utility)
 +
 +file(GLOB LIBGROMACS_HEADERS *.h)
 +install(FILES ${LIBGROMACS_HEADERS} DESTINATION ${INCL_INSTALL_DIR}/gromacs
 +        COMPONENT development)
 +
 +# only fiddle with assembly kernels if we're not doing OpenMM build
 +if(NOT GMX_OPENMM) 
-                        COMMAND ${CMAKE_ASM-NASM_COMPILER} -f ${CMAKE_ASM-NASM_OBJECT_FORMAT} -o ${OBJ} ${SRC})
++if(GMX_ASM_USEASM_NASM)
++  enable_language(ASM_NASM)
 +  # if NASM is used, we need a special build command for windows...
 +  FOREACH(SRC ${GMX_SSEKERNEL_ASM_SRC})
 +    GET_FILENAME_COMPONENT(FILE_BASE ${SRC} NAME_WE)
 +    SET(OBJ ${CMAKE_CURRENT_BINARY_DIR}/${FILE_BASE}${CMAKE_C_OUTPUT_EXTENSION})
 +
 +    ADD_CUSTOM_COMMAND(OUTPUT ${OBJ}
 +                       MAIN_DEPENDENCY ${SRC}
- else(GMX_ASM_USEASM-NASM)
++                       COMMAND ${CMAKE_ASM_NASM_COMPILER} -f ${CMAKE_ASM_NASM_OBJECT_FORMAT} -o ${OBJ} ${SRC})
 +
 +    SET(ALL_ASM_OBJS ${ALL_ASM_OBJS} ${OBJ})
 +  ENDFOREACH(SRC ${GMX_SSEKERNEL_ASM_SRC})
 +  set(GMX_SSEKERNEL_ASM_SRC ${ALL_ASM_OBJS})
- endif(GMX_ASM_USEASM-NASM)
++else(GMX_ASM_USEASM_NASM)
 +  enable_language(ASM-ATT)
 +  SET(CMAKE_ASM-ATT_COMPILER ${CMAKE_C_COMPILER})
 +  if(GMX_IA32_ASM)
 +    set_source_files_properties(${GMX_SSEKERNEL_ASM_SRC} PROPERTIES COMPILE_FLAGS "-c -m32")
 +  else()
 +    set_source_files_properties(${GMX_SSEKERNEL_ASM_SRC} PROPERTIES COMPILE_FLAGS "-c -m64")
 +  endif()
++endif(GMX_ASM_USEASM_NASM)
 +endif(NOT GMX_OPENMM)
 +
 +list(APPEND LIBGROMACS_SOURCES ${GMXLIB_SOURCES} ${GMX_SSEKERNEL_ASM_SRC} ${MDLIB_SOURCES})
 +
 +# add target that generates version.c every time a make is run
 +# only do this if we generate the version
 +if (USE_VERSION_H)
 +    add_custom_target(gmx_version ALL
 +            COMMAND ${CMAKE_COMMAND} 
 +                -D GIT_EXECUTABLE="${GIT_EXECUTABLE}"
 +                -D GIT_VERSION="${GIT_VERSION}"
 +                -D PROJECT_VERSION="${PROJECT_VERSION}"
 +                -D PROJECT_SOURCE_DIR="${PROJECT_SOURCE_DIR}"
 +                -D VERSION_C_CMAKEIN="${CMAKE_CURRENT_SOURCE_DIR}/version.c.cmakein"
 +                -D VERSION_C_OUT="${CMAKE_CURRENT_BINARY_DIR}/version.c"
 +                -P ${CMAKE_SOURCE_DIR}/cmake/gmxGenerateVersionInfo.cmake 
 +            WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/src/gmxlib 
 +            DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/version.c.cmakein
 +            COMMENT "Generating version information")
 +    list(APPEND LIBGROMACS_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/version.c) # auto-generated
 +    set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/version.c 
 +                                PROPERTIES GENERATED true)
 +endif (USE_VERSION_H)
 +
 +add_library(libgromacs ${LIBGROMACS_SOURCES})
 +if (USE_VERSION_H)
 +    add_dependencies(libgromacs gmx_version)
 +endif (USE_VERSION_H)
 +target_link_libraries(libgromacs
 +                      ${GMX_EXTRA_LIBRARIES} ${FFT_LIBRARIES} ${XML_LIBRARIES}
 +                      ${THREAD_LIB})
 +set_target_properties(libgromacs PROPERTIES
 +                      OUTPUT_NAME "gromacs${GMX_LIBS_SUFFIX}"
 +                      SOVERSION ${SOVERSION}
 +                      INSTALL_NAME_DIR "${LIB_INSTALL_DIR}")
 +
 +install(TARGETS libgromacs DESTINATION ${LIB_INSTALL_DIR} COMPONENT libraries)
 +
 +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libgromacs.pc.cmakein
 +               ${CMAKE_CURRENT_BINARY_DIR}/libgromacs.pc @ONLY)
 +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libgromacs.pc
 +        DESTINATION ${LIB_INSTALL_DIR}/pkgconfig
 +        RENAME "libgromacs${GMX_LIBS_SUFFIX}.pc"
 +        COMPONENT development)
index 3403ba58deac1ec9a4502244be184643aebfb251,0000000000000000000000000000000000000000..d08527e203b93296573ab3e2d785e507c622385d
mode 100644,000000..100644
--- /dev/null
@@@ -1,80 -1,0 +1,80 @@@
-   if(GMX_ASM_USEASM-NASM)
 +include_directories(${CMAKE_CURRENT_SOURCE_DIR})
 +
 +# The nonbonded directory contains subdirectories that are only
 +# conditionally built, so we cannot use a GLOB_RECURSE here.
 +file(GLOB GMXLIB_SOURCES *.c 
 +     statistics/*.c nonbonded/*.c nonbonded/nb_kernel_c/*.c
 +     nonbonded/nb_kernel_adress_c/*.c)
 +
 +if(GMX_DOUBLE)
 +  set(SSETYPE sse2)
 +else()
 +  set(SSETYPE sse)
 +endif()
 +
 +if(GMX_IA32_ASM)
 +  file(GLOB GMX_SSEKERNEL_C_SRC   nonbonded/nb_kernel_ia32_${SSETYPE}/*.c)
-   if(GMX_ASM_USEASM-NASM)
++  if(GMX_ASM_USEASM_NASM)
 +    file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*intel_syntax*.s)    
 +  else()
 +    file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*${SSETYPE}.s nonbonded/nb_kernel_ia32_${SSETYPE}/*asm.s)
 +  endif()
 +endif(GMX_IA32_ASM)
 +
 +if(GMX_X86_64_ASM)
 +  file(GLOB GMX_SSEKERNEL_C_SRC   nonbonded/nb_kernel_x86_64_${SSETYPE}/*.c)
++  if(GMX_ASM_USEASM_NASM)
 +    file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*intel_syntax*.s)
 +  else()
 +    file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*${SSETYPE}.s nonbonded/nb_kernel_x86_64_${SSETYPE}/*asm.s)
 +  endif()
 +endif(GMX_X86_64_ASM)
 +
 +if(GMX_FORTRAN)
 +  if (GMX_DOUBLE)
 +    file(GLOB FORTRAN_SOURCES nonbonded/nb_kernel_f77_double/*.[cf])
 +  else(GMX_DOUBLE)
 +    file(GLOB FORTRAN_SOURCES nonbonded/nb_kernel_f77_single/*.[cf])
 +  endif(GMX_DOUBLE)
 +endif(GMX_FORTRAN)
 +
 +if(GMX_POWER6)
 +  file(GLOB FORTRAN_SOURCES nonbonded/nb_kernel_power6/*.[cF])
 +endif(GMX_POWER6)
 +
 +if(GMX_BLUEGENE)
 +  file(GLOB GMX_BLUEGENE_C_SRC nonbonded/nb_kernel_bluegene/*.c)
 +endif(GMX_BLUEGENE)
 +
 +if(GMX_PPC_ALTIVEC)
 +  file(GLOB GMX_PPC_ALTIVEC_SRC nonbonded/nb_kernel_ppc_altivec/*.c)
 +endif(GMX_PPC_ALTIVEC)
 +
 +if(NOT GMX_EXTERNAL_BLAS)
 +  file(GLOB BLAS_SOURCES gmx_blas/*.c)
 +endif(NOT GMX_EXTERNAL_BLAS)
 +
 +if(NOT GMX_EXTERNAL_LAPACK)
 +  file(GLOB LAPACK_SOURCES gmx_lapack/*.c)
 +endif(NOT GMX_EXTERNAL_LAPACK)
 +
 +# This would be the standard way to include thread_mpi, but we want libgmx
 +# to link the functions directly
 +#if(GMX_THREADS)
 +#    add_subdirectory(thread_mpi)
 +#endif(GMX_THREADS)
 +#target_link_libraries(gmx ${GMX_EXTRA_LIBRARIES} ${THREAD_MPI_LIB})
 +
 +# Files called xxx_test.c are test drivers with a main() function for module xxx.c,
 +# so they should not be included in the library
 +file(GLOB_RECURSE NOT_GMXLIB_SOURCES *_test.c *\#*)
 +list(REMOVE_ITEM GMXLIB_SOURCES ${NOT_GMXLIB_SOURCES})  
 +
 +# An ugly hack to get absolute paths...
 +file(GLOB THREAD_MPI_SOURCES ${THREAD_MPI_SRC})
 +
 +set(GMX_SSEKERNEL_ASM_SRC ${GMX_SSEKERNEL_ASM_SRC} PARENT_SCOPE)
 +set(GMXLIB_SOURCES ${GMXLIB_SOURCES} ${BLAS_SOURCES} ${LAPACK_SOURCES}
 +    ${GMX_SSEKERNEL_C_SRC} ${FORTRAN_SOURCES}
 +    ${GMX_BLUEGENE_C_SRC} ${GMX_PPC_ALTIVEC_SRC} ${THREAD_MPI_SOURCES}
 +    PARENT_SCOPE)