[Cmake] Using CMake for scientific computing ?
Andy Cedilnik
andy.cedilnik at kitware.com
Wed Mar 12 16:56:12 EST 2003
Hi Christophe,
Send to fast.
There is more:
You can do something like:
IF(WIN32)
MESSAGE("Cannot do this on windows I guess")
ELSE(WIN32)
EXEC_PROGRAM(ls ${FortranProject_SOURCE_DIR}
ARGS *.f
OUTPUT_VARIABLE RSOURCES)
ENDIF(WIN32)
Then you can do something like:
SET(SOURCES "")
FOREACH(rsrc ${RSOURCES})
GET_FILENAME_COMPONENT(src ${rsrc} NAME_WE)
SET(SOURCES ${SOURCES} ${src})
ENDFOREACH(rsrc)
Andy
On Wed, 2003-03-12 at 16:51, Andy Cedilnik wrote:
> Hi Christophe,
>
> Some CMake 1.6 magic here, so make sure to update.
>
> PROJECT(FortranProject)
>
> ADD_CUSTOM_TARGET(Project ALL)
>
> FOREACH(source ${SOURCES})
> ADD_CUSTOM_COMMAND(TARGET Project
> SOURCE ${FortranProject_SOURCE_DIR}/${source}.f
> COMMAND g77
> ARGS -o ${FortranProject_BINARY_DIR}/${source}.o
> ${FortranProject_SOURCE_DIR}/${source}.f
> OUTPUTS ${FortranProject_BINARY_DIR}/${source}.o)
> SET(OUTPUTS ${OUTPUTS} ${FortranProject_BINARY_DIR}/${source}.o)
> SET(OUTPUTS_STRING
> "${OUTPUTS_STRING} ${FortranProject_BINARY_DIR}/${source}.o")
> ENDFOREACH(source)
> ADD_CUSTOM_COMMAND(TARGET Project
> COMMAND ar
> ARGS cr ${FortranProject_BINARY_DIR}/libProject.a
> ${OUTPUTS_STRING}
> OUTPUTS ${FortranProject_BINARY_DIR}/libProject.a
> DEPENDS ${OUTPUTS})
>
> ADD_CUSTOM_COMMAND(TARGET Project
> SOURCE Project
> DEPENDS ${FortranProject_BINARY_DIR}/libProject.a)
>
More information about the CMake
mailing list