Skip to content

Commit

Permalink
- update CMakeFiles, start with testsuite
Browse files Browse the repository at this point in the history
git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@5237 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
  • Loading branch information
Jens Frenkel committed Mar 30, 2010
1 parent 1d602c5 commit d3f08b3
Show file tree
Hide file tree
Showing 7 changed files with 48 additions and 33 deletions.
20 changes: 11 additions & 9 deletions CMakeLists.txt
@@ -1,20 +1,22 @@
# PROJECT
PROJECT(OpenModelica)
# Jens Frenkel, Jens.Frenkel@tu-dresden.de, 2010-03-30
# CMakefile for compilation of OMC

# CMAKE
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
# PROJECT
PROJECT(OpenModelicaCompiler)

# Includes
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/c_runtime)

# OMCTRUNCHOME
# Global Variables
SET(OMCTRUNCHOME ${CMAKE_CURRENT_SOURCE_DIR})
SET(CODEGENDIR ${CMAKE_CURRENT_BINARY_DIR}/codegen)

# Tests
OPTION(RUN_TESTS "Run Tests" OFF)
IF(RUN_TESTS)
enable_testing()
ADD_SUBDIRECTORY(testsuite)
ENDIF(RUN_TESTS)

# OMC Compiler
SET(OMC ${CMAKE_CURRENT_SOURCE_DIR}/build/bin/omcd.exe)
MESSAGE(" omc is " ${OMC})
# Subdirectorys
ADD_SUBDIRECTORY(c_runtime)
ADD_SUBDIRECTORY(modelica_parser)
Expand Down
35 changes: 17 additions & 18 deletions Compiler/CMakeLists.txt
Expand Up @@ -9,8 +9,7 @@ SET(SRCMO Absyn.mo AbsynDep.mo Algorithm.mo Builtin.mo
Exp.mo SCode.mo SCodeUtil.mo Graphviz.mo HashTable.mo
HashTable2.mo HashTable3.mo HashTable4.mo HashTable5.mo
HashTable6.mo HashTableCG.mo HashTableStringToPath.mo
# Inline.mo Inst.mo InstExtends.mo Interactive.mo
Inline.mo Inst.mo Interactive.mo
Inline.mo Inst.mo InstExtends.mo Interactive.mo
Lookup.mo Main.mo MMath.mo MetaUtil.mo Mod.mo ModUtil.mo
PartFn.mo Patternm.mo Prefix.mo PrefixUtil.mo Static.mo
SimCode.mo SimCodeC.mo SimCodeCSharp.mo SimCodegen.mo
Expand Down Expand Up @@ -68,16 +67,16 @@ FOREACH(DEP ${ALLMO})
ENDFOREACH(DEP)

#.depend:
SET(DEPENDT_OUTPUT .depend)
# custom command for rml to sig
ADD_CUSTOM_COMMAND(OUTPUT ${DEPENDT_OUTPUT}
COMMAND ${RML} -fdump-depends ${SRCMO} > .depend
DEPENDS ${COPY_ALL}
WORKING_DIRECTORY ${CODEGENDIR}
COMMENT "Generate .depend")

# target fuer OM_OUTPUT
ADD_CUSTOM_TARGET(DEPEND ALL DEPENDS ${DEPENDT_OUTPUT})
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}
WORKING_DIRECTORY ${CODEGENDIR}
COMMENT "Generate .depend")

# target fuer OM_OUTPUT
ADD_CUSTOM_TARGET(depend ALL DEPENDS ${DEPENDT_OUTPUT})


# generate sig files
Expand All @@ -90,11 +89,11 @@ FOREACH(DEP ${ALLMO})
# Merken
SET(SIG_DEP ${DFWE}.sig)

SET(SIGX_OUTPUT ${SIG_DEP})
SET(SIGX_OUTPUT ${CODEGENDIR}/${SIG_DEP})
# 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}")

Expand All @@ -120,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 ${SIGX_ALL}
DEPENDS depend ${SIGX_ALL}
WORKING_DIRECTORY ${CODEGENDIR}
COMMENT "Generate *.h and *.c from ${DEP}")

Expand All @@ -139,12 +138,12 @@ INCLUDE_DIRECTORIES($ENV{OMDEV}/tools/rml/include/plain)
INCLUDE_DIRECTORIES(${CODEGENDIR})

# omc program
link_directories($ENV{OMDEV}/lib/antlr-win32-msvc $ENV{OMDEV}/lib/mico-win32-msvc ${OMCTRUNCHOME}/Compiler/runtime/lpsolve/lib/win32 $ENV{OMDEV}/tools/rml/lib/plain)
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)
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 optimized mico2313 debug mico2313d)
TARGET_LINK_LIBRARIES(omc absyn_builder libmodpar sendData c_runtime wsock32 shlwapi)
TARGET_LINK_LIBRARIES(omc -FORCE:MULTIPLE librml)
add_dependencies(omc ${MOCH_ALL})

Expand Down
2 changes: 1 addition & 1 deletion Compiler/absyn_builder/CMakeLists.txt
Expand Up @@ -118,4 +118,4 @@ 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_LIBRARY(absyn_builder ${OBJS})
TARGET_LINK_LIBRARIES(absyn_builder antlr libmodelica_parser libflat_modelica_parser runtime)
TARGET_LINK_LIBRARIES(absyn_builder optimized antlr debug antlrd libmodelica_parser libflat_modelica_parser runtime)
6 changes: 4 additions & 2 deletions Compiler/runtime/CMakeLists.txt
Expand Up @@ -12,6 +12,8 @@ INCLUDE_DIRECTORIES(${CODEGENDIR})
INCLUDE_DIRECTORIES(${CODEGENDIR}/absyn_builder)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/lpsolve)
INCLUDE_DIRECTORIES(${OMCTRUNCHOME}/c_runtime)


# custom command for idl
SET(IDL_OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/omc_communication.cc ${CMAKE_CURRENT_BINARY_DIR}/omc_communication.h)
Expand All @@ -30,10 +32,10 @@ SET(CPPSRC unitparser.cpp unitparserext.cpp ptolemyio.cpp daeext.cpp ErrorMessa
optmanager.cpp systemimplmisc.cpp ${CORBASRC})
SET(OBJ ${SRC} ${CPPSRC})

# Bibliothek
# Library runtime
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)
TARGET_LINK_LIBRARIES(runtime optimized lpsolve55 debug lpsolve55d optimized mico2313 debug mico2313d)
add_dependencies(runtime ${MOCH_ALL})
11 changes: 10 additions & 1 deletion c_runtime/CMakeLists.txt
@@ -1,3 +1,10 @@
# includes
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})

# OMC Compiler
SET(OMC ${OMCTRUNCHOME}/build/bin/omcd.exe)
MESSAGE(" omc is " ${OMC})

ADD_SUBDIRECTORY(libf2c)
ADD_SUBDIRECTORY(sendData)

Expand Down Expand Up @@ -111,16 +118,18 @@ SET(sim_headers simulation_runtime.h simulation_init.h simulation_input.h
simulation_events.h solver_dasrt.h solver_euler.h simulation_result.h
simulation_delay.h tables.h options.h)

# Bibliothek

# Library c_runtime
#ADD_DEFINITIONS(/Wall /O3 /ansi /pedantic)
add_definitions(/MT)
ADD_LIBRARY(c_runtime ${c_runtime_sources} ${c_runtime_headers})
TARGET_LINK_LIBRARIES(c_runtime f2c)
# Library sim
add_definitions(/MT)
ADD_LIBRARY(sim ${sim_sources} ${sim_headers})
TARGET_LINK_LIBRARIES(sim c_runtime f2c)

# Install
INSTALL(TARGETS c_runtime sim
ARCHIVE DESTINATION lib)

Expand Down
4 changes: 3 additions & 1 deletion c_runtime/libf2c/CMakeLists.txt
@@ -1,4 +1,4 @@
# Quellen und Header
# Sources and Headers
set(MISC
f77vers.c i77vers.c main.c s_rnge.c abort_.c exit_.c getarg_.c iargc_.c
getenv_.c signal_.c s_stop.c s_paus.c system_.c cabs.c
Expand Down Expand Up @@ -66,6 +66,7 @@ SET(f2c_headers f2c.h

set(OFILES ${MISC} ${POW} ${CX} ${DCX} ${REAL} ${DBL} ${INT}
${HALF} ${CMP} ${EFL} ${CHAR} ${I77} ${TIME})
# Library f2c
if(WIN32)
ADD_DEFINITIONS(/D_COMPLEX_DEFINED /DUSE_CLOCK /DMSDOS /DNO_ONEXIT /D_MSC_VER /D__STDC__ /D_CRT_SECURE_NO_DEPRECATE /MT)
ELSE(WIN32)
Expand All @@ -74,6 +75,7 @@ ENDIF(WIN32)
add_library(f2c ${OFILES} ${f2c_headers})
#set_property(TARGET f2c PROPERTY PREFIX lib)

# Install
INSTALL(TARGETS f2c
ARCHIVE DESTINATION lib)
INSTALL(FILES f2c.h DESTINATION include)
Expand Down
3 changes: 2 additions & 1 deletion c_runtime/sendData/CMakeLists.txt
Expand Up @@ -16,11 +16,12 @@ SET(sendData_sources sendData.cpp )
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)
# Bibliothek
ADD_LIBRARY(sendData ${sendData_sources} ${sendData_headers})
TARGET_LINK_LIBRARIES(sendData ${QT_LIBRARIES})

# Install
INSTALL(TARGETS sendData
ARCHIVE DESTINATION lib)

0 comments on commit d3f08b3

Please sign in to comment.