From 27eb38d18856f0e508b046fcb46db6737e557fb5 Mon Sep 17 00:00:00 2001 From: Ivan Lloro Date: Mon, 29 Jul 2024 00:38:40 +0200 Subject: [PATCH] sci-physics/openmodelica: new package, add 1.23.1 Signed-off-by: Ivan Lloro --- sci-physics/openmodelica/files/omedit.png | Bin 0 -> 54373 bytes sci-physics/openmodelica/files/omoptim.png | Bin 0 -> 23747 bytes .../openmodelica-1.23.1-raw_strings.patch | 29 +++ sci-physics/openmodelica/metadata.xml | 11 ++ .../openmodelica/openmodelica-1.23.1.ebuild | 184 ++++++++++++++++++ 5 files changed, 224 insertions(+) create mode 100644 sci-physics/openmodelica/files/omedit.png create mode 100644 sci-physics/openmodelica/files/omoptim.png create mode 100644 sci-physics/openmodelica/files/openmodelica-1.23.1-raw_strings.patch create mode 100644 sci-physics/openmodelica/metadata.xml create mode 100644 sci-physics/openmodelica/openmodelica-1.23.1.ebuild diff --git a/sci-physics/openmodelica/files/omedit.png b/sci-physics/openmodelica/files/omedit.png new file mode 100644 index 0000000000000000000000000000000000000000..9fd43dcefe7ee715b11f2f8c485bd6f828182863 GIT binary patch literal 54373 zcmZ@vDWyoqsL>@7lA}Qw64DIF)T=?|J`y z4;;qX&h}h;?)$l}PdyPDY6`em6j%TN09Q#-?mYm2g!mT;07OST7=HQ*K|IizE526+ z0KAw10BA4(aEEvbx(fifaRUH*U;scQ82})4PH)r{L%e`)rlKGRc>ed3-BK8jcn0IM zlImNGT?}ko2A)#w7E;8U0ZMYxTAuRTu3Kzc#GlZSxUDM5<=nwL zObst<%v36W)N(Auz0{+zv$z+QXuE~=o^KDOoerLRzc7D3aEamgW3IGxlo4aWcf{&+C& z%4flWjE2!!w+H^Rnsu*JVQ!|gQjj=K&Ws%6I<$PI@9)8#U_dJ^*ymF;sRz~j=Pk)c zKG(dFM@W!=o;o-fKlJqP$b)jSrMN(}`ChVP<5 zp8Qd680k@wMgdXYAv};xGGi1*4DODC_Fl=$^Zd)HNdNO&tG3geQUeb)Y7s9F0U$O5 z5c^{D-k+6>HVePw9B`J+FG~S-xMj$Eyh^e%@j9g(02o6B?toHzFVOaJjEN=B=bqhh zq|Vx&+nylqd1cS?;7x%1EYZzwp)fZs-(bFha5W>*J*B~ zk@P98heqe6*wEn`6n#J3kUpr3F!~OV<|Bldc z^G+-aX`O_ou>aAdI2Wz=QR|`i)f26O$I&g`h|hf_y9{u{Ppu^t}Y zkdKo~=%4K>gtd1Kx76W(d25j(lWJ=*PWK^7i@fR13d<&yA)2w8qPX7kh`5@s3pTDKC;@{$72eSmP3U`^nvh`SM=K9eMnK|uSO5~`|z-&9enO`e$LGKUi|KDDc6ww#s6cn zk4V-QC7)c`#^ODLDj{o1?!r7gq>5|&Zck4gs0l4~dvh1lmK|A1{a>&V1|_06Eu@alu0dpy+N0OQ zj&l-DQF9CX{CL{E1-8n+YB*rT_yOUwEv<~X0kJ4#rXQf;;d4af$+&^57*|yFEn-!c z7{NQ8Wb%%7-}!WaC&5yyq=+iB6MiJ*f0(p!;^r$HTr}JM2%rS$<4In9_u3u1mYA{; z@;hhr-`?4-J$xhgo-j^JRv9H92Z(G=$d{b95>nJqy0tfZ5zPU+u1m9XC5%6JX{uRv zGe8D#AEPR8e*!QzzrHzP@!R{IGIyIbUs>)tF!B`A=Dio`f8ozIavsb_QHd_eO~t?< z$gHKOotl~P3_mznzlj#F(;!O(<8&HAEaXt>#XO~D?8Y~R*BnkY~r-ri1+t3b(v|wlYHWlWYxlFp(vV+>6fBJrwkoOr^A~%6@E8p zpC?lx!fe^-v9_GzZ+xcOQ$UDA8ImjBPw+1!WTtEEp1C~ep4RVJd$!5RQF zoNy5efaFczeK<^lE#bHQLMv&v*=dbrcnPt-4xEl&qgd6{%q$L0P`Bvi zG4%HZitC&rha&oy0+T|V>j!_1*YbCsw1lQdtmHPE&Zo;ih61H{4I#~Q|Lx?LHyF3Hh3?mcFvafp2Cj>q%X)n>v_|4&TKs4>Rp~D*p7+>O}abhO7Ym?6p zE+WU&_jjs>jgf$Zgc+VeCO`azFFa8w$eeHksr_j&2H=y&HPK{}NP)ZrsfvoDh z>E!0#uUeyM`sj7iz=E;Q)&4?<%$iuT$HAiSZr)TyMA5b1i9&_LjI`q0aKf!PSNG>< z{c^v6oD@LkXcq__#3Y3po^t|C$-y=J*e*cQ*mfK6?Xl}g^!O3U`tXt(I*lHR zL{CN-Z*bCeF9{1NZQ2f^d#He4Pi=0#+lpn83=C2@k_TzUSYX*O$10-~!Hn{UuEU-? z%iRxJ1CRz5g+Nl7th>*&Z+1}eS_&hPtH(y=JIG*;#nISS(K!{ZsC9eTy55+8;G<(9 zU(rXz1aTg^*?(R&2`_s{S`nsFXj$a`p;4wY_JW;yXfcqhn7!__$7?f%~ige;t z(2ok0E{{bCcRuZKNtZlFP8JZwh-nK#j%oC5>r!pJ9^pZBOhdlR`=c2TW~H<1bvBH1JTYxhUh`By(2veD0NyT~ga;R7zd;9iaY3GO&TYD@X92LNWioSjZZl zY$^zT%PlV(i-ftywcUe*V^S3`cEpXPtit*#M+?1_I7)kT{ueUR6(1_T*htt8+DRZN zbEo|p1;_1iFn}QahLCVpSzl7T|psqlcXTG8u;5+2Tj`Vlx&haPt60pCz--"P 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

@9CNr~7vh`fmW(ABD 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 literal 0 HcmV?d00001 diff --git a/sci-physics/openmodelica/files/omoptim.png b/sci-physics/openmodelica/files/omoptim.png new file mode 100644 index 0000000000000000000000000000000000000000..3dcafa5bcacaac82ef74c6f0955d34a955e240c6 GIT binary patch literal 23747 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 x#rf_xxh1j>WM7-gAeI2HnVQ4%H`_!c3 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

Nl6@ znbbgY$0%fPpdr zQPfoRt{Eln{`^WJFnYJ8xfjpJr(nfvD@$!0CStk%HIouexakinsU>Un>RZ}d+RQY` zU(dr+jUa@ymDfY!R(9Lw;R9 z|7coX$=nvYA+}nYOWWz=txDz}=yG3kU)HFH>8Z0D<8hKk2_nFn6mSAg5%748&pRQk z3x~ftoM&kyVW-%I`DvT4bT|?mDCQ{~ME%n-RO1?ZY7s3(fV>by*fyGq`!<`zcTI4| z$4(wwywIWc?dvSGT&T>&MQJEBei0N1Qnp;acg-|?q>ydJzk$<%;CoHTLQGNVq5&Sq z{d?C7*`Y`M)z_n=rF-Xi#96H-O&4b*#7ySD@(rYrRSl|+7lq6UIw$P2cr{=0BQ0An z60aV=@B7JCzAVze*JgNQV~9L9JyaJG=Wys+@lFJ#N4ls?#f{pp>0K-0Doqso5x&EiBR0HSaP^#>H+DFD z&+8rkK>t8xEN^@gn|?O8QBN{~R@77u1igNl{j3a|!iNb&25s-(RVq~j5SL?WAuBVv zEw=y+QfdPUbD#`)UcjA|7Rm!kePNO3z@R@iC1?7ij}r3mahustkG$Si{=Vn#=hF{e zVyd0}-tTuiZl@0T7bsi5VH0OemekLc6tmK|_C@J7U1p~owB5fC=yU{r=G5#0sYHA2 zBulYWOLaO|;apm61REhem|tLPw!t6!WOEU<{lI0t0QbdhI(;2W(z4E+uD6 zdI0fi7urL1zkg};;LBuJT1t{E<>Qhp{ZZf|8AFdpvA!5#8mZI$18KWR@juxzE8kNE zAud8&H2EnYjVgMh;-tSV%#`gt4!)OnGOLazWFkISU7RTzI!UAeX|GL!An0MFASe;j zPh0G%$CzDlJjH_(tLQA9(PJ}!Vy!@XKfC((p2MMR$%<%6Na&%54DY-EBYiY|uaOoB zc@$0A{@SW~O~_uSesId+?HTmFFeK|$)Q+n6w5r`ln#kl)3ljA$dpMwxe`i*6(h%(Hu6sC~*69jyojS8>CQjy0zx$IJ<_K zoKS1Fjcpq&&E1`v5;C?SX%*F;z_7MFJkaIEL@|@s_F@f=?(=Zf1|E<;*p<3YK!hAq z=G!ZgT5hlko}VYdkPl<1Zf~AMr2#S9oB?h>9R|5x3i5ANXVbv<>thb8$>R(jBE7mA zujyq75~lg!=ZF{Fkk#2f$Y4}R~)bI|I>M0S=lp`|ptmCyhm;k=c>;_%EHG}eG9X#w6< z>~!1J4!!geV*38gixcQMrGk^~weFhA5S@V=yu~97?IXP0BfK>|!@Pk9NJ&9SMOHyg zR#EYmqKf8KRZV3zX$1vM1qBCQ)8+qV5ESC&?-Tp~8%P@OxdH}~|I0gnLlv b|Fuz3`tL?0>JD`Q8<2^ixk0VITk?MaN0-E& literal 0 HcmV?d00001 diff --git a/sci-physics/openmodelica/files/openmodelica-1.23.1-raw_strings.patch b/sci-physics/openmodelica/files/openmodelica-1.23.1-raw_strings.patch new file mode 100644 index 0000000000..73e169b36a --- /dev/null +++ b/sci-physics/openmodelica/files/openmodelica-1.23.1-raw_strings.patch @@ -0,0 +1,29 @@ +diff --git a/OMSens/analysis/indiv_sens.py b/analysis/indiv_sens.py +index 676c0b6..e12f022 100644 +--- a/OMSens/analysis/indiv_sens.py ++++ b/OMSens/analysis/indiv_sens.py +@@ -323,8 +323,8 @@ def slugify(value): + and converts spaces to hyphens. + """ + value = unicodedata.normalize('NFKD', value) +- value = re.sub('[^\w\s-]', '', value).strip().lower() +- value = re.sub('[-\s]+', '-', value) ++ value = re.sub(r'[^\w\s-]', '', value).strip().lower() ++ value = re.sub(r'[-\s]+', '-', value) + return value + + +diff --git a/OMSens/modelica_interface/run_omc.py b/modelica_interface/run_omc.py +index 583e0d6..1cd67e4 100644 +--- a/OMSens/modelica_interface/run_omc.py ++++ b/OMSens/modelica_interface/run_omc.py +@@ -36,7 +36,8 @@ def writeOMCLog(log_str, output_path): + final_str = intro_str+separator_str+log_str + filesystem.files_aux.writeStrToFile(final_str,output_path) + return 0 ++ + def removeTemporaryFiles(folder_path): +- regex = '.*\.(c|o|h|makefile|log|libs|json)$' ++ regex = r'.*\.(c|o|h|makefile|log|libs|json)$' + filesystem.files_aux.removeFilesWithRegexAndPath(regex,folder_path) + diff --git a/sci-physics/openmodelica/metadata.xml b/sci-physics/openmodelica/metadata.xml new file mode 100644 index 0000000000..c2206a3eaf --- /dev/null +++ b/sci-physics/openmodelica/metadata.xml @@ -0,0 +1,11 @@ + + + + + ivan.lloro.boada@gmail.com + Ivan Lloro + + + OpenModelica/OpenModelica + + diff --git a/sci-physics/openmodelica/openmodelica-1.23.1.ebuild b/sci-physics/openmodelica/openmodelica-1.23.1.ebuild new file mode 100644 index 0000000000..23907e2fb4 --- /dev/null +++ b/sci-physics/openmodelica/openmodelica-1.23.1.ebuild @@ -0,0 +1,184 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 +EAPI=8 + +inherit cmake git-r3 desktop xdg + +DESCRIPTION="Open-source Modelica-based modeling and simulation environment" +HOMEPAGE="https://openmodelica.org/" + +EGIT_REPO_URI="https://github.com/OpenModelica/OpenModelica.git" +EGIT_COMMIT="v1.23.1" + +LICENSE="OSMC-PL GPL-3 AGPL-3 BSD EPL-1.0 public-domain BSD-with-attribution LGPL-2.1+ LGPL-2 Apache-2.0 Boost-1.0 Modelica-1.1 Modelica-2 MIT WTFPL-2" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND=" + >=virtual/lapack-3.10 + >=dev-libs/boost-1.84.0-r3 + >=virtual/opencl-3-r3 + >=net-misc/curl-8.7.1-r4 + >=sys-libs/readline-8.2_p10 + >=app-text/asciidoc-10.2.0 + >=virtual/libintl-0-r2 + >=virtual/libiconv-0-r2 + >=virtual/blas-3.8 + >=virtual/lapack-3.10 + >=virtual/jdk-17 + >=virtual/pkgconfig-3 + dev-qt/qtconcurrent:5 + dev-qt/qtprintsupport:5 + dev-qt/qtxml:5 + dev-qt/qtopengl:5 + dev-qt/qtnetwork:5 + dev-qt/qtsvg:5 + dev-qt/qtwebengine:5[widgets] + dev-qt/qtxmlpatterns:5 + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtdeclarative:5 + dev-qt/qtquickcontrols:5 + dev-qt/qtquickcontrols2:5 + dev-qt/qtwebchannel:5[qml] + dev-qt/qtpositioning:5[qml] + >=dev-games/openscenegraph-3.6.5-r114 + >=virtual/opengl-7.0-r2 + >=dev-libs/expat-2.5.0 + >=net-misc/omniORB-4.3.0 + >=dev-python/six-1.16.0-r1 + >=dev-python/pytest-8.2.2 + >=dev-python/numpy-1.26.4 + >=dev-python/matplotlib-3.3 + >=dev-python/kiwisolver-1.3.2 + >=dev-python/pillow-9.0.1 + >=dev-python/pandas-1.1.3 + dev-lang/python:3.12 +" + +# dev-libs/libxml2 only needed if compiled with -DOM_OMEDIT_ENABLE_LIBXML2=ON +RDEPEND+=" + >=dev-libs/libxml2-2.12.7 + >=dev-libs/icu-74.2 + >=app-text/doxygen-1.9.8 + >=dev-python/sphinx-7.3.7-r2 + >=sys-devel/flex-2.6.4-r6 + >=sys-apps/hwloc-2.9.2 + >=sci-libs/hdf5-1.14.3-r1 + >=sys-libs/ncurses-6.4_p20240414 +" + +BDEPEND=" + dev-util/ccache + net-misc/wget + app-arch/tar + virtual/fortran +" + +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/"${P}"-raw_strings.patch +) + +BOMCCOMMIT="c289e97c41d00939a4a69fe504961b47283a6d8e" +TMPBOMCARCHIVE="${T}/sources-${BOMCCOMMIT}.tar.gz" + +pkg_setup() { + # OMCompiler/Compiler/boot/CMakeLists.txt downloads a file during src_prepare phase which is blocked by ebuild + # network sandbox. Upstream downloads the (changing) master archive by default. Instead, the specific commit + # available at this OpenModelica version release date is taken. + local URI="https://github.com/OpenModelica/OMBootstrapping/archive/${BOMCCOMMIT}.tar.gz" + + [[ -f "${DISTFILE}" ]] || wget "${URI}" -O "${TMPBOMCARCHIVE}" + + local SHA12SUM=$(sha512sum "${TMPBOMCARCHIVE}") + einfo "${SHA12SUM}" + [[ "${SHA12SUM}" == "2202f02edc33ac4fb7264b0ea82ae4b2c965a85f8b96cb872cc4cc59c5e5b76346a023c416f994a9744021428d598c3dbdf688c0845ba4726849d3c9ee0cd4ba ${TMPBOMCARCHIVE}" ]] || die "Wrong checksum." + local B2SUM=$(b2sum "${TMPBOMCARCHIVE}") + einfo "${B2SUM}" + [[ "${B2SUM}" == "afdda81842a686e092b46bd50d192f5e35ae6c662e8c5517346d86c7c098f2e23a99df27bc5c045b819472d0539837c845c63123ae4822127a14ac42e4ad2e97 ${TMPBOMCARCHIVE}" ]] || die "Wrong checksum." +} + +src_prepare() { + # Setup Bootstrapping OMC + local BOMCDIR="${WORKDIR}"/"${P}"/OMCompiler/Compiler/boot/bomc + mkdir -p "${BOMCDIR}" + mv "${TMPBOMCARCHIVE}" "${BOMCDIR}"/sources.tar.gz + tar xzf "${BOMCDIR}"/sources.tar.gz --strip-components=1 -C "${BOMCDIR}" + + cmake_src_prepare +} + +src_configure() { + #local CMAKE_BUILD_TYPE=Debug + # TODO: potential USE flags. + # BUG: CORBA ON required for OMOptim (but compilation fails) + local mycmakeargs=( + -DOM_OMEDIT_ENABLE_QTWEBENGINE=ON + -DBUILD_SHARED_LIBS=OFF + -DOM_ENABLE_ENCRYPTION=OFF + -DOM_USE_CCACHE=ON + -DOM_ENABLE_GUI_CLIENTS=ON + -DOM_OMC_ENABLE_FORTRAN=ON + -DOM_OMC_ENABLE_IPOPT=ON + -DOM_OMC_ENABLE_CPP_RUNTIME=ON + -DOM_OMC_USE_CORBA=OFF + -DOM_OMC_USE_LAPACK=ON + -DOM_OMEDIT_INSTALL_RUNTIME_DLLS=ON + -DOM_OMEDIT_ENABLE_TESTS=OFF + -DOM_OMEDIT_ENABLE_QTWEBENGINE=ON + -DOM_OMEDIT_ENABLE_LIBXML2=ON + ) + cmake_src_configure +} + +src_compile() { + # [2024-07-15] + # OMSens is disabled in "${WORKDIR}/${P}/CMakeLists.txt" (## omc_add_subdirectory(OMSens)) due to lack of a + # working "${WORKDIR}/${P}/OMSens/CMakeLists.txt". So, we compile it manually. + PWD=$(pwd) + cd "${WORKDIR}"/"${P}"/OMSens/fortran_interface + gfortran -fPIC -c Rutf.for Rut.for Curvif.for + # BUG: Undefined symbol curvif_ in + # ${WORKDIR}/${P}/OMSens/fortran_interface/curvif_simplified.cpython-312-x86_64-linux-gnu.so + # This bug causes "Vectorial Parameter Based Sensitivity Analysis" in OMSens to fail. + f2py --verbose -c -I. Curvif.o Rutf.o Rut.o -m curvif_simplified curvif_simplified.pyf Curvif_simplified.f90 + cd "${PWD}" + + cmake_src_compile +} + +src_install() { + cmake_src_install + + # [2024-07-15] + # OMSens is disabled in "${WORKDIR}/${P}/CMakeLists.txt" (## omc_add_subdirectory(OMSens)) due to lack of a + # working "${WORKDIR}/${P}/OMSens/CMakeLists.txt". So, we install it manually. + cp -a "${WORKDIR}"/"${P}"/OMSens "${ED}"/usr/share/ + rm -fr "${ED}"/usr/share//OMSens/{old,.git,.gitignore,CMakeLists.txt,.jenkins,Jenkinsfile,Makefile.omdev.mingw,Makefile.unix,README.md,setup.py,testing} + + newicon -s scalable OMShell/OMShell/OMShellGUI/Resources/omshell-large.svg omshell.svg + newicon -s scalable OMNotebook/OMNotebook/OMNotebookGUI/Resources/OMNotebook_icon.svg OMNotebook.svg + # No proper icon for Linux available from upstream + doicon -s 256 "${FILESDIR}"/omedit.png + doicon -s 256 "${FILESDIR}"/omoptim.png + make_desktop_entry "OMEdit %F" OMedit omedit "Physics;" "MimeType=text/x-modelica;" + make_desktop_entry OMShell OMShell omshell "Physics;" + make_desktop_entry "OMNotebook %f" OMNotebook OMNotebook "Physics;" + + # Fix libraries + if [[ $(get_libdir) != "lib" ]]; then + mv "${ED}"/usr/lib/omc/* "${ED}"/usr/$(get_libdir)/omc/ + rmdir "${ED}"/usr/lib/omc/ + dosym -r /usr/$(get_libdir)/omc /usr/lib/omc + fi + dosym -r /usr/include/omc/ParModelica /usr/include/ParModelica + + # Documentation housekeeping & QA + mv "${ED}"/usr/share/doc/omc "${ED}"/usr/share/doc/"${P}" + rm -fr "${ED}"/usr/doc + + ewarn "Upstream has deprecated OMTLMSimuulator and, therefore, it has not been installed. Use OMSimulator/SSP instead." +}