From 6b21019aae196d79a9523bab0f15ef276f7f2c29 Mon Sep 17 00:00:00 2001 From: Jens Frenkel Date: Wed, 31 Mar 2010 15:25:27 +0000 Subject: [PATCH] - update CMakeFiles for linux git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@5247 f25d12d1-65f4-0310-ae8a-bbce733d8d8e --- Compiler/CMakeLists.txt | 40 ++++++++++++++++--------- Compiler/absyn_builder/CMakeLists.txt | 34 ++++++++++++++------- Compiler/modpar/CMakeLists.txt | 8 ++++- Compiler/runtime/CMakeLists.txt | 22 +++++++++++--- c_runtime/CMakeLists.txt | 10 +++++-- c_runtime/sendData/CMakeLists.txt | 9 ++++-- flat_modelica_parser/src/CMakeLists.txt | 13 ++++++-- modelica_parser/src/CMakeLists.txt | 13 ++++++-- 8 files changed, 107 insertions(+), 42 deletions(-) diff --git a/Compiler/CMakeLists.txt b/Compiler/CMakeLists.txt index df0c4418576..b20135a382b 100644 --- a/Compiler/CMakeLists.txt +++ b/Compiler/CMakeLists.txt @@ -60,18 +60,18 @@ FOREACH(DEP ${ALLMO}) COMMENT "copy ${COPY_DEP} to ${COPY_OUTPUT}") # target fuer OM_OUTPUT - ADD_CUSTOM_TARGET(${DEP}_cp ALL DEPENDS ${COPY_OUTPUT}) + ADD_CUSTOM_TARGET(${DFWE}_cp ALL DEPENDS ${COPY_OUTPUT}) # remember - SET(COPY_ALL ${COPY_ALL} ${DEP}_cp) + SET(COPY_ALL ${COPY_ALL} ${DFWE}_cp) ENDFOREACH(DEP) #.depend: SET(DEPENDT_OUTPUT ${CODEGENDIR}/.depend) # custom command for rml to sig ADD_CUSTOM_COMMAND(OUTPUT ${DEPENDT_OUTPUT} - COMMAND ${RML} -fdump-depends ${SRCMO} > ${DEPENDT_OUTPUT} - DEPENDS ${COPY_ALL} + COMMAND ${RML} -fdump-depends ${SRCMO} > .depend +# DEPENDS ${COPY_ALL} WORKING_DIRECTORY ${CODEGENDIR} COMMENT "Generate .depend") @@ -93,15 +93,15 @@ FOREACH(DEP ${ALLMO}) # custom command for rml to sig ADD_CUSTOM_COMMAND(OUTPUT ${SIGX_OUTPUT} COMMAND ${RML} -fdump-interface ${DEP} > ${SIG_DEP} - DEPENDS depend ${COPY_ALL} +# DEPENDS depend ${COPY_ALL} WORKING_DIRECTORY ${CODEGENDIR} COMMENT "Generate Sigx from ${DF}") # target fuer OM_OUTPUT - ADD_CUSTOM_TARGET(${SIG_DEP} ALL DEPENDS ${SIGX_OUTPUT}) + ADD_CUSTOM_TARGET(${DFWE}_sig ALL DEPENDS ${SIGX_OUTPUT}) # remember - SET(SIGX_ALL ${SIGX_ALL} ${SIG_DEP}) + SET(SIGX_ALL ${SIGX_ALL} ${DFWE}_sig ) ENDFOREACH(DEP) # generate *.h and *.c from *.mo files @@ -119,7 +119,7 @@ FOREACH(DEP ${SRCMO}) # custom command for rml to sig ADD_CUSTOM_COMMAND(OUTPUT ${MOCH_OUTPUT} COMMAND ${RML} -Eplain -ftrace ${RMLCFLAGS} ${DEP} - DEPENDS depend ${SIGX_ALL} +# DEPENDS depend ${SIGX_ALL} WORKING_DIRECTORY ${CODEGENDIR} COMMENT "Generate *.h and *.c from ${DEP}") @@ -134,20 +134,32 @@ ADD_SUBDIRECTORY(runtime) ADD_SUBDIRECTORY(absyn_builder) ADD_SUBDIRECTORY(modpar) +if(WIN32) INCLUDE_DIRECTORIES($ENV{OMDEV}/tools/rml/include/plain) +link_directories($ENV{OMDEV}/lib/antlr-win32-msvc ${OMCTRUNCHOME}/Compiler/runtime/lpsolve/lib/win32 $ENV{OMDEV}/tools/rml/lib/plain) +else(WIN32) +INCLUDE_DIRECTORIES(${RMLHOME}/include/plain) +link_directories(${RMLHOME}/lib/plain) +endif(WIN32) INCLUDE_DIRECTORIES(${CODEGENDIR}) # omc program -link_directories($ENV{OMDEV}/lib/antlr-win32-msvc ${OMCTRUNCHOME}/Compiler/runtime/lpsolve/lib/win32 $ENV{OMDEV}/tools/rml/lib/plain) -#add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_CRT_SECURE_NO_WARNINGS" /D "_MBCS" /FD /EHsc /MT /W3 /nologo /c /TC /wd4311 /wd4312) -add_definitions(/MT /D "_CRT_SECURE_NO_WARNINGS" /D "_CONSOLE") -ADD_EXECUTABLE(omc ${MOCH_FILES}) -TARGET_LINK_LIBRARIES(omc absyn_builder libmodpar sendData c_runtime wsock32 shlwapi) +#add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_CRT_SECURE_NO_WARNINGS" /D "_MBCS" /FD /EHsc /MT /W3 /nologo /c /TC /wd4311 /wd4312) +if(WIN32) +add_definitions(/MT /D "_CRT_SECURE_NO_WARNINGS" /D "_CONSOLE") +endif(WIN32) +ADD_EXECUTABLE(omc ${MOCH_FILES}) +if(WIN32) +TARGET_LINK_LIBRARIES(omc absyn_builder libmodpar sendData c_runtime wsock32 shlwapi) TARGET_LINK_LIBRARIES(omc -FORCE:MULTIPLE librml) +else(WIN32) +TARGET_LINK_LIBRARIES(omc absyn_builder libmodpar sendData c_runtime) +TARGET_LINK_LIBRARIES(omc rml) +endif(WIN32) add_dependencies(omc ${MOCH_ALL}) # install INSTALL(TARGETS omc - RUNTIME DESTINATION bin) \ No newline at end of file + RUNTIME DESTINATION bin) diff --git a/Compiler/absyn_builder/CMakeLists.txt b/Compiler/absyn_builder/CMakeLists.txt index 19945ebf022..2e76534bb4f 100644 --- a/Compiler/absyn_builder/CMakeLists.txt +++ b/Compiler/absyn_builder/CMakeLists.txt @@ -7,13 +7,23 @@ IF(NOT JAVA) ENDIF(NOT JAVA) # antlr -SET(ANTLR ${JAVA} -cp $ENV{OMDEV}/bin/antlr/antlr.jar antlr.Tool) +if(WIN32) +SET(ANTLRCLASSPATH $ENV{OMDEV}/bin/antlr/antlr.jar) +else(WIN32) +SET(ANTLRCLASSPATH /usr/share/java/antlr.jar) +endif(WIN32) +SET(ANTLR ${JAVA} -cp ${ANTLRCLASSPATH} antlr.Tool) SET(ANTLRFLAGS ) #-traceParser") # Includes + +if(WIN32) +INCLUDE_DIRECTORIES($ENV{OMDEV}/tools/rml/include/plain) INCLUDE_DIRECTORIES($ENV{OMDEV}/include) -INCLUDE_DIRECTORIES($ENV{OMDEV}/tools/rml/include/plain) +else(WIN32) +INCLUDE_DIRECTORIES(${RMLHOME}/include/plain) +endif(WIN32) INCLUDE_DIRECTORIES(${OMCTRUNCHOME}/modelica_parser/src) INCLUDE_DIRECTORIES(${CODEGENDIR}/absyn_builder) @@ -27,12 +37,12 @@ INCLUDE_DIRECTORIES(${modelica_flat_parser}) # custom command for ar ADD_CUSTOM_COMMAND(OUTPUT ${MPTT_OUTPUT} COMMAND ${CMAKE_COMMAND} -E copy ${modelica_parser}/modelica_parserTokenTypes.txt ${CODEGENDIR}/absyn_builder/modelica_parserTokenTypes.txt - DEPENDS modelica_parser.g_antlr +# DEPENDS modelica_parser.g_antlr WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "copy ${modelica_parser}/modelica_parserTokenTypes.txt to ${CODEGENDIR}/absyn_builder/modelica_parserTokenTypes.txt") # target fuer OM_OUTPUT - ADD_CUSTOM_TARGET(MPTT_cp ALL DEPENDS modelica_parser.g_antlr) + ADD_CUSTOM_TARGET(MPTT_cp ALL DEPENDS ${MPTT_OUTPUT}) # generate antlr files SET(DEP walker.g) @@ -59,12 +69,12 @@ SET(DEP walker.g) # custom command for ar ADD_CUSTOM_COMMAND(OUTPUT ${ANTLR_OUTPUT} COMMAND ${ANTLR} ${ANTLRFLAGS} ${ANTLR_DEP} - DEPENDS MPTT_cp ${ANTLR_DEP} ${MOCH_ALL} +# DEPENDS MPTT_cp ${ANTLR_DEP} ${MOCH_ALL} WORKING_DIRECTORY ${CODEGENDIR}/absyn_builder COMMENT "Generate antlr from ${DEP}") # target fuer OM_OUTPUT - ADD_CUSTOM_TARGET(${DEP}_antlr ALL DEPENDS ${ANTLR_DEP}) + ADD_CUSTOM_TARGET(${DEP}_antlr ALL DEPENDS ${ANTLR_OUTPUT}) # Datei- und Pfadname SET(WDEP expression_parser.g) @@ -91,7 +101,7 @@ SET(WDEP expression_parser.g) # custom command for ar ADD_CUSTOM_COMMAND(OUTPUT ${EP_OUTPUT} COMMAND ${CMAKE_COMMAND} -E copy ${ANTLR_WDEP} ${EP_OUTPUT} - DEPENDS MPTT_cp ${MOCH_ALL} +# DEPENDS MPTT_cp ${MOCH_ALL} WORKING_DIRECTORY ${CODEGENDIR}/absyn_builder COMMENT "copy ${ANTLR_WDEP} to ${EP_OUTPUT}") @@ -101,12 +111,12 @@ SET(WDEP expression_parser.g) # custom command for ar ADD_CUSTOM_COMMAND(OUTPUT ${ANTLR_WOUTPUT} COMMAND ${ANTLR} -glib ${OMCTRUNCHOME}/modelica_parser/src/modelica_parser.g ${ANTLRFLAGS} ${WDEP} - DEPENDS ${WDEP}_cp ${MPTT_OUTPUT} ${ANTLR_WDEP} modelica_parser.g_antlr ${MOCH_ALL} +# DEPENDS ${WDEP}_cp ${MPTT_OUTPUT} ${ANTLR_WDEP} modelica_parser.g_antlr ${MOCH_ALL} WORKING_DIRECTORY ${CODEGENDIR}/absyn_builder COMMENT "Generate antlr from ${ANTLR_WDEP}") # target fuer OM_OUTPUT - ADD_CUSTOM_TARGET(${WDEP}_antlr ALL DEPENDS ${EP_OUTPUT} ${ANTLR_WDEP}) + ADD_CUSTOM_TARGET(${WDEP}_antlr ALL DEPENDS ${ANTLR_WOUTPUT}) # source @@ -115,7 +125,9 @@ SET(helperobjs parse.cpp) SET(OBJS ${helperobjs} ${ANTLR_OUTPUT} ${ANTLR_WOUTPUT} ${ANTLR_FILES}) -#add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /MT /GS /Fd"antlr.pdb" /W3 /nologo /c /Zi /TP) -add_definitions(/MT) +#add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /MT /GS /Fd"antlr.pdb" /W3 /nologo /c /Zi /TP) +if(WIN32) +add_definitions(/MT) +endif(WIN32) ADD_LIBRARY(absyn_builder ${OBJS}) TARGET_LINK_LIBRARIES(absyn_builder optimized antlr debug antlrd libmodelica_parser libflat_modelica_parser runtime) diff --git a/Compiler/modpar/CMakeLists.txt b/Compiler/modpar/CMakeLists.txt index 57abd4e407b..8948c4c3c52 100644 --- a/Compiler/modpar/CMakeLists.txt +++ b/Compiler/modpar/CMakeLists.txt @@ -1,7 +1,11 @@ # Includes INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) +if(WIN32) INCLUDE_DIRECTORIES($ENV{OMDEV}/tools/rml/include/plain) +else(WIN32) +INCLUDE_DIRECTORIES(${RMLHOME}/include/plain) +endif(WIN32) IF(USE_MODPAR) SET(OBJECTS Codegen.cpp @@ -20,6 +24,8 @@ ELSE(USE_MODPAR) ENDIF(USE_MODPAR) #add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /EHsc /MT /W3 /nologo /c /TP /wd4311 /wd4312) -add_definitions(/MT) +if(WIN32) +add_definitions(/MT) +endif(WIN32) ADD_LIBRARY(libmodpar ${OBJECTS}) diff --git a/Compiler/runtime/CMakeLists.txt b/Compiler/runtime/CMakeLists.txt index 88fd6b0b815..9112466d3ba 100644 --- a/Compiler/runtime/CMakeLists.txt +++ b/Compiler/runtime/CMakeLists.txt @@ -6,8 +6,12 @@ IF(NOT IDL) PATH_SUFFIXES bin bin/mico) MESSAGE(STATUS "-- idl is " ${IDL}) ENDIF(NOT IDL) - + +if(WIN32) INCLUDE_DIRECTORIES($ENV{OMDEV}/tools/rml/include/plain) +else(WIN32) +INCLUDE_DIRECTORIES(${RMLHOME}/include/plain) +endif(WIN32) INCLUDE_DIRECTORIES(${CODEGENDIR}) INCLUDE_DIRECTORIES(${CODEGENDIR}/absyn_builder) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) @@ -33,9 +37,19 @@ SET(CPPSRC unitparser.cpp unitparserext.cpp ptolemyio.cpp daeext.cpp ErrorMessa SET(OBJ ${SRC} ${CPPSRC}) # Library runtime +if(WIN32) link_directories(${OMCTRUNCHOME}/Compiler/runtime/lpsolve/lib/win32) #add_definitions(/O2 /Ot /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /MT /GS- /W2 /c /TP) -add_definitions(/MT) -ADD_LIBRARY(runtime ${OBJ}) -TARGET_LINK_LIBRARIES(runtime optimized lpsolve55 debug lpsolve55d optimized mico2313 debug mico2313d) +add_definitions(/MT) +endif(WIN32) +ADD_LIBRARY(runtime ${OBJ}) + + # mico und benoetigte Bibliotheken + IF(WIN32) + SET(platform_libs optimized mico2313 debug mico2313d) + ELSE(WIN32) + SET(platform_libs mico2.3.13 ) #ssl pthread) + ENDIF(WIN32) + +TARGET_LINK_LIBRARIES(runtime optimized lpsolve55 debug lpsolve55d ${platform_libs} c_runtime sendData) add_dependencies(runtime ${MOCH_ALL}) diff --git a/c_runtime/CMakeLists.txt b/c_runtime/CMakeLists.txt index 2a4a0701bfd..70e48a27fc4 100644 --- a/c_runtime/CMakeLists.txt +++ b/c_runtime/CMakeLists.txt @@ -121,11 +121,15 @@ SET(sim_headers simulation_runtime.h simulation_init.h simulation_input.h # Library c_runtime #ADD_DEFINITIONS(/Wall /O3 /ansi /pedantic) -add_definitions(/MT) +if(WIN32) +add_definitions(/MT) +endif(WIN32) ADD_LIBRARY(c_runtime ${c_runtime_sources} ${c_runtime_headers}) TARGET_LINK_LIBRARIES(c_runtime f2c) # Library sim -add_definitions(/MT) +if(WIN32) +add_definitions(/MT) +endif(WIN32) ADD_LIBRARY(sim ${sim_sources} ${sim_headers}) TARGET_LINK_LIBRARIES(sim c_runtime f2c) @@ -133,4 +137,4 @@ TARGET_LINK_LIBRARIES(sim c_runtime f2c) INSTALL(TARGETS c_runtime sim ARCHIVE DESTINATION lib) -INSTALL(FILES ${c_runtime_headers} DESTINATION include) \ No newline at end of file +INSTALL(FILES ${c_runtime_headers} DESTINATION include) diff --git a/c_runtime/sendData/CMakeLists.txt b/c_runtime/sendData/CMakeLists.txt index 99c5e557679..3444f40b650 100644 --- a/c_runtime/sendData/CMakeLists.txt +++ b/c_runtime/sendData/CMakeLists.txt @@ -17,11 +17,14 @@ SET(sendData_headers sendData.h) # Library sendData -#ADD_DEFINITIONS(/O2 /frtti /fexceptions /mthreads /Wall /DUNICODE /DQT_LARGEFILE_SUPPORT /DQT_NO_DEBUG /DQT_GUI_LIB /DQT_NETWORK_LIB /DQT_CORE_LIB /DQT_THREAD_SUPPORT) -add_definitions(/MT) +#ADD_DEFINITIONS(/O2 /frtti /fexceptions /mthreads /Wall /DUNICODE /DQT_LARGEFILE_SUPPORT /DQT_NO_DEBUG /DQT_GUI_LIB /DQT_NETWORK_LIB /DQT_CORE_LIB /DQT_THREAD_SUPPORT) +if(WIN32) +add_definitions(/MT) +endif(WIN32) + ADD_LIBRARY(sendData ${sendData_sources} ${sendData_headers}) TARGET_LINK_LIBRARIES(sendData ${QT_LIBRARIES}) # Install INSTALL(TARGETS sendData - ARCHIVE DESTINATION lib) \ No newline at end of file + ARCHIVE DESTINATION lib) diff --git a/flat_modelica_parser/src/CMakeLists.txt b/flat_modelica_parser/src/CMakeLists.txt index 6e118007fbb..8d6f3cc4739 100644 --- a/flat_modelica_parser/src/CMakeLists.txt +++ b/flat_modelica_parser/src/CMakeLists.txt @@ -6,8 +6,13 @@ IF(NOT JAVA) MESSAGE(STATUS "-- java is " ${JAVA}) ENDIF(NOT JAVA) -# antlr -SET(ANTLR ${JAVA} -cp $ENV{OMDEV}/bin/antlr/antlr.jar antlr.Tool) +# antlr +if(WIN32) +SET(ANTLRCLASSPATH $ENV{OMDEV}/bin/antlr/antlr.jar) +else(WIN32) +SET(ANTLRCLASSPATH /usr/share/java/antlr.jar) +endif(WIN32) +SET(ANTLR ${JAVA} -cp ${ANTLRCLASSPATH} antlr.Tool) SET(ANTLRFLAGS ) #-traceParser") SET(ANTLR_FILES flat_modelica_parser.g flat_modelica_lexer.g) @@ -98,7 +103,9 @@ ELSE(WIN32) ENDIF(WIN32) link_directories($ENV{OMDEV}/lib/antlr-win32-msvc) #add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /EHsc /MT /W3 /nologo /c /TP /wd4311 /wd4312) -add_definitions(/MT) +if(WIN32) +add_definitions(/MT) +endif(WIN32) ADD_LIBRARY(libflat_modelica_parser ${OBJS}) TARGET_LINK_LIBRARIES(libflat_modelica_parser optimized antlr debug antlrd) diff --git a/modelica_parser/src/CMakeLists.txt b/modelica_parser/src/CMakeLists.txt index 929519268b3..888f09b563d 100644 --- a/modelica_parser/src/CMakeLists.txt +++ b/modelica_parser/src/CMakeLists.txt @@ -8,7 +8,12 @@ IF(NOT JAVA) ENDIF(NOT JAVA) # antlr -SET(ANTLR ${JAVA} -cp $ENV{OMDEV}/bin/antlr/antlr.jar antlr.Tool) +if(WIN32) +SET(ANTLRCLASSPATH $ENV{OMDEV}/bin/antlr/antlr.jar) +else(WIN32) +SET(ANTLRCLASSPATH /usr/share/java/antlr.jar) +endif(WIN32) +SET(ANTLR ${JAVA} -cp ${ANTLRCLASSPATH} antlr.Tool) SET(ANTLRFLAGS ) #-traceParser") SET(ANTLR_FILES modelica_parser.g modelica_lexer.g) @@ -94,8 +99,10 @@ ELSE(WIN32) SET(ANTLR_LIB libantlr) ENDIF(WIN32) link_directories($ENV{OMDEV}/lib/antlr-win32-msvc) -#add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /MT /GS /Fd"antlr.pdb" /W3 /nologo /c /Zi /TP) -add_definitions(/MT) +#add_definitions(/Ob2 /Ox /O2 /Ot /Oy /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /MT /GS /Fd"antlr.pdb" /W3 /nologo /c /Zi /TP) +if(WIN32) +add_definitions(/MT) +endif(WIN32) ADD_LIBRARY(libmodelica_parser ${OBJS}) TARGET_LINK_LIBRARIES(libmodelica_parser optimized antlr debug antlrd)