diff --git a/var/spack/packages/extrae/package.py b/var/spack/packages/extrae/package.py index a06f02d3df..a4dae485b5 100644 --- a/var/spack/packages/extrae/package.py +++ b/var/spack/packages/extrae/package.py @@ -1,11 +1,13 @@ from spack import * class Extrae(Package): + """Extrae is the package devoted to generate tracefiles which can be analyzed later by Paraver. Extrae is a tool that uses different interposition mechanisms to inject probes into the target application so as to gather information regarding the application performance. The Extrae instrumentation package can instrument the MPI programin model, and the following parallel programming models either alone or in conjunction with MPI : OpenMP, CUDA, OpenCL, pthread, OmpSs""" homepage = "http://www.bsc.es/computer-sciences/extrae" url = "http://www.bsc.es/ssl/apps/performanceTools/files/extrae-2.5.1.tar.bz2" versions = { '2.5.1' : '422376b9c68243bd36a8a73fa62de106', } - depends_on("mpi") + #depends_on("mpi") + depends_on("openmpi@:1.6") depends_on("dyninst") depends_on("libunwind") depends_on("boost") @@ -15,8 +17,8 @@ class Extrae(Package): def install(self, spec, prefix): if 'openmpi' in spec: mpi = spec['openmpi'] - if spec.satisfies('@2.5.1') and spec.satisfies('^openmpi@1.6.5'): - tty.error("Some headers conflict when using OpenMPI 1.6.5. Please use 1.6 instead.") + #if spec.satisfies('@2.5.1') and spec.satisfies('^openmpi@1.6.5'): + # tty.error("Some headers conflict when using OpenMPI 1.6.5. Please use 1.6 instead.") elif 'mpich' in spec: mpi = spec['mpich'] elif 'mvapich2' in spec: diff --git a/var/spack/packages/ompss/package.py b/var/spack/packages/ompss/package.py index 66a126579e..4878a589bf 100644 --- a/var/spack/packages/ompss/package.py +++ b/var/spack/packages/ompss/package.py @@ -7,6 +7,7 @@ #./mcxx-1.99.2/config.log: $ ./configure --prefix=/usr/gapps/exmatex/ompss --with-nanox=/usr/gapps/exmatex/ompss --enable-ompss --with-mpi=/opt/mvapich2-intel-shmem-1.7 --enable-tl-openmp-profile --enable-tl-openmp-intel class Ompss(Package): + """OmpSs is an effort to integrate features from the StarSs programming model developed by BSC into a single programming model. In particular, our objective is to extend OpenMP with new directives to support asynchronous parallelism and heterogeneity (devices like GPUs). However, it can also be understood as new directives extending other accelerator based APIs like CUDA or OpenCL. Our OmpSs environment is built on top of our Mercurium compiler and Nanos++ runtime system.""" homepage = "http://pm.bsc.es/" url = "http://pm.bsc.es/sites/default/files/ftp/ompss/releases/ompss-14.06.tar.gz" versions = { '14.06' : '99be5dce74c0d7eea42636d26af47b4181ae2e11' } diff --git a/var/spack/packages/paraver/package.py b/var/spack/packages/paraver/package.py new file mode 100644 index 0000000000..d437adfa5d --- /dev/null +++ b/var/spack/packages/paraver/package.py @@ -0,0 +1,40 @@ +from spack import * +import os + +class Paraver(Package): + """"A very powerful performance visualization and analysis tool based on + traces that can be used to analyse any information that is expressed on its input trace format. + Traces for parallel MPI, OpenMP and other programs can be genereated with Extrae.""" + homepage = "http://www.bsc.es/computer-sciences/performance-tools/paraver" + url = "http://www.bsc.es/ssl/apps/performanceTools/files/paraver-sources-4.5.2.tar.gz" + + versions = { '4.5.2' : 'ea463dd494519395c99ebae294edee17', } + + depends_on("boost") + #depends_on("extrae") + depends_on("wx") + depends_on("wxpropgrid") + + def install(self, spec, prefix): + os.chdir("ptools_common_files") + configure("--prefix=%s" % prefix) + make() + make("install") + + os.chdir("../paraver-kernel") + #"--with-extrae=%s" % spec['extrae'].prefix, + configure("--prefix=%s" % prefix, "--with-ptools-common-files=%s" % prefix, "--with-boost=%s" % spec['boost'].prefix, "--with-boost-serialization=boost_serialization") + make() + make("install") + + os.chdir("../paraver-toolset") + configure("--prefix=%s" % prefix) + make() + make("install") + + os.chdir("../wxparaver") + #"--with-extrae=%s" % spec['extrae'].prefix, + configure("--prefix=%s" % prefix, "--with-paraver=%s" % prefix, "--with-boost=%s" % spec['boost'].prefix, "--with-boost-serialization=boost_serialization", "--with-wxdir=%s" % spec['wx'].prefix.bin) + make() + make("install") + diff --git a/var/spack/packages/wx/package.py b/var/spack/packages/wx/package.py new file mode 100644 index 0000000000..de12f141b8 --- /dev/null +++ b/var/spack/packages/wx/package.py @@ -0,0 +1,17 @@ +from spack import * + +class Wx(Package): + """wxWidgets is a C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base. It has popular language bindings for Python, Perl, Ruby and many other languages, and unlike other cross-platform toolkits, wxWidgets gives applications a truly native look and feel because it uses the platform's native API rather than emulating the GUI. It's also extensive, free, open-source and mature.""" + homepage = "http://www.wxwidgets.org/" + + url = "https://sourceforge.net/projects/wxwindows/files/2.8.12/wxWidgets-2.8.12.tar.gz" + versions = { '2.8.12' : '2fa39da14bc06ea86fe902579fedc5b1', } +# url = "https://sourceforge.net/projects/wxwindows/files/3.0.1/wxWidgets-3.0.1.tar.bz2" +# versions = { '3.0.1' : 'dad1f1cd9d4c370cbc22700dc492da31', } + + def install(self, spec, prefix): + configure("--prefix=%s" % prefix, "--enable-unicode", "--disable-precomp-headers") + + make(parallel=False) + make("install") + diff --git a/var/spack/packages/wxpropgrid/package.py b/var/spack/packages/wxpropgrid/package.py new file mode 100644 index 0000000000..5cc244ca65 --- /dev/null +++ b/var/spack/packages/wxpropgrid/package.py @@ -0,0 +1,17 @@ +from spack import * + +class Wxpropgrid(Package): + """wxPropertyGrid is a property sheet control for wxWidgets. In other words, it is a specialized two-column grid for editing properties such as strings, numbers, flagsets, string arrays, and colours.""" + homepage = "http://wxpropgrid.sourceforge.net/" + url = "http://prdownloads.sourceforge.net/wxpropgrid/wxpropgrid-1.4.15-src.tar.gz" + + versions = { '1.4.15' : 'f44b5cd6fd60718bacfabbf7994f1e93', } + + depends_on("wx") + + def install(self, spec, prefix): + configure("--prefix=%s" % prefix, "--with-wxdir=%s" % spec['wx'].prefix.bin, "--enable-unicode") + + make() + make("install") +