Merge branch 'openmodelica' into 'master'
Add openmodelica. See merge request nonguix/nonguix!466
This commit is contained in:
commit
bf27c2a22e
120
nongnu/packages/modelica.scm
Normal file
120
nongnu/packages/modelica.scm
Normal file
|
@ -0,0 +1,120 @@
|
|||
(define-module (nongnu packages modelica)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages ccache)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages graphics)
|
||||
#:use-module (gnu packages graphviz)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (gnu packages opencl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
(define ombootstrapping
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri "https://api.github.com/repos/OpenModelica/OMBootstrapping/tarball/c289e97c41d00939a4a69fe504961b47283a6d8e")
|
||||
(sha256
|
||||
(base32 "1drz4hh9xfp2n9ilr0cmxm0jka24swdnglh8av06rdp0b2f9xszi"))))
|
||||
|
||||
(define-public openmodelica
|
||||
(package
|
||||
(name "openmodelica")
|
||||
(version "1.22.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/OpenModelica/OpenModelica")
|
||||
(commit (string-append "v" version))
|
||||
(recursive? #t)))
|
||||
(sha256
|
||||
(base32 "02g5i2clcnn16gmi8v11sfn23r291jpsqi98qqq6al3lmc1xp556"))
|
||||
(snippet
|
||||
(with-imported-modules
|
||||
'((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(substitute*
|
||||
"OMCompiler/Compiler/boot/CMakeLists.txt"
|
||||
(("https://github.com/OpenModelica/OMBootstrapping/archive/refs/heads/master.tar.gz")
|
||||
(string-append "file://" #$ombootstrapping)))
|
||||
|
||||
|
||||
(substitute*
|
||||
"OMPlot/OMPlot/OMPlotGUI/CMakeLists.txt"
|
||||
(("target_link_libraries\\(OMPlotLib PUBLIC omc::simrt::runtime\\)")
|
||||
"target_link_libraries(OMPlotLib PUBLIC omc::simrt::runtime)
|
||||
find_package(Qt5Svg REQUIRED)
|
||||
INCLUDE_DIRECTORIES(${Qt5Svg_INCLUDE_DIRS})
|
||||
target_link_libraries(OMPlotLib PUBLIC Qt5Svg)
|
||||
")))))))
|
||||
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:validate-runpath? #f
|
||||
;; No tests
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
''("-DOM_OMEDIT_ENABLE_QTWEBENGINE=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'create-home
|
||||
(lambda _
|
||||
(mkdir-p (string-append (getcwd) "/home"))
|
||||
(setenv "HOME" (string-append (getcwd) "/home")))))))
|
||||
(native-inputs
|
||||
(list
|
||||
ccache
|
||||
doxygen
|
||||
graphviz
|
||||
autoconf
|
||||
pkg-config))
|
||||
(inputs
|
||||
(list
|
||||
expat
|
||||
openscenegraph
|
||||
readline
|
||||
qtdeclarative-5
|
||||
qtwebchannel-5
|
||||
qtwebengine-5
|
||||
qtxmlpatterns
|
||||
qtsvg-5
|
||||
qtbase-5
|
||||
opencl-headers
|
||||
opencl-icd-loader
|
||||
boost
|
||||
icedtea
|
||||
(list util-linux "lib")
|
||||
gfortran-toolchain
|
||||
openblas
|
||||
curl))
|
||||
(home-page "https://openmodelica.org/")
|
||||
(synopsis
|
||||
"Open-source Modelica-based modeling and simulation environment")
|
||||
(description
|
||||
"OPENMODELICA is an open-source Modelica-based1 modeling and simulation
|
||||
environment intended for industrial and academic usage.
|
||||
|
||||
The goal with the OpenModelica effort is to create a comprehensive Open Source
|
||||
Modelica modeling, compilation and simulation environment based on free software
|
||||
distributed in binary and source code form for research, teaching, and
|
||||
industrial usage. We invite researchers and students, or any interested
|
||||
developer to participate in the project and cooperate around OpenModelica,
|
||||
tools, and applications.")
|
||||
(license license:agpl3)))
|
Loading…
Reference in New Issue
Block a user