diff --git a/easyconfigs/m/MESMER/MESMER-7.1-gompi-2024a.eb b/easyconfigs/m/MESMER/MESMER-7.1-gompi-2024a.eb new file mode 100644 index 00000000..f5b53903 --- /dev/null +++ b/easyconfigs/m/MESMER/MESMER-7.1-gompi-2024a.eb @@ -0,0 +1,63 @@ +easyblock = 'MakeCp' + +name = 'MESMER' +version = '7.1' + +homepage = 'https://www.chem.leeds.ac.uk/mesmer.html' +description = """MESMER is designed to analyze and simulate reactions in the gas phase that take place on a potential + energy surface that is characterized by having one or more potential wells, and which are typically described by + rate coefficients that depend on pressure (or concentration) as well as temperature. MESMER allows you to simulate + systems over a wide range of pressures and temperatures, extract rate coefficients, analyze experimental data, + fit model parameters and represent rate coefficients in formats that can be used directly in large scale simulations + (e.g. Cantera or Chemkin). +""" +upstream_contacts = 'https://sourceforge.net/p/mesmer/discussion/627433' + +toolchain = {'name': 'gompi', 'version': '2024a'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['Mesmer%(version)s-source.tar.gz'] +checksums = ['7f9423d627f17ddbfabeac2a4d37d7db8f5702ca44f318d7403b16c19aa27690'] + +dependencies = [ + ('QD', '2.3.24'), +] + +# build internal tinyxml +prebuildopts = "cd tinyxml && make -f MakeLib DEBUG=NO && cd ../src && " +# build parallel (i.e. MPI) and set the include and library paths +buildopts = 'install DEBUG=NO PARALLEL=YES ' +buildopts += 'INCS="-I../tinyxml/ -I$EBROOTQD/include -I$EBROOTOPENMPI/include" ' +buildopts += 'LIBS="../tinyxml/tinyxml.a $EBROOTQD/lib/libqd.a -L$EBROOTOPENMPI/lib -lmpi" ' + +files_to_copy = [ + 'bin', + 'Documentation', + 'examples', + 'MesmerQA', + 'schemas', + '*.xsl', + '*.xml', + 'License.txt', +] + +maxparallel = 8 +_allowTestFail = 'true' + +_pretest = ''.join([ + "sed -i -e 's|executable=.*|executable=%(start_dir)sbin/%(namelower)s|'", + r' -e "s/\(mpirun -n \)12/\1', + '%s/" QA.sh' % int(maxparallel**0) +]) +_test = 'for i in */baselines/Linux64 ; do echo TEST: $i; diff "$i"/mesmer.test "$i"/test.test ; done' +test_cmd = 'cd %%(start_dir)s/MesmerQA && %s && ./QA.sh -u && %s || %s ' % (_pretest, _test, _allowTestFail) +runtest = '' + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s --help'] + +moduleclass = 'chem' diff --git a/easyconfigs/q/QD/QD-2.3.24-GCCcore-13.3.0.eb b/easyconfigs/q/QD/QD-2.3.24-GCCcore-13.3.0.eb new file mode 100644 index 00000000..d24db6da --- /dev/null +++ b/easyconfigs/q/QD/QD-2.3.24-GCCcore-13.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'QD' +version = '2.3.24' + +homepage = 'https://www.davidhbailey.com/dhbsoftware/' +description = "Quad Double computation package" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'optarch': False} + +github_account = 'BL-highprecision' +source_urls = [GITHUB_RELEASE] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_rm-docs.patch'] +checksums = [ + {'v2.3.24.tar.gz': 'e15c1aa4564da7c25006483005779c9e8fa729c05117c068931a70209d093c6a'}, + {'QD-2.3.24_rm-docs.patch': '1cb3ca1b3a23fb1821570f8c143ca92a284b345ba6afc44ce4123722b9fafa26'}, +] + +builddependencies = [ + ('libtool', '2.4.7'), +] + +preconfigopts = 'autoreconf -fi && ' +configopts = ' --with-gnu-ld ' +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libqdmod.a', 'lib/libqd.a'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easyconfigs/q/QD/QD-2.3.24_rm-docs.patch b/easyconfigs/q/QD/QD-2.3.24_rm-docs.patch new file mode 100644 index 00000000..223ae2f9 --- /dev/null +++ b/easyconfigs/q/QD/QD-2.3.24_rm-docs.patch @@ -0,0 +1,35 @@ +diff --git a/Makefile.am b/Makefile.am +index 4120d60..e0e6de6 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -4,30 +4,6 @@ SUBDIRS = src include tests fortran + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = qd.pc + +-BUILT_SOURCES = docs/qd.pdf +-dist_doc_DATA = README README.md docs/qd.pdf +-dist_noinst_DATA = docs/Makefile \ +- docs/qd.tex docs/qd.bib \ +- docs/nine-two-sum.eps docs/nine-two-sum.fig \ +- docs/normal_sum_prod.eps docs/normal_sum_prod.fig \ +- docs/qd_add.eps docs/qd_add.fig \ +- docs/qd_add_proof.eps docs/qd_add_proof.fig \ +- docs/qd_add_qd_d.eps docs/qd_add_qd_d.fig \ +- docs/qd_mul_accum.eps docs/qd_mul_accum.fig \ +- docs/qd_mul_qd_d.eps docs/qd_mul_qd_d.fig \ +- docs/quick-two-sum.eps docs/quick-two-sum.fig \ +- docs/six-three-sum.eps docs/six-three-sum.fig \ +- docs/three-sum-2.eps docs/three-sum-2.fig \ +- docs/three-sum-3.eps docs/three-sum-3.fig \ +- docs/three-sum.eps docs/three-sum.fig \ +- docs/two-prod.eps docs/two-prod.fig \ +- docs/two-sum.eps docs/two-sum.fig +- +-doc: docs/qd.pdf +- +-docs/qd.pdf: +- $(MAKE) -C docs qd.pdf +- + cpp-demo: + $(MAKE) -C tests demo +