1 | # |
---|
2 | # Copyright (C) 2009 Modelon AB |
---|
3 | # |
---|
4 | # This program is free software: you can redistribute it and/or modify |
---|
5 | # it under the terms of the Common Public License as published by |
---|
6 | # IBM, version 1.0 of the License. |
---|
7 | # |
---|
8 | # This program is distributed in the hope that it will be useful, |
---|
9 | # but WITHOUT ANY WARRANTY. See the Common Public License for more details. |
---|
10 | # |
---|
11 | # You should have received a copy of the Common Public License |
---|
12 | # along with this program. If not, see |
---|
13 | # <http://www.ibm.com/developerworks/library/os-cpl.html/>. |
---|
14 | |
---|
15 | |
---|
16 | AUTOMAKE_OPTIONS = foreign |
---|
17 | ACLOCAL_AMFLAGS = -I m4 |
---|
18 | |
---|
19 | SUBDIRS = ThirdParty/winpthreads ThirdParty/SuperLU ThirdParty/Sundials ThirdParty/Minpack ThirdParty/Blas ThirdParty/Lapack ThirdParty/MSL external/FMILibrary RuntimeLibrary |
---|
20 | |
---|
21 | if PYTHON_ENABLED |
---|
22 | SUBDIRS += Python |
---|
23 | endif |
---|
24 | |
---|
25 | assimulo_install_dir=$(abs_builddir)/Assimulo_install |
---|
26 | pymodelica_install_dir=$(abs_builddir)/pymodelica_install |
---|
27 | pyfmi_install_dir=$(abs_builddir)/PyFMI_install |
---|
28 | pyjmi_install_dir=$(abs_builddir)/PyJMI_install |
---|
29 | assimulo_install_dir64=$(abs_builddir)/Assimulo_install64 |
---|
30 | pymodelica_install_dir64=$(abs_builddir)/pymodelica_install64 |
---|
31 | pyfmi_install_dir64=$(abs_builddir)/PyFMI_install64 |
---|
32 | pyjmi_install_dir64=$(abs_builddir)/PyJMI_install64 |
---|
33 | |
---|
34 | assimulo_build_dir=$(abs_builddir)/Assimulo_build |
---|
35 | pymodelica_build_dir=$(abs_builddir)/pymodelica_build |
---|
36 | pyfmi_build_dir=$(abs_builddir)/PyFMI_build |
---|
37 | pyjmi_build_dir=$(abs_builddir)/PyJMI_build |
---|
38 | assimulo_build_dir64=$(abs_builddir)/Assimulo_build64 |
---|
39 | pymodelica_build_dir64=$(abs_builddir)/pymodelica_build64 |
---|
40 | pyfmi_build_dir64=$(abs_builddir)/PyFMI_build64 |
---|
41 | pyjmi_build_dir64=$(abs_builddir)/PyJMI_build64 |
---|
42 | |
---|
43 | bindistdir=JModelica.org-$(VERSION)-bin |
---|
44 | |
---|
45 | casadi: |
---|
46 | if COMPILE_WITH_IPOPT |
---|
47 | cd $(abs_builddir)/ThirdParty/CasADi; \ |
---|
48 | make -f Makefile "SWIGCHECK_BUILD_DIR=$(SWIGCHECK_BUILD_DIR)" "CASADI_BUILD_DIR=$(CASADI_BUILD_DIR)" "IPOPT_HOME=$(IPOPT_HOME)" "CASADI_PYTHON_INST_DIR=${CASADI_PYTHON_INST_DIR}" "CASADI_INST_DIR=${CASADI_INST_DIR}" "CASADI_PLUGIN_INST_DIR=${CASADI_PLUGIN_INST_DIR}" "CMAKE_CASADI_ARGS=${CMAKE_CASADI_ARGS}" "CMAKE_CASADI_COMPILER_ARGS=${CMAKE_CASADI_COMPILER_ARGS}" "CMAKE_CASADI_CXX_FLAG=${CMAKE_CASADI_CXX_FLAG}" "CMAKE_PYTHON_LIB=${CMAKE_PYTHON_LIB}" |
---|
49 | endif |
---|
50 | if COMPILE_WITH_IPOPT64 |
---|
51 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
52 | export PYTHONHOME=$(PYTHON64_HOME); \ |
---|
53 | cd $(abs_builddir)/ThirdParty/CasADi; \ |
---|
54 | make -f Makefile "SWIGCHECK_BUILD_DIR=$(SWIGCHECK_BUILD_DIR64)" "CASADI_BUILD_DIR=$(CASADI_BUILD_DIR64)" "IPOPT_HOME=$(IPOPT64_HOME)" "CASADI_PYTHON_INST_DIR=${CASADI_PYTHON_INST_DIR64}" "CASADI_INST_DIR=${CASADI_INST_DIR64}" "CASADI_PLUGIN_INST_DIR=${CASADI_PLUGIN_INST_DIR64}" "CMAKE_CASADI_ARGS=${CMAKE_CASADI_ARGS64}" "CMAKE_CASADI_COMPILER_ARGS=${CMAKE_CASADI_COMPILER_ARGS64}" "CMAKE_CASADI_CXX_FLAG=${CMAKE_CASADI_CXX_FLAG64}" "CMAKE_PYTHON_LIB=${CMAKE_PYTHON64_LIB}" "CMAKE_PYTHON_INCLUDE=${CMAKE_PYTHON64_INCLUDE}" |
---|
55 | export PYTHONHOME=$(ORIG_PYTHON_HOME); \ |
---|
56 | export PATH="$(ORIG_PATH)"; |
---|
57 | endif |
---|
58 | |
---|
59 | install_casadi: casadi |
---|
60 | if COMPILE_WITH_IPOPT |
---|
61 | cd $(abs_builddir)/ThirdParty/CasADi; \ |
---|
62 | make -f Makefile install "SWIGCHECK_BUILD_DIR=$(SWIGCHECK_BUILD_DIR)" "CASADI_BUILD_DIR=$(CASADI_BUILD_DIR)" "IPOPT_HOME=$(IPOPT_HOME)" |
---|
63 | mkdir -p $(DESTDIR)$(prefix)/Python/ |
---|
64 | cp -r $(abs_builddir)/casadi_install/casadi $(DESTDIR)$(prefix)/Python/ |
---|
65 | ## temp fix |
---|
66 | cp $(abs_builddir)/casadi_build/swig/casadi_core.py $(DESTDIR)$(prefix)/Python/casadi |
---|
67 | endif |
---|
68 | if COMPILE_WITH_IPOPT64 |
---|
69 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
70 | export PYTHONHOME=$(PYTHON64_HOME); |
---|
71 | cd $(abs_builddir)/ThirdParty/CasADi; \ |
---|
72 | make -f Makefile install "SWIGCHECK_BUILD_DIR=$(SWIGCHECK_BUILD_DIR)" "CASADI_BUILD_DIR=$(CASADI_BUILD_DIR64)" "IPOPT_HOME=$(IPOPT64_HOME)" |
---|
73 | mkdir -p $(DESTDIR)$(prefix)/Python/ |
---|
74 | cp -r $(abs_builddir)/casadi_install64/casadi $(DESTDIR)$(prefix)/Python_64/ |
---|
75 | ## temp fix |
---|
76 | cp $(abs_builddir)/casadi_build64/swig/casadi_core.py $(DESTDIR)$(prefix)/Python_64/casadi |
---|
77 | export PYTHONHOME=$(ORIG_PYTHON_HOME); \ |
---|
78 | export PATH="$(ORIG_PATH)"; |
---|
79 | endif |
---|
80 | ## Install for CasADiInterface, Variables and targets. |
---|
81 | ## MC_interface installs the system with Python. |
---|
82 | ## If C++ compilation/tests are wanted there is the target MC_interface_cplusplus |
---|
83 | |
---|
84 | MC_INTERFACE=$(abs_top_srcdir)/ModelicaCasADiInterface |
---|
85 | |
---|
86 | CASADI_HOME=$(abs_top_srcdir)/ThirdParty/CasADi/CasADi |
---|
87 | MC_SRC=$(JAVA_CASADI_BASE_DIR)/ModelicaCompilerCasADi |
---|
88 | OC_SRC=$(JAVA_CASADI_BASE_DIR)/OptimicaCompilerCasADi |
---|
89 | MC_SRC_SWIG=$(abs_top_srcdir)/Compiler/ModelicaCompilerCasADi/src/swig |
---|
90 | |
---|
91 | MC_CASADI_BUILD=$(abs_builddir)/ModelicaCompilerCasADi |
---|
92 | OC_CASADI_BUILD=$(abs_builddir)/OptimicaCompilerCasADi |
---|
93 | |
---|
94 | # The modelica casadi interface is built into a build folder |
---|
95 | MC_BUILD=$(abs_builddir)/ModelicaCasADiInterfaceBuild |
---|
96 | MC_BUILD64=$(abs_builddir)/ModelicaCasADiInterfaceBuild64 |
---|
97 | # Jars from the modified modelica and optimica compilers are put into the JModelica folder |
---|
98 | MC_COMPILERS_DIR=$(MC_BUILD)/JModelica.org |
---|
99 | MC_LIB=$(DESTDIR)$(prefix)/lib/casadi_interface |
---|
100 | MC_LIB64=$(DESTDIR)$(prefix)/lib/casadi_interface64 |
---|
101 | |
---|
102 | CASADI_BUILD_DIR=$(abs_builddir)/casadi_build |
---|
103 | CASADI_BUILD_DIR64=$(abs_builddir)/casadi_build64 |
---|
104 | SWIGCHECK_BUILD_DIR=$(abs_builddir)/swig_check |
---|
105 | SWIGCHECK_BUILD_DIR64=$(abs_builddir)/swig_check64 |
---|
106 | CASADI_PYTHON_INST_DIR=$(abs_builddir)/casadi_install |
---|
107 | CASADI_INST_DIR=$(prefix)/ThirdParty/CasADi |
---|
108 | CASADI_PLUGIN_INST_DIR=$(CASADI_INST_DIR)/lib |
---|
109 | CASADI_PYTHON_INST_DIR64=$(abs_builddir)/casadi_install64 |
---|
110 | CASADI_INST_DIR64=$(prefix)/ThirdParty/CasADi64 |
---|
111 | CASADI_PLUGIN_INST_DIR64=$(CASADI_INST_DIR64)/lib |
---|
112 | CMAKE_CASADI_CXX_FLAG=-m32 |
---|
113 | CMAKE_CASADI_COMPILER_ARGS=-m32 -mincoming-stack-boundary=2 |
---|
114 | CMAKE_CASADI_CXX_FLAG64=-m64 |
---|
115 | CMAKE_CASADI_COMPILER_ARGS64=-m64 -fpermissive |
---|
116 | |
---|
117 | casadi_interface: install_casadi_interface |
---|
118 | build_casadi_interface: casadi modelicacasadi_wrapper |
---|
119 | install_casadi_interface: install_casadi $(MC_LIB) $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer/__init__.py $(DESTDIR)$(prefix)/Python/modelicacasadi_wrapper/__init__.py $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer/modelica_casadi_transfer_wrapper.py |
---|
120 | if [ "$(INSTALL_EXTRA_CASADI)" ]; then exec "$(INSTALL_EXTRA_CASADI)" "$(abs_top_srcdir)" "$(DESTDIR)$(prefix)"; fi |
---|
121 | |
---|
122 | ifcasadi: casadi |
---|
123 | if COMPILE_WITH_IPOPT |
---|
124 | mkdir -p $(MC_BUILD)/ifcasadi; \ |
---|
125 | cd $(MC_BUILD)/ifcasadi; \ |
---|
126 | case $(build) in \ |
---|
127 | *-cygwin*|*-mingw*) \ |
---|
128 | cmake $(MC_SRC_SWIG) -G "MSYS Makefiles" -DCMAKE_CXX_COMPILER_ARG1="-m32" -DCMAKE_CXX_FLAGS="-m32" \ |
---|
129 | -DIFCASADI_OUTDIR="$(MC_CASADI_BUILD)" -DCASADI_HOME="$(CASADI_HOME)" -DCASADI_BUILD_DIR="$(CASADI_BUILD_DIR)";; \ |
---|
130 | *) \ |
---|
131 | cmake $(MC_SRC_SWIG) \ |
---|
132 | -DIFCASADI_OUTDIR="$(MC_CASADI_BUILD)" -DCASADI_HOME="$(CASADI_HOME)" -DCASADI_BUILD_DIR="$(CASADI_BUILD_DIR)";; \ |
---|
133 | esac |
---|
134 | cd $(MC_BUILD)/ifcasadi; make |
---|
135 | endif |
---|
136 | if COMPILE_WITH_IPOPT64 |
---|
137 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; |
---|
138 | export PYTHONHOME=$(PYTHON64_HOME); |
---|
139 | mkdir -p $(MC_BUILD64)/ifcasadi; \ |
---|
140 | cd $(MC_BUILD64)/ifcasadi; \ |
---|
141 | cmake $(MC_SRC_SWIG) -G "MSYS Makefiles" -DCMAKE_CXX_COMPILER_ARG1="-m64" -DCMAKE_CXX_FLAGS="-m64" \ |
---|
142 | -DIFCASADI_OUTDIR="$(MC_CASADI_BUILD)" -DCASADI_HOME="$(CASADI_HOME)" -DCASADI_BUILD_DIR="$(CASADI_BUILD_DIR64)"; \ |
---|
143 | cd $(MC_BUILD64)/ifcasadi; make |
---|
144 | export PYTHONHOME=$(ORIG_PYTHON_HOME); \ |
---|
145 | export PATH="$(ORIG_PATH)"; |
---|
146 | endif |
---|
147 | |
---|
148 | $(MC_LIB): $(MC_CASADI_BUILD)/bin/ModelicaCompiler.jar $(OC_CASADI_BUILD)/bin/OptimicaCompiler.jar $(MC_CASADI_BUILD)/bin/util.jar ifcasadi |
---|
149 | if COMPILE_WITH_IPOPT |
---|
150 | rm -rf $(MC_LIB) |
---|
151 | mkdir -p $(MC_LIB) |
---|
152 | cp $(MC_CASADI_BUILD)/bin/ModelicaCompiler.jar $(MC_LIB) |
---|
153 | cp $(OC_CASADI_BUILD)/bin/OptimicaCompiler.jar $(MC_LIB) |
---|
154 | cp $(MC_CASADI_BUILD)/bin/util.jar $(MC_LIB) |
---|
155 | case $(build) in \ |
---|
156 | *-cygwin*) \ |
---|
157 | cp $(MC_BUILD)/ifcasadi/ifcasadi.dll $(MC_LIB) ;; \ |
---|
158 | *-mingw*) \ |
---|
159 | cp $(MC_BUILD)/ifcasadi/ifcasadi.dll $(MC_LIB) ;; \ |
---|
160 | *) \ |
---|
161 | cp $(MC_BUILD)/ifcasadi/libifcasadi.so $(MC_LIB) ;; \ |
---|
162 | esac |
---|
163 | endif |
---|
164 | if COMPILE_WITH_IPOPT64 |
---|
165 | rm -rf $(MC_LIB64) |
---|
166 | mkdir -p $(MC_LIB64) |
---|
167 | cp $(MC_CASADI_BUILD)/bin/ModelicaCompiler.jar $(MC_LIB64) |
---|
168 | cp $(OC_CASADI_BUILD)/bin/OptimicaCompiler.jar $(MC_LIB64) |
---|
169 | cp $(MC_CASADI_BUILD)/bin/util.jar $(MC_LIB64) |
---|
170 | cp $(MC_BUILD64)/ifcasadi/ifcasadi.dll $(MC_LIB64) |
---|
171 | endif |
---|
172 | |
---|
173 | mc_modelica: ifcasadi |
---|
174 | cd $(MC_CASADI_BUILD); $(ANT_OPTS) $(ANT) -f "$(JAVA_MC_CASADI_ANT_FILE)" "-Dcompiler=$(COMPILER_DIR)" |
---|
175 | |
---|
176 | mc_optimica: ifcasadi |
---|
177 | mkdir -p $(OC_CASADI_BUILD)/src/java-generated |
---|
178 | cp -pr $(MC_CASADI_BUILD)/src/java-generated/ifcasadi $(OC_CASADI_BUILD)/src/java-generated |
---|
179 | cd $(OC_CASADI_BUILD); $(ANT_OPTS) $(ANT) -f "$(JAVA_OC_CASADI_ANT_FILE)" "-Dcompiler=$(COMPILER_DIR)" |
---|
180 | |
---|
181 | $(MC_CASADI_BUILD)/bin/ModelicaCompiler.jar: mc_modelica |
---|
182 | $(MC_CASADI_BUILD)/bin/util.jar: mc_modelica |
---|
183 | $(MC_CASADI_BUILD)/bin/separateProcess.jar: mc_modelica |
---|
184 | |
---|
185 | $(OC_CASADI_BUILD)/bin/OptimicaCompiler.jar: mc_optimica |
---|
186 | $(OC_CASADI_BUILD)/bin/util.jar: mc_optimica |
---|
187 | $(OC_CASADI_BUILD)/bin/separateProcess.jar: mc_optimica |
---|
188 | |
---|
189 | $(MC_BUILD)/modelicacasadi_wrapper/swig/modelicacasadi_wrapper.py: modelicacasadi_wrapper |
---|
190 | |
---|
191 | |
---|
192 | modelicacasadi_wrapper: $(MC_CASADI_BUILD)/bin/ModelicaCompiler.jar $(OC_CASADI_BUILD)/bin/OptimicaCompiler.jar $(MC_CASADI_BUILD)/bin/util.jar ifcasadi # $(MC_LIB) |
---|
193 | if COMPILE_WITH_IPOPT |
---|
194 | mkdir -p $(MC_BUILD)/modelicacasadi_wrapper; \ |
---|
195 | cd $(MC_BUILD)/modelicacasadi_wrapper; \ |
---|
196 | case $(build) in \ |
---|
197 | *-cygwin*|*-mingw*) \ |
---|
198 | cmake $(MC_INTERFACE) -G "MSYS Makefiles" -DCMAKE_CXX_COMPILER_ARG1="-m32" -DCMAKE_CXX_FLAGS="-m32" \ |
---|
199 | -DMC_BUILD="$(MC_BUILD)" -DIPOPT_HOME="$(IPOPT_HOME)" -DCASADI_BUILD_DIR="$(CASADI_BUILD_DIR)" \ |
---|
200 | -DIFCASADI_JAR_BASE="$(JAVA_CASADI_BUILD_DIR)" -DCASADI_HOME="$(CASADI_HOME)" \ |
---|
201 | "$(CMAKE_PYTHON_LIB)" "$(CMAKE_PYTHON_INCLUDE)" ;; \ |
---|
202 | *) \ |
---|
203 | cmake $(MC_INTERFACE) \ |
---|
204 | -DMC_BUILD="$(MC_BUILD)" -DIPOPT_HOME="$(IPOPT_HOME)" -DCASADI_BUILD_DIR="$(CASADI_BUILD_DIR)" \ |
---|
205 | -DIFCASADI_JAR_BASE="$(JAVA_CASADI_BUILD_DIR)" -DCASADI_HOME="$(CASADI_HOME)" \ |
---|
206 | "$(CMAKE_PYTHON_LIB)" "$(CMAKE_PYTHON_INCLUDE)" ;; \ |
---|
207 | esac |
---|
208 | cd $(MC_BUILD)/modelicacasadi_wrapper; make modelicacasadi_wrapper |
---|
209 | endif |
---|
210 | if COMPILE_WITH_IPOPT64 |
---|
211 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
212 | export PYTHONHOME=$(PYTHON64_HOME); \ |
---|
213 | mkdir -p $(MC_BUILD64)/modelicacasadi_wrapper; \ |
---|
214 | cd $(MC_BUILD64)/modelicacasadi_wrapper; \ |
---|
215 | cmake $(MC_INTERFACE) -G "MSYS Makefiles" -DCMAKE_CXX_COMPILER_ARG1="-m64" -DCMAKE_CXX_FLAGS="-m64" \ |
---|
216 | -DMC_BUILD="$(MC_BUILD64)" -DIPOPT_HOME="$(IPOPT64_HOME)" -DCASADI_BUILD_DIR="$(CASADI_BUILD_DIR64)" \ |
---|
217 | -DIFCASADI_JAR_BASE="$(JAVA_CASADI_BUILD_DIR)" -DCASADI_HOME="$(CASADI_HOME)" \ |
---|
218 | "$(CMAKE_PYTHON64_LIB)" "$(CMAKE_PYTHON64_INCLUDE)"; \ |
---|
219 | cd $(MC_BUILD64)/modelicacasadi_wrapper; make modelicacasadi_wrapper |
---|
220 | export PYTHONHOME=$(ORIG_PYTHON_HOME); |
---|
221 | export PATH="$(ORIG_PATH)"; |
---|
222 | endif |
---|
223 | |
---|
224 | $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer/__init__.py: install_modelicacasadi_transfer |
---|
225 | $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer/modelica_casadi_transfer_wrapper.py: install_modelicacasadi_transfer |
---|
226 | |
---|
227 | $(DESTDIR)$(prefix)/Python/modelicacasadi_wrapper/__init__.py: install_modelicacasadi_wrapper |
---|
228 | |
---|
229 | install_modelicacasadi_wrapper: $(MC_BUILD)/modelicacasadi_wrapper/swig/modelicacasadi_wrapper.py |
---|
230 | if COMPILE_WITH_IPOPT |
---|
231 | mkdir -p $(DESTDIR)$(prefix)/Python/modelicacasadi_wrapper |
---|
232 | cp $(MC_BUILD)/modelicacasadi_wrapper/swig/*modelicacasadi_wrapper* $(DESTDIR)$(prefix)/Python/modelicacasadi_wrapper |
---|
233 | rm -f $(DESTDIR)$(prefix)/Python/modelicacasadi_wrapper/__init__.py |
---|
234 | touch $(DESTDIR)$(prefix)/Python/modelicacasadi_wrapper/__init__.py |
---|
235 | echo "from modelicacasadi_wrapper import *" >> $(DESTDIR)$(prefix)/Python/modelicacasadi_wrapper/__init__.py |
---|
236 | endif |
---|
237 | if COMPILE_WITH_IPOPT64 |
---|
238 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
239 | export PYTHONHOME=$(PYTHON64_HOME); |
---|
240 | mkdir -p $(DESTDIR)$(prefix)/Python_64/modelicacasadi_wrapper |
---|
241 | cp $(MC_BUILD64)/modelicacasadi_wrapper/swig/*modelicacasadi_wrapper* $(DESTDIR)$(prefix)/Python_64/modelicacasadi_wrapper |
---|
242 | rm -f $(DESTDIR)$(prefix)/Python_64/modelicacasadi_wrapper/__init__.py |
---|
243 | touch $(DESTDIR)$(prefix)/Python_64/modelicacasadi_wrapper/__init__.py |
---|
244 | echo "from modelicacasadi_wrapper import *" >> $(DESTDIR)$(prefix)/Python_64/modelicacasadi_wrapper/__init__.py |
---|
245 | export PYTHONHOME=$(ORIG_PYTHON_HOME) |
---|
246 | export PATH="$(ORIG_PATH)" |
---|
247 | endif |
---|
248 | |
---|
249 | install_modelicacasadi_transfer: $(MC_INTERFACE)/python/modelica_casadi_transfer_wrapper.py |
---|
250 | if COMPILE_WITH_IPOPT |
---|
251 | mkdir -p $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer |
---|
252 | rm -f $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer/__init__.py |
---|
253 | touch $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer/__init__.py |
---|
254 | echo "from modelica_casadi_transfer_wrapper import *" >> $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer/__init__.py |
---|
255 | cp $(MC_INTERFACE)/python/modelica_casadi_transfer_wrapper.py $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer |
---|
256 | endif |
---|
257 | if COMPILE_WITH_IPOPT64 |
---|
258 | mkdir -p $(DESTDIR)$(prefix)/Python_64/modelicacasadi_transfer |
---|
259 | rm -f $(DESTDIR)$(prefix)/Python_64/modelicacasadi_transfer/__init__.py |
---|
260 | touch $(DESTDIR)$(prefix)/Python_64/modelicacasadi_transfer/__init__.py |
---|
261 | echo "from modelica_casadi_transfer_wrapper import *" >> $(DESTDIR)$(prefix)/Python_64/modelicacasadi_transfer/__init__.py |
---|
262 | cp $(MC_INTERFACE)/python/modelica_casadi_transfer_wrapper.py $(DESTDIR)$(prefix)/Python_64/modelicacasadi_transfer |
---|
263 | endif |
---|
264 | |
---|
265 | if NUMPY_NO_MSVCR |
---|
266 | NUMPY_NO_MSVCR_ARG=--no-msvcr="true" |
---|
267 | else |
---|
268 | NUMPY_NO_MSVCR_ARG= |
---|
269 | endif |
---|
270 | |
---|
271 | |
---|
272 | build-python-packages: |
---|
273 | if PYTHON_ENABLED |
---|
274 | if WITH_OPENMP |
---|
275 | mkdir -p $(assimulo_build_dir); \ |
---|
276 | cd $(abs_top_srcdir)/external; \ |
---|
277 | find Assimulo -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(assimulo_build_dir); \ |
---|
278 | cd $(assimulo_build_dir)/Assimulo; \ |
---|
279 | case $(build) in \ |
---|
280 | *-cygwin*) \ |
---|
281 | python setup.py install --with_openmp=True --superlu-home=$(abs_builddir)/superlu_build/ --sundials-home=$(SUNDIALS_HOME) --sundials-with-superlu=True --blas-home=$(abs_builddir)/blas_install/ --lapack-home=$(abs_builddir)/lapack_install/ --force-32bit="true" --extra-c-flags="-mincoming-stack-boundary=2" --prefix=$(assimulo_install_dir) ;; \ |
---|
282 | *-mingw*) \ |
---|
283 | python setup.py install --with_openmp=True --superlu-home=$(abs_builddir)/superlu_build/ --sundials-home=$(SUNDIALS_HOME) --sundials-with-superlu=True --blas-home=$(abs_builddir)/blas_install/ --lapack-home=$(abs_builddir)/lapack_install/ --force-32bit="true" $(NUMPY_NO_MSVCR_ARG) --extra-c-flags="-mincoming-stack-boundary=2" --prefix=$(assimulo_install_dir) ;; \ |
---|
284 | *) \ |
---|
285 | python setup.py install --with_openmp=True --superlu-home=$(abs_builddir)/superlu_build/ --sundials-home=$(SUNDIALS_HOME) --sundials-with-superlu=True --blas-home=$(abs_builddir)/blas_install/ --lapack-home=$(abs_builddir)/lapack_install/ --prefix=$(assimulo_install_dir) ;; \ |
---|
286 | esac |
---|
287 | if JM_WIN64 |
---|
288 | if WITH_PYTHON64 |
---|
289 | mkdir -p $(assimulo_build_dir64); \ |
---|
290 | cd $(abs_top_srcdir)/external; \ |
---|
291 | find Assimulo -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(assimulo_build_dir64); \ |
---|
292 | cd $(assimulo_build_dir)/Assimulo; \ |
---|
293 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
294 | export PYTHONHOME=$(PYTHON64_HOME); \ |
---|
295 | python setup.py install --with_openmp=True --superlu-home=$(abs_builddir)/superlu_build64/ --sundials-home=$(SUNDIALS_HOME)64 --sundials-with-superlu=True --blas-home=$(abs_builddir)/blas_install64/ --lapack-home=$(abs_builddir)/lapack_install64/ --force-32bit="false" $(NUMPY_NO_MSVCR_ARG) --prefix=$(assimulo_install_dir64); \ |
---|
296 | export PATH="$(ORIG_PATH)"; \ |
---|
297 | export PYTHONHOME=$(ORIG_PYTHON_HOME) |
---|
298 | endif |
---|
299 | endif |
---|
300 | endif |
---|
301 | if !WITH_OPENMP |
---|
302 | mkdir -p $(assimulo_build_dir); \ |
---|
303 | cd $(abs_top_srcdir)/external; \ |
---|
304 | find Assimulo -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(assimulo_build_dir); \ |
---|
305 | cd $(assimulo_build_dir)/Assimulo; \ |
---|
306 | case $(build) in \ |
---|
307 | *-cygwin*) \ |
---|
308 | python setup.py install --sundials-home=$(SUNDIALS_HOME) --blas-home=$(abs_builddir)/blas_install/ --lapack-home=$(abs_builddir)/lapack_install/ --force-32bit="true" --extra-c-flags="-mincoming-stack-boundary=2" --prefix=$(assimulo_install_dir) ;; \ |
---|
309 | *-mingw*) \ |
---|
310 | python setup.py install --sundials-home=$(SUNDIALS_HOME) --blas-home=$(abs_builddir)/blas_install/ --lapack-home=$(abs_builddir)/lapack_install/ --force-32bit="true" $(NUMPY_NO_MSVCR_ARG) --extra-c-flags="-mincoming-stack-boundary=2" --prefix=$(assimulo_install_dir) ;; \ |
---|
311 | *) \ |
---|
312 | python setup.py install --sundials-home=$(SUNDIALS_HOME) --blas-home=$(abs_builddir)/blas_install/ --lapack-home=$(abs_builddir)/lapack_install/ --prefix=$(assimulo_install_dir) ;; \ |
---|
313 | esac |
---|
314 | if JM_WIN64 |
---|
315 | if WITH_PYTHON64 |
---|
316 | mkdir -p $(assimulo_build_dir64); \ |
---|
317 | cd $(abs_top_srcdir)/external; \ |
---|
318 | find Assimulo -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(assimulo_build_dir64); \ |
---|
319 | cd $(assimulo_build_dir64)/Assimulo; \ |
---|
320 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
321 | export PYTHONHOME=$(PYTHON64_HOME); \ |
---|
322 | python setup.py install --sundials-home=$(SUNDIALS_HOME)64 --blas-home=$(abs_builddir)/blas_install64/ --lapack-home=$(abs_builddir)/lapack_install64/ --force-32bit="false" $(NUMPY_NO_MSVCR_ARG) --prefix=$(assimulo_install_dir64) ; \ |
---|
323 | export PATH="$(ORIG_PATH)"; \ |
---|
324 | export PYTHONHOME=$(ORIG_PYTHON_HOME) |
---|
325 | endif |
---|
326 | endif |
---|
327 | endif |
---|
328 | cd $(abs_top_srcdir)/Python/src; \ |
---|
329 | python setup_pymodelica.py install --prefix=$(pymodelica_install_dir); \ |
---|
330 | rm -rf build |
---|
331 | if JM_WIN64 |
---|
332 | if WITH_PYTHON64 |
---|
333 | cd $(abs_top_srcdir)/Python/src; \ |
---|
334 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
335 | export PYTHONHOME=$(PYTHON64_HOME); \ |
---|
336 | python setup_pymodelica.py install --prefix=$(pymodelica_install_dir64); \ |
---|
337 | export PATH="$(ORIG_PATH)"; \ |
---|
338 | export PYTHONHOME=$(ORIG_PYTHON_HOME); \ |
---|
339 | rm -rf build |
---|
340 | endif |
---|
341 | endif |
---|
342 | mkdir -p $(pyfmi_build_dir); \ |
---|
343 | cd $(abs_top_srcdir)/external; \ |
---|
344 | find PyFMI -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(pyfmi_build_dir); \ |
---|
345 | cd $(pyfmi_build_dir)/PyFMI; \ |
---|
346 | case $(build) in \ |
---|
347 | *-cygwin*) \ |
---|
348 | python setup.py install --fmil-home=$(abs_builddir)/FMIL_install/ --force-32bit="true" --extra-c-flags="-mincoming-stack-boundary=2" --prefix=$(pyfmi_install_dir) ;; \ |
---|
349 | *-mingw*) \ |
---|
350 | python setup.py install --fmil-home=$(abs_builddir)/FMIL_install/ --force-32bit="true" $(NUMPY_NO_MSVCR_ARG) --extra-c-flags="-mincoming-stack-boundary=2" --prefix=$(pyfmi_install_dir) ;; \ |
---|
351 | *) \ |
---|
352 | python setup.py install --fmil-home=$(abs_builddir)/FMIL_install/ --prefix=$(pyfmi_install_dir) ;; \ |
---|
353 | esac |
---|
354 | rm -rf build |
---|
355 | if JM_WIN64 |
---|
356 | if WITH_PYTHON64 |
---|
357 | mkdir -p $(pyfmi_build_dir64); \ |
---|
358 | cd $(abs_top_srcdir)/external; \ |
---|
359 | find PyFMI -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(pyfmi_build_dir64); \ |
---|
360 | cd $(pyfmi_build_dir64)/PyFMI; \ |
---|
361 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
362 | export PYTHONHOME=$(PYTHON64_HOME); \ |
---|
363 | python setup.py install --fmil-home=$(abs_builddir)/FMIL_install64/ $(NUMPY_NO_MSVCR_ARG) --prefix=$(pyfmi_install_dir64); \ |
---|
364 | export PATH="$(ORIG_PATH)"; \ |
---|
365 | export PYTHONHOME=$(ORIG_PYTHON_HOME); \ |
---|
366 | rm -rf build |
---|
367 | endif |
---|
368 | endif |
---|
369 | cd $(abs_top_srcdir)/Python/src; \ |
---|
370 | python setup_pyjmi.py install --prefix=$(pyjmi_install_dir); \ |
---|
371 | rm -rf build |
---|
372 | if JM_WIN64 |
---|
373 | if WITH_PYTHON64 |
---|
374 | cd $(abs_top_srcdir)/Python/src; \ |
---|
375 | export PATH=$(PYTHON64_HOME):$(PYTHON64_HOME)/Scripts:$(PYTHON64_HOME)/Lib:"${PATH}"; \ |
---|
376 | export PYTHONHOME=$(PYTHON64_HOME); \ |
---|
377 | python setup_pyjmi.py install --prefix=$(pyjmi_install_dir64); \ |
---|
378 | export PATH="$(ORIG_PATH)"; \ |
---|
379 | export PYTHONHOME=$(ORIG_PYTHON_HOME); \ |
---|
380 | rm -rf build |
---|
381 | endif |
---|
382 | endif |
---|
383 | endif |
---|
384 | |
---|
385 | |
---|
386 | install-python-packages: build-python-packages |
---|
387 | if PYTHON_ENABLED |
---|
388 | mkdir -p $(DESTDIR)$(prefix)/Python |
---|
389 | cp $(abs_top_srcdir)/Python/src/startup.py $(DESTDIR)$(prefix)/ |
---|
390 | cp Python/src/required_defaults.py $(DESTDIR)$(prefix)/Python/ |
---|
391 | [ $(abs_top_srcdir) == $(DESTDIR)$(prefix) ] && echo "Installing in dist directory, don't copy LICENSE file" || cp $(abs_top_srcdir)/Python/LICENSE $(DESTDIR)$(prefix)/Python |
---|
392 | if JM_WIN64 |
---|
393 | if WITH_PYTHON64 |
---|
394 | mkdir -p $(DESTDIR)$(prefix)/Python_64 |
---|
395 | cp Python/src/required_defaults.py $(DESTDIR)$(prefix)/Python_64/ |
---|
396 | [ $(abs_top_srcdir) == $(DESTDIR)$(prefix) ] && echo "Installing in dist directory, don't copy LICENSE file" || cp $(abs_top_srcdir)/Python/LICENSE $(DESTDIR)$(prefix)/Python_64 |
---|
397 | endif |
---|
398 | endif |
---|
399 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
400 | if [ -e $(assimulo_install_dir)/$${pkgdir}/site-packages/ ]; \ |
---|
401 | then \ |
---|
402 | cd $(assimulo_install_dir)/$${pkgdir}/site-packages/; \ |
---|
403 | find assimulo -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python; \ |
---|
404 | fi; \ |
---|
405 | done |
---|
406 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
407 | if [ -e $(pymodelica_install_dir)/$${pkgdir}/site-packages/ ]; \ |
---|
408 | then \ |
---|
409 | cd $(pymodelica_install_dir)/$${pkgdir}/site-packages/; \ |
---|
410 | find pymodelica -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python; \ |
---|
411 | fi; \ |
---|
412 | done |
---|
413 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
414 | if [ -e $(pyjmi_install_dir)/$${pkgdir}/site-packages/ ]; \ |
---|
415 | then \ |
---|
416 | cd $(pyjmi_install_dir)/$${pkgdir}/site-packages/; \ |
---|
417 | find pyjmi -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python; \ |
---|
418 | fi; \ |
---|
419 | done |
---|
420 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
421 | if [ -e $(pyfmi_install_dir)/$${pkgdir}/site-packages/ ]; \ |
---|
422 | then \ |
---|
423 | cd $(pyfmi_install_dir)/$${pkgdir}/site-packages/; \ |
---|
424 | find pyfmi -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python; \ |
---|
425 | fi; \ |
---|
426 | done |
---|
427 | cd $(abs_top_srcdir)/Python/src/tests_jmodelica/; \ |
---|
428 | mkdir -p $(DESTDIR)$(prefix)/Python/tests_jmodelica; \ |
---|
429 | find . -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python/tests_jmodelica |
---|
430 | if JM_WIN64 |
---|
431 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
432 | if [ -e $(assimulo_install_dir64)/$${pkgdir}/site-packages/ ]; \ |
---|
433 | then \ |
---|
434 | cd $(assimulo_install_dir64)/$${pkgdir}/site-packages/; \ |
---|
435 | find assimulo -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python_64; \ |
---|
436 | fi; \ |
---|
437 | done |
---|
438 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
439 | if [ -e $(pymodelica_install_dir64)/$${pkgdir}/site-packages/ ]; \ |
---|
440 | then \ |
---|
441 | cd $(pymodelica_install_dir64)/$${pkgdir}/site-packages/; \ |
---|
442 | find pymodelica -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python_64; \ |
---|
443 | fi; \ |
---|
444 | done |
---|
445 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
446 | if [ -e $(pyjmi_install_dir64)/$${pkgdir}/site-packages/ ]; \ |
---|
447 | then \ |
---|
448 | cd $(pyjmi_install_dir64)/$${pkgdir}/site-packages/; \ |
---|
449 | find pyjmi -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python_64; \ |
---|
450 | fi; \ |
---|
451 | done |
---|
452 | for pkgdir in lib/python2.5 lib/python2.6 lib/python2.7 lib64/python2.5 lib64/python2.6 lib64/python2.7 Lib; do \ |
---|
453 | if [ -e $(pyfmi_install_dir64)/$${pkgdir}/site-packages/ ]; \ |
---|
454 | then \ |
---|
455 | cd $(pyfmi_install_dir64)/$${pkgdir}/site-packages/; \ |
---|
456 | find pyfmi -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python_64; \ |
---|
457 | fi; \ |
---|
458 | done |
---|
459 | if WITH_PYTHON64 |
---|
460 | cd $(abs_top_srcdir)/Python/src/tests_jmodelica/; \ |
---|
461 | mkdir -p $(DESTDIR)$(prefix)/Python_64/tests_jmodelica; \ |
---|
462 | find . -type f |grep -v /.svn | grep -v .pyc | grep -v ~ |tar c -T - -f - | tar x -C $(DESTDIR)$(prefix)/Python_64/tests_jmodelica |
---|
463 | rm -rf $(DESTDIR)$(prefix)/Python_64/tests_jmodelica/files/Modelica/Resources/src |
---|
464 | rm -f $(DESTDIR)$(prefix)/Python_64/tests_jmodelica/files/Modelica/Resources/CMakeLists.txt |
---|
465 | rm -f $(DESTDIR)$(prefix)/Python_64/tests_jmodelica/files/Modelica/Resources/Makefile.am |
---|
466 | rm -f $(DESTDIR)$(prefix)/Python_64/tests_jmodelica/files/Modelica/Resources/Makefile.in |
---|
467 | endif |
---|
468 | endif |
---|
469 | rm -rf $(DESTDIR)$(prefix)/Python/tests_jmodelica/files/Modelica/Resources/src |
---|
470 | rm -f $(DESTDIR)$(prefix)/Python/tests_jmodelica/files/Modelica/Resources/CMakeLists.txt |
---|
471 | rm -f $(DESTDIR)$(prefix)/Python/tests_jmodelica/files/Modelica/Resources/Makefile.am |
---|
472 | rm -f $(DESTDIR)$(prefix)/Python/tests_jmodelica/files/Modelica/Resources/Makefile.in |
---|
473 | mkdir -p $(DESTDIR)$(prefix)/bin |
---|
474 | [ -e $(DESTDIR)$(prefix)/bin/jm_python.sh ] && echo "File exists, don't copy jm_python.sh" || cp Python/jm_python.sh $(DESTDIR)$(prefix)/bin/jm_python.sh |
---|
475 | [ -e $(DESTDIR)$(prefix)/bin/jm_ipython.sh ] && echo "File exists, don't jm_ipython.sh" || cp Python/jm_ipython.sh $(DESTDIR)$(prefix)/bin/jm_ipython.sh |
---|
476 | chmod ugo+x $(DESTDIR)$(prefix)/bin/jm_*.sh |
---|
477 | endif |
---|
478 | |
---|
479 | |
---|
480 | # Hooks for extra build or install actions. Must be empty or the path of a shell script to execute. |
---|
481 | # Both scripts will get the source directory as the first argument and the install directory as the second. |
---|
482 | BUILD_EXTRA= |
---|
483 | INSTALL_EXTRA= |
---|
484 | INSTALL_EXTRA_CASADI= |
---|
485 | |
---|
486 | # Paths for Java build |
---|
487 | JAVA_BUILD_DIR=$(abs_builddir)/java |
---|
488 | COMPILER_DIR=$(abs_top_srcdir)/Compiler |
---|
489 | JAVA_MC_ANT_FILE=$(COMPILER_DIR)/ModelicaCompiler/build.xml |
---|
490 | JAVA_OC_ANT_FILE=$(COMPILER_DIR)/OptimicaCompiler/build.xml |
---|
491 | JAVA_CASADI_BASE_DIR=$(COMPILER_DIR) |
---|
492 | JAVA_CASADI_BUILD_DIR=$(abs_builddir) |
---|
493 | JAVA_MC_CASADI_ANT_FILE=$(COMPILER_DIR)/ModelicaCompilerCasADi/build.xml |
---|
494 | JAVA_OC_CASADI_ANT_FILE=$(COMPILER_DIR)/OptimicaCompilerCasADi/build.xml |
---|
495 | JAVA_EXEC_CP=$(JAVA_BUILD_DIR)/bin/ModelicaCompiler.jar:$(JAVA_BUILD_DIR)/bin/util.jar:$(abs_top_srcdir)/ThirdParty/Beaver/beaver-0.9.6.1/lib/beaver-rt.jar |
---|
496 | |
---|
497 | all-local: build-python-packages build-compiler |
---|
498 | $(abs_top_srcdir)/get_version.sh $(abs_top_srcdir) https://svn.jmodelica.org > $(abs_builddir)/version.txt |
---|
499 | if [ "$(BUILD_EXTRA)" ]; then exec "$(BUILD_EXTRA)" "$(abs_top_srcdir)" "$(DESTDIR)$(prefix)"; fi |
---|
500 | |
---|
501 | build-compiler: |
---|
502 | if HAVE_ANT |
---|
503 | mkdir -p $(JAVA_BUILD_DIR) |
---|
504 | cd $(JAVA_BUILD_DIR); \ |
---|
505 | $(ANT_OPTS) $(ANT) -f "$(JAVA_MC_ANT_FILE)" "-Dcompiler=$(COMPILER_DIR)" |
---|
506 | cd $(JAVA_BUILD_DIR); \ |
---|
507 | $(ANT_OPTS) $(ANT) -f "$(JAVA_OC_ANT_FILE)" "-Dcompiler=$(COMPILER_DIR)" |
---|
508 | java -cp "$(JAVA_EXEC_CP)" org.jmodelica.modelica.compiler.ModelicaCompiler\$$OptionExporter -x "$(abs_builddir)/DefaultOptions.xml" |
---|
509 | endif |
---|
510 | |
---|
511 | install-exec-local: install-python-packages |
---|
512 | if HAVE_ANT |
---|
513 | cp $(JAVA_BUILD_DIR)/bin/ModelicaCompiler.jar $(DESTDIR)$(prefix)/lib/ |
---|
514 | cp $(JAVA_BUILD_DIR)/bin/util.jar $(DESTDIR)$(prefix)/lib/ |
---|
515 | cp $(JAVA_BUILD_DIR)/bin/OptimicaCompiler.jar $(DESTDIR)$(prefix)/lib/ |
---|
516 | cp $(JAVA_BUILD_DIR)/bin/separateProcess.jar $(DESTDIR)$(prefix)/lib/ |
---|
517 | endif |
---|
518 | [ $(abs_top_srcdir) == $(DESTDIR)$(prefix) ] && echo "Installing in dist directory, don't copy LICENSE file" || cp $(abs_top_srcdir)/LICENSE $(DESTDIR)$(prefix)/ |
---|
519 | cp $(abs_top_srcdir)/RuntimeLibrary/LICENSE_GPL $(DESTDIR)$(prefix)/lib/ |
---|
520 | cp $(abs_top_srcdir)/RuntimeLibrary/LICENSE_CPL $(DESTDIR)$(prefix)/lib/ |
---|
521 | cp $(abs_top_srcdir)/RuntimeLibrary/LICENSE_GPL $(DESTDIR)$(prefix)/include/ |
---|
522 | cp $(abs_top_srcdir)/RuntimeLibrary/LICENSE_CPL $(DESTDIR)$(prefix)/include/ |
---|
523 | mkdir -p $(DESTDIR)$(prefix)/Makefiles |
---|
524 | cp $(abs_top_srcdir)/RuntimeLibrary/LICENSE_GPL $(DESTDIR)$(prefix)/Makefiles/LICENSE |
---|
525 | case $(build) in \ |
---|
526 | *-cygwin*|*-mingw*) \ |
---|
527 | cp $(abs_top_srcdir)/RuntimeLibrary/Makefiles/Makefile.windows $(DESTDIR)$(prefix)/Makefiles/MakeFile && \ |
---|
528 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/winpthreads/lib/winpthreads && \ |
---|
529 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/winpthreads/include && \ |
---|
530 | cp $(abs_builddir)/winpthreads_build/COPYING $(DESTDIR)$(prefix)/ThirdParty/winpthreads && \ |
---|
531 | cp $(abs_builddir)/winpthreads_build/.libs/libwinpthread.a $(DESTDIR)$(prefix)/ThirdParty/winpthreads/lib/winpthreads && \ |
---|
532 | cp $(abs_builddir)/winpthreads_build/include/*.h $(DESTDIR)$(prefix)/ThirdParty/winpthreads/include ;; \ |
---|
533 | *-apple*) \ |
---|
534 | cp $(abs_top_srcdir)/RuntimeLibrary/Makefiles/Makefile.macosx $(DESTDIR)$(prefix)/Makefiles/MakeFile ;; \ |
---|
535 | *) \ |
---|
536 | cp $(abs_top_srcdir)/RuntimeLibrary/Makefiles/Makefile.linux $(DESTDIR)$(prefix)/Makefiles/MakeFile ;; \ |
---|
537 | esac |
---|
538 | |
---|
539 | cp $(abs_builddir)/DefaultOptions.xml $(DESTDIR)$(prefix)/DefaultOptions.xml |
---|
540 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty |
---|
541 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/Beaver |
---|
542 | cp $(abs_top_srcdir)/ThirdParty/Beaver/beaver-0.9.6.1/LICENSE $(DESTDIR)$(prefix)/ThirdParty/Beaver/ |
---|
543 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/Beaver/lib |
---|
544 | cp $(abs_top_srcdir)/ThirdParty/Beaver/beaver-0.9.6.1/lib/beaver-rt.jar $(DESTDIR)$(prefix)/ThirdParty/Beaver/lib/ |
---|
545 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/Sundials |
---|
546 | cp -r $(SUNDIALS_HOME)/* $(DESTDIR)$(prefix)/ThirdParty/Sundials |
---|
547 | cp $(abs_top_srcdir)/ThirdParty/Sundials/sundials-2.7.0/LICENSE $(DESTDIR)$(prefix)/ThirdParty/Sundials |
---|
548 | if JM_WIN64 |
---|
549 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/Sundials/lib64 |
---|
550 | cp -r $(SUNDIALS_HOME)64/lib/* $(DESTDIR)$(prefix)/ThirdParty/Sundials/lib64 |
---|
551 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/winpthreads/lib/winpthreads64 |
---|
552 | cp $(abs_builddir)/winpthreads_build64/.libs/libwinpthread.a $(DESTDIR)$(prefix)/ThirdParty/winpthreads/lib/winpthreads64 |
---|
553 | endif |
---|
554 | mkdir -p $(DESTDIR)$(prefix)/ThirdParty/Minpack |
---|
555 | cp -r $(MINPACK_HOME)/* $(DESTDIR)$(prefix)/ThirdParty/Minpack |
---|
556 | cp $(abs_top_srcdir)/ThirdParty/Minpack/cminpack-1.3.2/CopyrightMINPACK.txt $(DESTDIR)$(prefix)/ThirdParty/Minpack |
---|
557 | if [ $(abs_top_srcdir) == $(DESTDIR)$(prefix) ]; then \ |
---|
558 | echo "Installing in dist directory, don't copy MSL"; \ |
---|
559 | else \ |
---|
560 | mkdir -p "$(DESTDIR)$(prefix)/ThirdParty/MSL/Modelica"; \ |
---|
561 | mkdir -p "$(DESTDIR)$(prefix)/ThirdParty/MSL/ModelicaServices"; \ |
---|
562 | cd "$(DESTDIR)$(prefix)/ThirdParty/MSL"; \ |
---|
563 | find . -depth -print0 | while read -d $$'\0' -r f ; do if [ ! -e "$(abs_top_srcdir)/ThirdParty/MSL/$${f}" ]; then rm -rf "$${f}"; fi; done; \ |
---|
564 | cd "$(abs_top_srcdir)/ThirdParty/MSL/Modelica"; \ |
---|
565 | find * -type f |grep -v /.svn | grep -v ~ |tar c -T - -f - | tar x -C "$(DESTDIR)$(prefix)/ThirdParty/MSL/Modelica"; \ |
---|
566 | cd "$(abs_top_srcdir)/ThirdParty/MSL/ModelicaServices"; \ |
---|
567 | find * -type f |grep -v /.svn | grep -v ~ |tar c -T - -f - | tar x -C "$(DESTDIR)$(prefix)/ThirdParty/MSL/ModelicaServices"; \ |
---|
568 | cd "$(abs_top_srcdir)/ThirdParty/MSL"; \ |
---|
569 | $(CP) Complex.mo "$(DESTDIR)$(prefix)/ThirdParty/MSL"; \ |
---|
570 | fi |
---|
571 | mkdir -p $(DESTDIR)$(prefix)/CodeGenTemplates |
---|
572 | mkdir -p $(DESTDIR)$(prefix)/CodeGenTemplates/FMIBase |
---|
573 | cp $(abs_top_srcdir)/RuntimeLibrary/LICENSE_GPL $(DESTDIR)$(prefix)/CodeGenTemplates/LICENSE |
---|
574 | cp -r $(abs_top_srcdir)/Compiler/ModelicaCBackEnd/templates/*.c $(DESTDIR)$(prefix)/CodeGenTemplates |
---|
575 | cp -r $(abs_top_srcdir)/Compiler/ModelicaCBackEnd/templates/FMIBase/*.c $(DESTDIR)$(prefix)/CodeGenTemplates/FMIBase |
---|
576 | cp -r $(abs_top_srcdir)/Compiler/ModelicaCBackEnd/templates/FMIBase/*.h $(DESTDIR)$(prefix)/CodeGenTemplates/FMIBase |
---|
577 | cp $(abs_top_srcdir)/Compiler/ModelicaFMUXBackEnd/templates/*.tpl $(DESTDIR)$(prefix)/CodeGenTemplates |
---|
578 | mkdir -p $(DESTDIR)$(prefix)/XML |
---|
579 | [ $(abs_top_srcdir) == $(DESTDIR)$(prefix) ] && echo "Installing in dist directory, don't copy XML schemas" || cp $(abs_top_srcdir)/XML/*.xsd $(DESTDIR)$(prefix)/XML |
---|
580 | [ $(abs_top_srcdir) == $(DESTDIR)$(prefix) ] && echo "Installing in dist directory, don't copy XML LICENSE" || cp $(abs_top_srcdir)/XML/LICENSE $(DESTDIR)$(prefix)/XML |
---|
581 | cp $(abs_builddir)/version.txt $(DESTDIR)$(prefix) |
---|
582 | chmod ugo+x jm_tests |
---|
583 | cp -p jm_tests $(DESTDIR)$(prefix)/jm_tests |
---|
584 | if [ "$(INSTALL_EXTRA)" ]; then exec "$(INSTALL_EXTRA)" "$(abs_top_srcdir)" "$(DESTDIR)$(prefix)"; fi |
---|
585 | |
---|
586 | bindistdir: install |
---|
587 | rm -rf $(bindistdir) |
---|
588 | mkdir -p $(bindistdir) |
---|
589 | cp $(DESTDIR)$(prefix)/LICENSE $(bindistdir) |
---|
590 | cp $(DESTDIR)$(prefix)/startup.py $(bindistdir) |
---|
591 | cp $(DESTDIR)$(prefix)/version.txt $(bindistdir) |
---|
592 | cp $(DESTDIR)$(prefix)/DefaultOptions.xml $(bindistdir) |
---|
593 | cp -r $(DESTDIR)$(prefix)/CodeGenTemplates $(bindistdir) |
---|
594 | cp -r $(DESTDIR)$(prefix)/Makefiles $(bindistdir) |
---|
595 | cp -r $(DESTDIR)$(prefix)/Python $(bindistdir) |
---|
596 | cp -r $(DESTDIR)$(prefix)/ThirdParty $(bindistdir) |
---|
597 | cp -r $(DESTDIR)$(prefix)/XML $(bindistdir) |
---|
598 | cp -r $(DESTDIR)$(prefix)/include $(bindistdir) |
---|
599 | cp -r $(DESTDIR)$(prefix)/lib $(bindistdir) |
---|
600 | if COMPILE_WITH_IPOPT |
---|
601 | mkdir -p $(bindistdir)/ThirdParty/Ipopt |
---|
602 | # Copy files |
---|
603 | cd $(IPOPT_HOME); find * -type f |grep -v /.svn | grep -v ~ |tar c -T - -f - | tar x -C $(abs_builddir)/$(bindistdir)/ThirdParty/Ipopt |
---|
604 | # Copy symbolic links |
---|
605 | cd $(IPOPT_HOME); find * -type l |grep -v /.svn | grep -v ~ |tar c -T - -f - | tar x -C $(abs_builddir)/$(bindistdir)/ThirdParty/Ipopt |
---|
606 | endif |
---|
607 | |
---|
608 | if WITH_MINGW |
---|
609 | mkdir -p $(bindistdir)/ThirdParty/MinGW |
---|
610 | # Copy files |
---|
611 | cd $(MINGW_HOME); find * -type f |grep -v /.svn | grep -v ~ |tar c -T - -f - | tar x -C $(abs_builddir)/$(bindistdir)/ThirdParty/MinGW |
---|
612 | # Copy symbolic links |
---|
613 | cd $(MINGW_HOME); find * -type l |grep -v /.svn | grep -v ~ |tar c -T - -f - | tar x -C $(abs_builddir)/$(bindistdir)/ThirdParty/MinGW |
---|
614 | endif |
---|
615 | |
---|
616 | bindist: bindistdir |
---|
617 | tar -cf $(bindistdir).tar $(bindistdir) |
---|
618 | gzip -c $(bindistdir).tar > $(bindistdir).tar.gz |
---|
619 | rm -rf $(bindistdir) |
---|
620 | rm -rf $(bindistdir).tar |
---|
621 | |
---|
622 | test: install |
---|
623 | $(prefix)/jm_tests -i |
---|
624 | |
---|
625 | clean-local: clean-frontends clean-python-packages clean-casadi-interface |
---|
626 | |
---|
627 | clean-casadi-interface: |
---|
628 | rm -rf $(MC_BUILD) |
---|
629 | rm -rf $(MC_BUILD64) |
---|
630 | # rm -rf $(DESTDIR)$(prefix)/Python/casadi |
---|
631 | # rm -rf $(DESTDIR)$(prefix)/Python/modelicacasadi_transfer |
---|
632 | if HAVE_ANT |
---|
633 | cd $(JAVA_CASADI_BUILD_DIR)/ModelicaCompilerCasADi; \ |
---|
634 | $(ANT_OPTS) $(ANT) clean ; rm -rf $(MC_CASADI_BUILD)/src/cpp-generated $(MC_CASADI_BUILD)/src/java-generated/ifcasadi |
---|
635 | cd $(JAVA_CASADI_BUILD_DIR)/OptimicaCompilerCasADi; \ |
---|
636 | $(ANT_OPTS) $(ANT) clean ; rm -rf $(OC_CASADI_BUILD)/src/cpp-generated $(OC_CASADI_BUILD)/src/java-generated/ifcasadi |
---|
637 | endif |
---|
638 | |
---|
639 | clean-python-packages: |
---|
640 | if PYTHON_ENABLED |
---|
641 | if [ -d $(assimulo_build_dir)/Assimulo ]; then \ |
---|
642 | cd $(assimulo_build_dir)/Assimulo; \ |
---|
643 | python setup.py clean --all --sundials-home=$(SUNDIALS_HOME); \ |
---|
644 | cd $(abs_builddir); \ |
---|
645 | fi; |
---|
646 | rm -rf $(assimulo_build_dir) || echo Could not remove $(assimulo_build_dir) |
---|
647 | rm -rf $(assimulo_install_dir) || echo Could not remove $(assimulo_install_dir) |
---|
648 | -cd $(abs_top_srcdir)/Python/src; \ |
---|
649 | python setup_pymodelica.py clean --all |
---|
650 | -rm -rf $(pymodelica_install_dir) || echo Could not remove $(pymodelica_install_dir) |
---|
651 | if [ -d $(pyfmi_build_dir)/PyFMI ]; then \ |
---|
652 | -cd $(pyfmi_build_dir)/PyFMI; \ |
---|
653 | python setup.py clean --all; \ |
---|
654 | cd $(abs_builddir); \ |
---|
655 | fi; |
---|
656 | -rm -rf $(pyfmi_build_dir) || echo Could not remove $(pyfmi_build_dir) |
---|
657 | -rm -rf $(pyfmi_install_dir) || echo Could not remove $(pyfmi_install_dir) |
---|
658 | -cd $(abs_top_srcdir)/Python/src; \ |
---|
659 | python setup_pyjmi.py clean --all |
---|
660 | -rm -rf $(pyjmi_install_dir)|| echo Could not remove $(pyjmi_install_dir) |
---|
661 | endif |
---|
662 | |
---|
663 | clean-frontends: |
---|
664 | if HAVE_ANT |
---|
665 | rm -rf $(JAVA_BUILD_DIR) |
---|
666 | endif |
---|
667 | |
---|
668 | docs: |
---|
669 | cd $(abs_top_srcdir); doxygen doc/ModelicaCompiler/modelica_compiler_doxydoc.conf |
---|
670 | cd $(abs_top_srcdir); doxygen doc/OptimicaCompiler/optimica_compiler_doxydoc.conf |
---|
671 | make -C $(abs_top_srcdir)/doc/PyJMI html |
---|
672 | |
---|
673 | |
---|
674 | .PHONY: modelicacasadi_wrapper ifcasadi install_modelicacasadi_transfer install_modelicacasadi_wrapper |
---|