split openEMS into libopenEMS and openEMS binary

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
This commit is contained in:
Thorsten Liebig 2015-12-19 15:01:56 +01:00
parent 205c1546f6
commit 8ff7ed4075
6 changed files with 104 additions and 87 deletions

View File

@ -9,6 +9,14 @@ ENDIF()
PROJECT(openEMS CXX)
cmake_minimum_required(VERSION 2.8)
# default
set(LIB_VERSION_MAJOR 0)
set(LIB_VERSION_MINOR 0)
set(LIB_VERSION_PATCH 33)
set(LIB_VERSION_STRING ${LIB_VERSION_MAJOR}.${LIB_VERSION_MINOR}.${LIB_VERSION_PATCH})
set(VERSION "v${LIB_VERSION_STRING}")
IF(EXISTS ${PROJECT_SOURCE_DIR}/localConfig.cmake)
include(${PROJECT_SOURCE_DIR}/localConfig.cmake)
ENDIF()
@ -131,36 +139,28 @@ message(STATUS "vtk libraries " ${vtk_LIBS})
include(${VTK_USE_FILE})
INCLUDE_DIRECTORIES (${VTK_INCLUDE_DIR})
if(WIN32)
set(CMAKE_CXX_FLAGS "-msse")
endif()
#set(CMAKE_CXX_FLAGS "-msse -march=native")
# independent tool
ADD_SUBDIRECTORY( nf2ff )
set(SOURCES
openems.cpp
)
# libs
ADD_SUBDIRECTORY( tools )
ADD_SUBDIRECTORY( FDTD )
ADD_SUBDIRECTORY( FDTD/extensions )
# depend on CSXCAD
ADD_SUBDIRECTORY( Common )
# main program
set(SOURCES
main.cpp
openems.cpp
)
INCLUDE_DIRECTORIES( ${openEMS_SOURCE_DIR} ) #find tools
ADD_EXECUTABLE( openEMS ${SOURCES} )
message(STATUS "Sources:" ${SOURCES})
add_library( openEMS SHARED ${SOURCES})
set_target_properties(openEMS PROPERTIES VERSION ${LIB_VERSION_STRING} SOVERSION ${LIB_VERSION_MAJOR})
TARGET_LINK_LIBRARIES( openEMS
FDTD
Common
extensions
tools
${CSXCAD_LIBRARIES}
${fparser_LIBRARIES}
tinyxml
@ -169,8 +169,13 @@ TARGET_LINK_LIBRARIES( openEMS
${vtk_LIBS}
)
INSTALL( TARGETS openEMS DESTINATION bin )
# main program
ADD_EXECUTABLE( openEMS_bin main.cpp )
SET_TARGET_PROPERTIES(openEMS_bin PROPERTIES OUTPUT_NAME openEMS)
TARGET_LINK_LIBRARIES(openEMS_bin openEMS)
INSTALL(TARGETS openEMS DESTINATION lib${LIB_SUFFIX})
INSTALL(TARGETS openEMS_bin DESTINATION bin )
if (UNIX)
INSTALL( FILES openEMS.sh
DESTINATION bin

View File

@ -1,21 +1,23 @@
INCLUDE_DIRECTORIES( ${openEMS_SOURCE_DIR} )
#INCLUDE_DIRECTORIES( ${openEMS_SOURCE_DIR} )
set( SOURCES
engine_interface_base.cpp
operator_base.cpp
processcurrent.cpp
processfieldprobe.cpp
processfields.cpp
processfields_fd.cpp
processfields_sar.cpp
processfields_td.cpp
processing.cpp
processintegral.cpp
processmodematch.cpp
processvoltage.cpp
set(SOURCES
${SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/engine_interface_base.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_base.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processcurrent.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processfieldprobe.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processfields.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processfields_fd.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processfields_sar.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processfields_td.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processing.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processintegral.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processmodematch.cpp
${CMAKE_CURRENT_SOURCE_DIR}/processvoltage.cpp
PARENT_SCOPE
)
# Common lib
add_library( Common STATIC ${SOURCES} )
#add_library( Common STATIC ${SOURCES} )

View File

@ -1,25 +1,27 @@
INCLUDE_DIRECTORIES( ${openEMS_SOURCE_DIR} )
#INCLUDE_DIRECTORIES( ${openEMS_SOURCE_DIR} )
set(SOURCES
engine.cpp
operator.cpp
engine_multithread.cpp
operator_cylinder.cpp
engine_cylinder.cpp
engine_sse.cpp
operator_sse.cpp
operator_sse_compressed.cpp
engine_sse_compressed.cpp
operator_multithread.cpp
excitation.cpp
operator_cylindermultigrid.cpp
engine_cylindermultigrid.cpp
engine_interface_fdtd.cpp
engine_interface_sse_fdtd.cpp
engine_interface_cylindrical_fdtd.cpp
${SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/engine.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_multithread.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_cylinder.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_cylinder.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_sse.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_sse.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_sse_compressed.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_sse_compressed.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_multithread.cpp
${CMAKE_CURRENT_SOURCE_DIR}/excitation.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_cylindermultigrid.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_cylindermultigrid.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_interface_fdtd.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_interface_sse_fdtd.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_interface_cylindrical_fdtd.cpp
PARENT_SCOPE
)
# FDTD lib
add_library( FDTD STATIC ${SOURCES} )
#add_library( FDTD STATIC ${SOURCES} )

View File

@ -1,30 +1,32 @@
INCLUDE_DIRECTORIES( ${openEMS_SOURCE_DIR} )
INCLUDE_DIRECTORIES( ${CSXCAD_SOURCE_DIR}/src )
#INCLUDE_DIRECTORIES( ${openEMS_SOURCE_DIR} )
#INCLUDE_DIRECTORIES( ${CSXCAD_SOURCE_DIR}/src )
set(SOURCES
engine_extension.cpp
operator_ext_dispersive.cpp
operator_ext_lorentzmaterial.cpp
operator_ext_conductingsheet.cpp
engine_ext_dispersive.cpp
engine_ext_lorentzmaterial.cpp
engine_ext_cylindermultigrid.cpp
operator_ext_upml.cpp
engine_ext_upml.cpp
operator_extension.cpp
engine_ext_mur_abc.cpp
operator_ext_mur_abc.cpp
operator_ext_cylinder.cpp
engine_ext_cylinder.cpp
operator_ext_excitation.cpp
engine_ext_excitation.cpp
operator_ext_tfsf.cpp
engine_ext_tfsf.cpp
operator_ext_steadystate.cpp
engine_ext_steadystate.cpp
${SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/engine_extension.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_dispersive.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_lorentzmaterial.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_conductingsheet.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_dispersive.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_lorentzmaterial.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_cylindermultigrid.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_upml.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_upml.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_extension.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_mur_abc.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_mur_abc.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_cylinder.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_cylinder.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_excitation.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_excitation.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_tfsf.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_tfsf.cpp
${CMAKE_CURRENT_SOURCE_DIR}/operator_ext_steadystate.cpp
${CMAKE_CURRENT_SOURCE_DIR}/engine_ext_steadystate.cpp
PARENT_SCOPE
)
# FDTD/extensions lib
add_library( extensions STATIC ${SOURCES} )
#add_library( extensions STATIC ${SOURCES} )

View File

@ -11,10 +11,15 @@ cmake_minimum_required(VERSION 2.8)
set(SOURCES
main.cpp
nf2ff.cpp
nf2ff_calc.cpp
nf2ff.cpp
nf2ff_calc.cpp
../tools/array_ops.cpp
../tools/useful.cpp
../tools/hdf5_file_reader.cpp
../tools/hdf5_file_writer.cpp
)
#ADD_SUBDIRECTORY( ../tools )
set(HEADERS
nf2ff.h
nf2ff_calc.h
@ -23,7 +28,6 @@ set(HEADERS
ADD_EXECUTABLE( nf2ff ${SOURCES} )
TARGET_LINK_LIBRARIES( nf2ff
tools
tinyxml
${HDF5_LIBRARIES}
${Boost_LIBRARIES}

View File

@ -1,14 +1,16 @@
set(SOURCES
AdrOp.cpp
ErrorMsg.cpp
array_ops.cpp
global.cpp
hdf5_file_reader.cpp
hdf5_file_writer.cpp
sar_calculation.cpp
useful.cpp
vtk_file_writer.cpp
${SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/AdrOp.cpp
${CMAKE_CURRENT_SOURCE_DIR}/ErrorMsg.cpp
${CMAKE_CURRENT_SOURCE_DIR}/array_ops.cpp
${CMAKE_CURRENT_SOURCE_DIR}/global.cpp
${CMAKE_CURRENT_SOURCE_DIR}/hdf5_file_reader.cpp
${CMAKE_CURRENT_SOURCE_DIR}/hdf5_file_writer.cpp
${CMAKE_CURRENT_SOURCE_DIR}/sar_calculation.cpp
${CMAKE_CURRENT_SOURCE_DIR}/useful.cpp
${CMAKE_CURRENT_SOURCE_DIR}/vtk_file_writer.cpp
PARENT_SCOPE
)
#set(HEADERS
@ -22,5 +24,5 @@ set(SOURCES
#)
# tools lib
add_library(tools STATIC ${SOURCES} )
#add_library(tools STATIC ${SOURCES} )