Added line in package.py to patch using ipopt_ppc_build.patch. The patch simply adds support in config.guess and Ipopt/config.guess to build ipopt on ppc64le.
* adding H5Z-ZFP; updating zfp to use choice variant for bit stream word size
* fixing homepage url
* removed fortran error message...just build fortran if can, otherwise ignore
* Added magma package
* Incorporated Serban's change
* fftw: patch configuration file to remove search for xlc_r compiler
when compiler not gcc
FFTW assumes there are only 2 compilers: gcc and IBM XL. When
building threaded fftw, the configuration file is looking for
the threaded IBM XL's xlc_r compiler when the compiler is not gcc.
The PGI compiler is not gcc.
* Include depends_on for gperf
Sometime around 2.12.2 fontconfig acquired a build-time
dependency on `gperf` (this commit, I think:
59fd9960bbb58fd6257adb13ec0f918882149332).
This adds the dependency.
`gperf` is called in the `src/Makefile`, see line 907 of
`src/Makefile.in`.
* Only depend_on gperf if @2.12.2:
The gperf dependency *seems* to only be required when @2.12.2:.
Earlier releases do not check the arg type of the gperf lookup
function (which requires gperf) and are able to use pre-generated
files so gperf is not required at build time.
* fixes#967
* Version bump to 0.9.1
- Bugfixes for spack find
- 0.9.1 can read specs from current develop.
* Don't assume spack is in the path when building docs.
* fixing Makefile override of PREFIX and install w/gcc-6
* oce changes for cgm
cgm can be configured with oce, but oce needs
to have X11 enabled, because some libraries
(like TKCAF in occ/oce) gets built only of X11 is NOT disabled
so introduce a variant +X11 for oce, which is needed when
configuring cgm with oce(+X11)
* follow up review
simplify by removing the patch and different url paths
use append instead of extend, when necessary
make mpi true by default
X11 dependency is still to be addressed; it pulls in some opengl
library (on laptop nvidia seem to work, on virtual linux machine
mesa was good enough)
- invoke make with the correct TARGET for aarch64
- foforce PILERDRIVER as openblas cannot correctly detect CPU on aarch64
- update url to more recent version
* Fix tpetra-related xsdk errors
Recent changes to the trilinos package broke the xsdk build.
xSDK explicitly disables tpetra, but packages depending on it
(such as ifpack2 and amesos2) are explicitly enabled by default
in the trilinos package. This commit explicitly disables them
within the xsdk package.py.
* Disabled exodus in the xsdk build
See issue #4502 for details
- Introduce an opengl variant that is enabled by default. Disabling it
allows building qt for X forwarding etc.
- Depend on fontconfig and freetype to make use of system fonts.
Otherwise qt can not find any fonts.
- libx11 is required when libxcb is used.
- Set MAKEFLAGS to parallelize qmake compilation.
* Initial version of the namd package
* Modified charm to consider compile against intel/intel-mpi
* Correction of namd to compile with intel-mkl and intel compiler
* Adding inclue64 in the prefix
* adding property for the build directory
* removing useless function build
Fixes#4488. When compiling metis as a shared library, the package
used the syntax `-rpath=`, followed by a path. This syntax is
non-portable, so replace it using Spack's compiler rpath argument
property.
* During install, remove prior unfinished installs
If a user performs an installation which fails, in some cases the
install prefix is still present, and the stage path may also be
present. With this commit, unless the user specifies
'--keep-prefix', installs are guaranteed to begin with a clean
slate. The database is used to decide whether an install finished,
since a database record is not added until the end of the install
process.
* test updates
* repair_partial uses keep_prefix and keep_stage
* use of mock stage object to ensure that stage is destroyed when it should be destroyed (and otherwise not)
* add --restage option to 'install' command; when this option is not set, the default is to reuse a stage if it is found.
* espresso: fixed compilation for 6.1 (elpa) and added support for hdf5
* espresso: addressed items in @davydden review
* espresso: fixed behavior for espresso@:5.4.0
* New Package: lanl-bml
Added LANL's BML library as Spack Package as dependency for future
packages
* Adjusted lanl-bml versions
Specified current master as develop and added v1.1.0 tagged version
* Renamed lanlbml package to bml
* First draft package for mono
Mono's vendor'ed boringssl interacts badly with openssl, so
you need to use `cmake~openssl`.
Left to its own devices, it wants to refer to things in
`/usr/share/.mono`. This doesn't work for installs that don't run as
root, etc... This package includes a variant to redirect those paths
to `prefix.share`.
* Whitespace/Flake8
* Adding Nalu package.
* Fixing flake8 stuff.
* Fixing flake8 stuff.
* Reorganizing trilinos package file a little to make it less verbose.
* Reorganizing trilinos package file for more general use as well as use as a dependency of the Nalu package. Setting fpic as default for yaml-cpp and superlu.
* Explicitly stating fpic variants in dependent packages.
* Updating nalu and trilinos package files with suggested changes.
* Fixing formatting issues. Making suggested changes.
* Fixing formatting.
* Reducing amount of explicit variants in Nalu. Adding suggested changes to Trilinos package file.
* Making suggested changes to Nalu package.
* Turning off superlu-dist variant.
* Cleaning up yaml-cpp file.
* Fixing pnetcdf requirements in trilinos.
* Handle missing defn of __NR_memfd_create
Generally SYS_foo is defined to __NR_foo (in sys/syscall.h) which is
then defined to a syscall number (in asm/unistd_64.h). Certain CentOS
systems have SYS_memfd_create defined to __NR_memfd_create but are
missing the second definition. This is a belt and suspenders solution
to the problem.
See [this post][syscall] for a nice general description of how these
parts fit together.
[syscall]: https://www.uninformativ.de/blog/postings/2017-02-11/0/POSTING-en.html
* Avoid flake8 warning
* postgresql: Fix build with threadsafe and add variant.
* postgresql: Convert Package to AutotoolsPackage.
Also add explicit enable flag for +threadsafe variant.
* Add add'l output formats for graphviz
Add support for additional output formats to graphviz, including gif,
jpg, pdf, and png.
Graphviz calls its pango+cairo option *pangocairo* so I followed suit.
Libgd was missing jpeg/jpg support. None of the other supported
formats are conditionalized and there is no --with/--without support,
so I followed suit.
* Fix ghostscript plugin
When I installed thusly:
spack install graphviz+pangocairo+libgd^cairo+X^pango+X
the ghostscript plugin tripped over some variable names that had
changes in `gs@9.18:`. This fixes them.
* Remove wayward import of tty
* Need to help Makefile.PL find the expat bits
We need to provide Makefile.PL with a clue about where our
expat bits live. We had the dependency, but I suspect
that the lib was actually linking against a system version.
* Use prefix.lib instead of building path myself
Ditto with .include
I've had non-repeatable failures in my CI runs on all three clusters
at the bamutil's step. In each case there are .o or .so files that
are corrupt or truncated.
I suspect that the homebrewed bamutil Makefile scheme doesn't actually
support parallel builds.
* Tighten up graphviz package
The fun started when configure discovered a broken/partial
installation of `swig` in `/usr/local`, then auto-discovered my
system's python and ruby packages.
- SpackException doesn't seem to exist. Convert it to a SpackError
and call `.format(...)` on the error string to fill in the
placeholder.
- Pull swig out of the list of languages. It's something that can be
asked for explicitly and that is needed if *any* of the langagues
are enabled. It's disabled by default.
- Explicitly disable the languages that are in "untested_bindings"
list lest the configure script pick up things from the system.
* Touch up variant description string
* Clean up conditional statement
* Use InstallError, not SpackError
* Drop the swig variant
Get rid of the swig variant and drive that bit based on whether any
languages are enabled.
* Move perl to the untested list
That's not strictly accurate. I tested it and it doesn't work.
There's a missing depends_on(). When you add that you'll discover
that the language binding bit can't find Perl's 'EXTERN.h'. Then
you'll discover that graphviz's `configure` script doesn't have a good
way to include the paths to Perl's bits (looks like I'll have to
gather them for each language and then use them to build `CFLAGS` and
`CXXFLAGS` and `LDFLAGS`). While pondering that, you'll discover that
EXTERN.h is buried down here:
```
opt/spack/linux-centos7-x86_64/gcc-4.8.5/perl-5.24.1-35ejv4426dmzreum4ekdibu3ddmhquvi/lib/5.24.1/x86_64-linux/CORE/EXTERN.h
```
and decide that you wish you had never thought to actually test
`graphviz+perl`.
I could find that directory with a snippet like so:
```
perl -MConfig -e 'print "$Config{archlib}\n"'
```
but at this point I'm much, much further down this rabbit hole then I
ever wanted to go.
* Convince python that tested_bindings is a list
When I removed `+perl` and made `tested_bindings` a list of one
thing, I ended up with this:
```
==> Error: cannot concatenate 'str' and 'tuple' objects
```
* Flake8 cleanup
* Don't convert a string to a string
* rm unused () and clarify variable name
Feedback from @adamjstewart
- Get rid of some unnecessary parens.
- Clearer variable name and use.
* Further cleanup of language enabling loop
Now we don't need that pesky temporary variable.
* Add package for cctools
Add a package for cctools.
Requires the recently submitted "useshrplib" support in Perl (or some
other mechanism to enable -fPIC for perl).
* Delete extraneous import
* Perl's shared variant changed, adapt...
The name of the variant that perl uses to build a shared lib changed and
it now defaults to True. Use the new name and continue to be insistent
about using the shared variant.
* Flake8 cleanup
* Added magma package
* Incorporated Serban's change
* boost-pgi: Add support for PGI compiler
There are two patches required:
(1) general fixes required by PGI
(2) workaround for a bug in PGI 17.4
Conflicts:
var/spack/repos/builtin/packages/boost/package.py
* Add variant to build shared Perl lib
Add a variant that enables Perl's "useshrplib" feature, which builds a
shared perl library.
This addresses problems like so:
```
/usr/bin/ld: /blah/blah/spack/opt/spack/linux-centos7-x86_64/gcc-4.8.5/perl-5.24.1-y43dp3p5w66v7qh5xkwgufxohyuodyew/lib/5.24.1/x86_64-linux/CORE/libperl.a(op.o): relocation R_X86_64_32S against `PL_opargs' can not be used when making a shared object; recompile with -fPIC
/blah/blah/spack/opt/spack/linux-centos7-x86_64/gcc-4.8.5/perl-5.24.1-y43dp3p5w66v7qh5xkwgufxohyuodyew/lib/5.24.1/x86_64-linux/CORE/libperl.a: could not read symbols: Bad value
```
It should also address the Intel compiler issue discussed in #3081
while respecting Perl's configuration machinery.
* Rename shared variant and default to True
* Use correct variant to add configure arg
* Restore bits that set ccflags for intel compilers
After some experimentation we've established that setting
the flag to build a shared perl library is tightly tied to
the use of -fPIC.
This commit restores the code that sets ccflags for
intel compilers.
* Flake8 cleanup
See the discussion about installing jar files in #4386.
Also installs a wrapper script that has explicit references to the
prerequisite java exe and to the jar file in it's final resting place.
* Add packages for clustalw and clustalo (and argtable)
Add packages for the classic multiple alignment package, `clustalw`
and its younger sibling, `clustalo`.
`clustalo` needed the `argtable` package (command line arg parsing).
Lightly tested on CentOS 7.
* Remove FIXME (sigh...)
* Add mpi support to R
* Add multiple precision math routines to R
* Updated the URL to match the version
* Remove duplicate packages
* Add packages for r-ergm and it's dependents
* Fixed depends-on types
* Correct flake8 errors
* Correct Build type
* r-factoextra and dependents
* Revert "r-factoextra and dependents"
This reverts commit afbf477fd66e565fd187262c386bcc08c98a4d7e.
* Add only r-factoextra files
* Add a package for Trimmomatic
See the discussion about installing jar files in #4386.
Also installs a wrapper script that has explicit references to the prerequisite java exe and to the jar file in it's final resting place.
* Fix bad format statement
Apparently something like this "blah{}".format(...) works (it's missing
something inside the curly braces) but fails the travis test.
The two given versions of mariadb are not fetchable under the given
URL, probably because older versions are purged and only kept in
an archive.
Add two working, latest revisions of each release line.
Somehow the path to `CMakeLists.txt` via the class property
`root_cmakelists_dir` was relative but is now actually relative
to `spack-build/`.
Close 4324 by providing a path relative to the source repo
of the stage via a method instead of a member variable
* Add package for vcftools@0.1.14
The package munges the various perl scripts so that their sbang lines
point to the depended upon perl (perhaps with Spack sbanger in the
dance) instead of relying on `/usr/bin/env perl`.
As it stands it installs its Perl libraries into `prefix/lib` and then
depends on `setup_environment` to prepend that dir onto PERL5LIB.
See my [vcftools issue
80](https://github.com/vcftools/vcftools/issues/80) for a discussion
about fixing its non-functional attempt at isolating itself from
PERL5LIB shenanigans.
* perl dependency should be build/run
* Ensure Config.pm has correct setting for cc
Run a filter after install so that Config.pm records the compiler that
Spack built the package with. If this isn't done, $Config{cc} will be
set to Spack's cc wrapper script.
* Also patch compilers Config_heavy.pl
This patch sets ld=gcc, which appears to work. I'm not sure if
there's a good way to get at the ld that Spack uses.
* Clean up quoting
* Fix pattern for Config.pm
Does not start at beginning of line...
What the user wants, the user etc....
Add info for STAR@2.4.2a. It's URL looks different, so added a URL for
it. This broke the URL for the current version, so added a URL for it
also (known bug).
*Minimally* tested on CentOS 7.
* python: ensure that distutils sets valid compiler options for RPATH on cray
* python: add cray-rpath patches for python@2.3:3.0.1 and python@3.1:
* python: in patch(..., when="@a:b platform=c"), limit b must be specified
* python: assume that python@4 will break the cray patches
* Fix mummerplot when ^perl@5.20:
Calling defined() on a hash has been deprecated for ages. It became
an error in perl@5.20. If we're building with a perl where it's
illegal, we should fix it.
* Simplify call to filter_file
Treat the first arg to filter_file as a string rather than
a regex, so that we don't have to figure out the escapes.
* Patch mummerplot for *any* perl version.
* Fix bwa url's
Work around varying github URLs.
See #4365 for details.
* Restore main url entry
@adamjstewart pointed out that the package still needs a main url
so that `spack versions` works.
- Add a `spack gpg` subcommand in anticipation of signed binaries.
- GPG keys are stored in var/spack/gpg, and the spack gpg command manages them.
- Docs are included on the command.
* Add info for jdk@7u80 (not downloadable)
Add version info for jdk@7u80. Oracle does't seem to be
distributing it any longer so there's no reasonable URL to
provide, but for those of us who already have the tarball
this is useful.
* Flake8 cleanup
* Add mpi support to R
* Add multiple precision math routines to R
* Updated the URL to match the version
* Remove duplicate packages
* Add packages for r-ergm and it's dependents
* Fixed depends-on types
* Correct flake8 errors
* Correct Build type
* r-adegenet and dependent packages
* fix parser
* Removed xfails
* cleaned up debug print statements
* make use of these changes in gcc
* Added comment explaining unreachable line, line left for added protection
* cairo: ensure that X support is disabled for variant "~X"
* cairo: explicitly enable X support for +X variant
* cairo: prefer "variant in spec" over spec.satisfies(variant)
* Trailing whitespace cleanup
* Handcraft an install process for mummer (grumble)
Mummer punts on an installation step, they just build in and run from
the same directory.
Mummer also has various hardcoded paths built into it that allow it to
find other executables that it needs as well as its Perl library.
This updates the package to deal with this approach.
It patches the Makefile and scripts/Makefile so that the correct info
is fed to sed when it munges the perl scripts.
The install step is now finer grained and puts things where mummer
relatively wants to find them.
* Add perl dependency
* perl should be build/run dependency
* Fix whitespace
* Delete stray u at top of file
Two changes:
- It seems that Illumina version numbers are dotted and that the
dashed version in the 2.18... filename is an anomaly (based on the
names for 2.17.1.14 and 2.19.0). `url_for_version` does the right
thing for 2.18. It will need to be fixed when support for 2.19 is
added. 2.17 is no longer generally available so it gets a pass.
- Add version and hash for 2.17.1.14.
2.17.1.14 is no longer distributed. If you have a copy of the
source tarball, you can drop it into a local mirror w/ the name
mirror/bcl2fastq2/bcl2fastq2-2.17.1.14.zip and go from there.
* Add mpi support to R
* Add multiple precision math routines to R
* Add packages for r-ergm and it's dependents
* Fixed depends-on types
* Correct flake8 errors
* flex: create variant +lex that creates symlinks for lex and libl.{a,so}
* flex: enable variant +lex by default
* flex: use dso_suffix for portability; replace repetitive code with a loop