Skip to content

Commit

Permalink
- fix MSVC compilation of C runtime
Browse files Browse the repository at this point in the history
  • Loading branch information
adrpo committed May 12, 2015
1 parent adf53f3 commit dadc3dc
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 13 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -90,6 +90,7 @@ SimulationRuntime/ParModelica/Makefile
SimulationRuntime/ParModelica/auto/Makefile
SimulationRuntime/ParModelica/explicit/Makefile
SimulationRuntime/ParModelica/explicit/openclrt/Makefile
SimulationRuntime/build_c/

# OpenModelicaSetup
Compiler/OpenModelicaSetup
Expand Down
42 changes: 31 additions & 11 deletions Makefile.omdev.mingw
Expand Up @@ -198,9 +198,13 @@ fmil_msvc:
# Create batch file, that builds with CMake and Visual Studio
test -f """${VS100COMNTOOLS}/../../VC/vcvarsall.bat"""
echo 'Building CMinpack with MSVC'
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' > 3rdParty/FMIL/build_msvc/build.bat
echo @echo on > 3rdParty/FMIL/build_msvc/build.bat
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' >> 3rdParty/FMIL/build_msvc/build.bat
echo echo Calling CMake >> 3rdParty/FMIL/build_msvc/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DFMILIB_BUILD_TESTS=OFF -DFMILIB_BUILD_STATIC_LIB=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFMILIB_INSTALL_PREFIX=../install_msvc ../ -G "NMake Makefiles"' >> 3rdParty/FMIL/build_msvc/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DCMAKE_VERBOSE_MAKEFILE:Bool=ON -DFMILIB_BUILD_TESTS=OFF -DFMILIB_BUILD_STATIC_LIB=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFMILIB_INSTALL_PREFIX=../install_msvc ../ -G "NMake Makefiles"' >> 3rdParty/FMIL/build_msvc/build.bat
echo @echo on >> 3rdParty/FMIL/build_msvc/build.bat
echo set MAKE= >> 3rdParty/FMIL/build_msvc/build.bat
echo set MAKEFLAGS= >> 3rdParty/FMIL/build_msvc/build.bat
echo echo Building FMIL_msvc >> 3rdParty/FMIL/build_msvc/build.bat
echo nmake /f Makefile install >> 3rdParty/FMIL/build_msvc/build.bat

Expand All @@ -225,10 +229,14 @@ CMinpack_msvc:
# Create batch file, that builds with CMake and Visual Studio
test -f """${VS100COMNTOOLS}/../../VC/vcvarsall.bat"""
echo 'Building CMinpack with MSVC'
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' > 3rdParty/CMinpack/build_msvc/build.bat
echo @echo on > 3rdParty/CMinpack/build_msvc/build.bat
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' >> 3rdParty/CMinpack/build_msvc/build.bat
echo echo Calling CMake >> 3rdParty/CMinpack/build_msvc/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DSHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../install_msvc ../ -G "NMake Makefiles"' >> 3rdParty/CMinpack/build_msvc/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DCMAKE_VERBOSE_MAKEFILE:Bool=ON -DSHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../install_msvc ../ -G "NMake Makefiles"' >> 3rdParty/CMinpack/build_msvc/build.bat
echo echo Building CMinpack >> 3rdParty/CMinpack/build_msvc/build.bat
echo @echo on >> 3rdParty/CMinpack/build_msvc/build.bat
echo set MAKE= >> 3rdParty/CMinpack/build_msvc/build.bat
echo set MAKEFLAGS= >> 3rdParty/CMinpack/build_msvc/build.bat
echo nmake /f Makefile install >> 3rdParty/CMinpack/build_msvc/build.bat

# Change into directory and run batch file
Expand All @@ -252,10 +260,14 @@ Umfpack_msvc:
# Create batch file, that builds with CMake and Visual Studio
test -f """${VS100COMNTOOLS}/../../VC/vcvarsall.bat"""
echo 'Building Umfpack with MSVC'
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' > 3rdParty/SuiteSparse/build_msvc/build.bat
echo @echo on > 3rdParty/SuiteSparse/build_msvc/build.bat
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo echo Calling CMake >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../install_msvc ../ -G "NMake Makefiles"' >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DCMAKE_VERBOSE_MAKEFILE:Bool=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../install_msvc ../ -G "NMake Makefiles"' >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo echo Building Umfpack >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo @echo on >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo set MAKE= >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo set MAKEFLAGS= >> 3rdParty/SuiteSparse/build_msvc/build.bat
echo nmake /f Makefile install >> 3rdParty/SuiteSparse/build_msvc/build.bat

# Change into directory and run batch file
Expand All @@ -267,22 +279,26 @@ Umfpack_msvc:
(cp -puf 3rdParty/SuiteSparse/install_msvc/lib/omc/*.lib $(OMBUILDDIR)/lib/omc/msvc/)
(cp -pur 3rdParty/SuiteSparse/install_msvc/include/omc/c/suitesparse/Include/ $(OMBUILDDIR)/include/omc/msvc/suitesparse)

runtimeCPPmsvcinstall: CMinpack_msvc copycppheader
runtimeCPPmsvcinstall: mkbuilddirs CMinpack_msvc copycppheader
$(MAKE) -C SimulationRuntime/cpp/ -f Makefile.omdev.mingw runtimeCPPmsvc OMBUILDDIR=$(OMBUILDDIR)
# mkdir -p $(OMBUILDDIR)/lib/omc/msvc/ && cp -p ${OMDEV}/lib/3rdParty/Sundials/lib/release/vc100/*.lib $(OMBUILDDIR)/lib/omc/msvc/
cp -p ${OMDEV}/lib/3rdParty/Sundials/lib/release/vc100/*.dll $(OMBUILDDIR)/bin/
cp -p $(BOOST_PATH)/lib/*vc*.dll $(OMBUILDDIR)/bin/
cp -p $(BOOST_PATH)/lib/*vc*.lib $(OMBUILDDIR)/lib/omc/cpp/msvc

simulationruntimecmsvc: Umfpack_msvc CMinpack_msvc fmil_msvc
simulationruntimecmsvc: mkbuilddirs Umfpack_msvc CMinpack_msvc fmil_msvc
test -f """${VS100COMNTOOLS}/../../VC/vcvarsall.bat"""
mkdir -p $(OMBUILDDIR)/include/omc/msvc/
mkdir -p $(OMBUILDDIR)/lib/omc/msvc/debug
mkdir -p $(OMBUILDDIR)/lib/omc/msvc/release
echo 'Build the MSVC RELEASE'
mkdir -p SimulationRuntime/build_c
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' > SimulationRuntime/build_c/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:String=../../build ../c -G "NMake Makefiles"' >> SimulationRuntime/build_c/build.bat
echo @echo on > SimulationRuntime/build_c/build.bat
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' >> SimulationRuntime/build_c/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DCMAKE_VERBOSE_MAKEFILE:Bool=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:String=../../build ../c -G "NMake Makefiles"' >> SimulationRuntime/build_c/build.bat
echo @echo on >> SimulationRuntime/build_c/build.bat
echo set MAKE= >> SimulationRuntime/build_c/build.bat
echo set MAKEFLAGS= >> SimulationRuntime/build_c/build.bat
echo nmake /f Makefile >> SimulationRuntime/build_c/build.bat
cd SimulationRuntime/build_c && cmd /c build.bat
echo 'Copy the .lib files (needed for compilation) and .pdb files (needed for debugging) to $(OMBUILDDIR)/lib/omc'
Expand All @@ -291,8 +307,12 @@ simulationruntimecmsvc: Umfpack_msvc CMinpack_msvc fmil_msvc
rm -rf SimulationRuntime/build_c/
echo 'Build the MSVC DEBUG'
mkdir -p SimulationRuntime/build_debug_c
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' > SimulationRuntime/build_debug_c/build.bat
echo @echo on > SimulationRuntime/build_debug_c/build.bat
echo call '"%VS100COMNTOOLS%\\..\\..\\VC\\vcvarsall.bat"' >> SimulationRuntime/build_debug_c/build.bat
echo '%OMDEV%\\bin\\cmake\\bin\\cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:String=../../build_debug ../c -G "NMake Makefiles"' >> SimulationRuntime/build_debug_c/build.bat
echo @echo on >> SimulationRuntime/build_debug_c/build.bat
echo set MAKE= >> SimulationRuntime/build_debug_c/build.bat
echo set MAKEFLAGS= >> SimulationRuntime/build_debug_c/build.bat
echo nmake /f Makefile >> SimulationRuntime/build_debug_c/build.bat
cd SimulationRuntime/build_debug_c && cmd /c build.bat
echo 'Copy the .lib files (needed for compilation) and .pdb files (needed for debugging) to $(OMBUILDDIR)/lib/omc'
Expand Down
4 changes: 2 additions & 2 deletions SimulationRuntime/c/util/CMakeLists.txt
Expand Up @@ -2,14 +2,14 @@
SET(util_sources base_array.c boolean_array.c omc_error.c division.c index_spec.c
integer_array.c java_interface.c libcsv.c list.c memory_pool.c modelica_string.c
read_write.c read_matlab4.c read_csv.c real_array.c ringbuffer.c
rtclock.c simulation_options.c string_array.c utility.c varinfo.c omc_msvc.c OldModelicaTables.c cJSON.o omc_mmap.c
rtclock.c simulation_options.c string_array.c utility.c varinfo.c omc_msvc.c OldModelicaTables.c cJSON.c omc_mmap.c
ModelicaUtilities.c)


SET(util_headers base_array.h boolean_array.h division.h omc_error.h index_spec.h integer_array.h
java_interface.h jni.h jni_md.h jni_md_solaris.h jni_md_windows.h list.h memory_pool.h
modelica.h modelica_string.h read_write.h read_matlab4.h real_array.h
ringbuffer.h rtclock.h simulation_options.h string_array.h utility.h varinfo.h omc_mmap.h
ringbuffer.h rtclock.h simulation_options.h string_array.h utility.h varinfo.h omc_mmap.h cJSON.h
../ModelicaUtilities.h)

if(MSVC)
Expand Down

0 comments on commit dadc3dc

Please sign in to comment.