Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3fe5c2beb5 | |||
| 6e0c9f9d8b | |||
| 013c7154ff | |||
| 28e7982258 | |||
| 7e5bdfd747 | |||
| f64c88a1cf | |||
| b71a60d122 | |||
| 7aee88cf92 | |||
| d2334fe051 | |||
| a77852ae18 | |||
| 0e599b7a64 | |||
| 1a1c624422 | |||
| 2dd42d8c6c | |||
| ff162da2f8 |
32
BUILD.md
32
BUILD.md
@ -243,17 +243,17 @@ and save some disk space.
|
||||
sources that are bundled with ParaView.
|
||||
For example, by using a symbolic link:
|
||||
|
||||
ln -s ParaView-v5.5.2/VTK VTK-9.0.0
|
||||
ln -s ParaView-v5.6.0/VTK VTK-8.2.0
|
||||
|
||||
The appropriate VTK version number can be found from the contents of
|
||||
the `vtkVersion.cmake` file.
|
||||
For example,
|
||||
|
||||
$ cat ParaView-v5.5.2/VTK/CMake/vtkVersion.cmake
|
||||
$ cat ParaView-v5.6.0/VTK/CMake/vtkVersion.cmake
|
||||
|
||||
# VTK version number components.
|
||||
set(VTK_MAJOR_VERSION 9)
|
||||
set(VTK_MINOR_VERSION 0)
|
||||
set(VTK_MAJOR_VERSION 8)
|
||||
set(VTK_MINOR_VERSION 2)
|
||||
set(VTK_BUILD_VERSION 0)
|
||||
|
||||
### ParaView
|
||||
@ -273,7 +273,7 @@ source pack. This, however, has never been tested in combination with
|
||||
the OpenFOAM Catalyst insitu visualization.
|
||||
|
||||
|
||||
#### 5.5.x binary package
|
||||
#### 5.6.x, 5.5.x binary packages
|
||||
|
||||
For general functionality, the paraview version distributed with
|
||||
the operating system or a [binary package][download ParaView]])
|
||||
@ -322,7 +322,7 @@ may not be important for you):
|
||||
|
||||
3. Build ParaView using this third-party QT. For example,
|
||||
|
||||
./makeParaView -qt-5.9.3 5.5.2
|
||||
./makeParaView -qt-5.9.3 5.6.0
|
||||
|
||||
- ParaView versions prior to 5.3.0 do not properly support QT5.
|
||||
|
||||
@ -412,7 +412,7 @@ you may have additional hurdles to using the newest versions of clang.
|
||||
|-----------------------|------------------------
|
||||
| [openmpi][page openmpi] | [download][link openmpi]. The newer [openmpi][newer openmpi] make exhibit stability issues.
|
||||
| [adios][page adios] | [repo][repo adios] or [github download][link adios] or [alt download][altlink adios]
|
||||
| [scotch, ptscotch][page scotch] | [download][link scotch]
|
||||
| [scotch, ptscotch][page scotch] | [download][link scotch] or older: [6.0.3][link scotch603]
|
||||
| [kahip][page kahip] | [download][link kahip]
|
||||
| [metis][page metis] | [download][link metis]
|
||||
|
||||
@ -422,7 +422,7 @@ you may have additional hurdles to using the newest versions of clang.
|
||||
| Name | Location
|
||||
|-----------------------|------------------------
|
||||
| [MESA][page mesa] | [download][link mesa] or [older 13][link mesa13], [older 11][link mesa11]
|
||||
| [ParaView][page ParaView] | [download][link ParaView] or [older paraview-54][link ParaView54] or [binaries][download ParaView]
|
||||
| [ParaView][page ParaView] | [download][link ParaView] or [older paraview-55][link ParaView55], [older paraview-54][link ParaView54] or [binaries][download ParaView]
|
||||
| [Qt][page Qt] | [QT5][link Qt5] for ParaView-5.3.0 and later, or the [older qt-56][link Qt56] for older systems.
|
||||
|
||||
|
||||
@ -436,7 +436,7 @@ The minimum CMake requirements for building various components.
|
||||
2.8.12.2 llvm-3.7.0
|
||||
2.8.12.2 llvm-3.8.0
|
||||
2.8.4 cmake-3.6.0
|
||||
3.3 ParaView-5.5.2
|
||||
3.3 ParaView-5.6.0
|
||||
3.4.3 llvm-3.9.1
|
||||
3.4.3 llvm-4.0.0 - llvm-6.0.0
|
||||
3.6 ADIOS2
|
||||
@ -463,9 +463,9 @@ that clang compiler for building the newer llvm/clang version.
|
||||
[page mpc]: http://www.multiprecision.org/
|
||||
|
||||
[link gcc]: http://gcc.gnu.org/releases.html
|
||||
[link gmp]: ftp://ftp.gnu.org/gnu/gmp/gmp-6.1.0.tar.bz2
|
||||
[link mpfr]: ftp://ftp.gnu.org/gnu/mpfr/mpfr-3.1.4.tar.bz2
|
||||
[link mpc]: ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
|
||||
[link gmp]: ftp://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.xz
|
||||
[link mpfr]: ftp://ftp.gnu.org/gnu/mpfr/mpfr-4.0.1.tar.xz
|
||||
[link mpc]: ftp://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz
|
||||
|
||||
|
||||
<!-- clang-related -->
|
||||
@ -490,8 +490,9 @@ that clang compiler for building the newer llvm/clang version.
|
||||
[page zfp]: http://computation.llnl.gov/projects/floating-point-compression/zfp-versions
|
||||
|
||||
[page scotch]: https://www.labri.fr/perso/pelegrin/scotch/
|
||||
[link scotch]: https://gforge.inria.fr/frs/download.php/file/34099/scotch_6.0.3.tar.gz
|
||||
[link scotch]: https://gforge.inria.fr/frs/download.php/file/37398/scotch_6.0.5a.tar.gz
|
||||
[link scotch603]: https://gforge.inria.fr/frs/download.php/file/34099/scotch_6.0.3.tar.gz
|
||||
[link scotch605]: https://gforge.inria.fr/frs/download.php/file/37398/scotch_6.0.5a.tar.gz
|
||||
[link scotch]: https://gforge.inria.fr/frs/download.php/file/37622/scotch_6.0.6.tar.gz
|
||||
|
||||
[page kahip]: http://algo2.iti.kit.edu/documents/kahip/
|
||||
[link kahip]: http://algo2.iti.kit.edu/schulz/software_releases/KaHIP_2.00.tar.gz
|
||||
@ -530,7 +531,8 @@ that clang compiler for building the newer llvm/clang version.
|
||||
[page ParaView]: http://www.paraview.org/
|
||||
[download ParaView]: https://www.paraview.org/download/
|
||||
[link ParaView54]: http://www.paraview.org/files/v5.4/ParaView-v5.4.1.tar.gz
|
||||
[link ParaView]: http://www.paraview.org/files/v5.5/ParaView-v5.5.2.tar.gz
|
||||
[link ParaView55]: http://www.paraview.org/files/v5.5/ParaView-v5.5.2.tar.gz
|
||||
[link ParaView]: http://www.paraview.org/files/v5.6/ParaView-v5.6.0.tar.gz
|
||||
|
||||
[page mesa]: http://mesa3d.org/
|
||||
[link mesa]: ftp://ftp.freedesktop.org/pub/mesa/mesa-17.1.1.tar.xz
|
||||
|
||||
12
SOURCES.txt
12
SOURCES.txt
@ -1,5 +1,17 @@
|
||||
Short summary of third-party software versions for recent OpenFOAM versions.
|
||||
|
||||
OpenFOAM-1812
|
||||
---------------
|
||||
|
||||
CGAL-4.9.1
|
||||
ParaView-5.6.0 *update*
|
||||
boost_1_64_0
|
||||
fftw-3.3.7
|
||||
openmpi-1.10.4
|
||||
scotch_6.0.6 *minor*
|
||||
kahip-2.00d
|
||||
|
||||
|
||||
OpenFOAM-1806
|
||||
---------------
|
||||
CGAL-4.9.1
|
||||
|
||||
155
etc/patches/gcc-4.8.5-with-gcc-7
Normal file
155
etc/patches/gcc-4.8.5-with-gcc-7
Normal file
@ -0,0 +1,155 @@
|
||||
#
|
||||
# Patch for building older gcc versions with gcc-7
|
||||
#
|
||||
--- gcc-4.8.5/gcc/cp/cfns.gperf.orig 2013-01-10 21:38:27.000000000 +0100
|
||||
+++ gcc-4.8.5/gcc/cp/cfns.gperf 2016-02-25 16:36:41.000000000 +0100
|
||||
@@ -1,5 +1,7 @@
|
||||
+%language=C++
|
||||
+%define class-name libc_name
|
||||
%{
|
||||
-/* Copyright (C) 2000-2013 Free Software Foundation, Inc.
|
||||
+/* Copyright (C) 2000-2014 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GCC.
|
||||
|
||||
@@ -16,14 +18,6 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GCC; see the file COPYING3. If not see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
-#ifdef __GNUC__
|
||||
-__inline
|
||||
-#endif
|
||||
-static unsigned int hash (const char *, unsigned int);
|
||||
-#ifdef __GNUC__
|
||||
-__inline
|
||||
-#endif
|
||||
-const char * libc_name_p (const char *, unsigned int);
|
||||
%}
|
||||
%%
|
||||
# The standard C library functions, for feeding to gperf; the result is used
|
||||
--- gcc-4.8.5/gcc/cp/cfns.h.orig 2013-01-10 21:38:27.000000000 +0100
|
||||
+++ gcc-4.8.5/gcc/cp/cfns.h 2016-02-25 16:36:41.000000000 +0100
|
||||
@@ -1,5 +1,5 @@
|
||||
-/* ANSI-C code produced by gperf version 3.0.3 */
|
||||
-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */
|
||||
+/* C++ code produced by gperf version 3.0.4 */
|
||||
+/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */
|
||||
|
||||
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
|
||||
&& ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
|
||||
@@ -28,9 +28,9 @@
|
||||
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
|
||||
#endif
|
||||
|
||||
-#line 1 "cfns.gperf"
|
||||
+#line 3 "cfns.gperf"
|
||||
|
||||
-/* Copyright (C) 2000-2013 Free Software Foundation, Inc.
|
||||
+/* Copyright (C) 2000-2014 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GCC.
|
||||
|
||||
@@ -47,25 +47,18 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GCC; see the file COPYING3. If not see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
-#ifdef __GNUC__
|
||||
-__inline
|
||||
-#endif
|
||||
-static unsigned int hash (const char *, unsigned int);
|
||||
-#ifdef __GNUC__
|
||||
-__inline
|
||||
-#endif
|
||||
-const char * libc_name_p (const char *, unsigned int);
|
||||
/* maximum key range = 391, duplicates = 0 */
|
||||
|
||||
-#ifdef __GNUC__
|
||||
-__inline
|
||||
-#else
|
||||
-#ifdef __cplusplus
|
||||
-inline
|
||||
-#endif
|
||||
-#endif
|
||||
-static unsigned int
|
||||
-hash (register const char *str, register unsigned int len)
|
||||
+class libc_name
|
||||
+{
|
||||
+private:
|
||||
+ static inline unsigned int hash (const char *str, unsigned int len);
|
||||
+public:
|
||||
+ static const char *libc_name_p (const char *str, unsigned int len);
|
||||
+};
|
||||
+
|
||||
+inline unsigned int
|
||||
+libc_name::hash (register const char *str, register unsigned int len)
|
||||
{
|
||||
static const unsigned short asso_values[] =
|
||||
{
|
||||
@@ -122,14 +115,8 @@
|
||||
return hval + asso_values[(unsigned char)str[len - 1]];
|
||||
}
|
||||
|
||||
-#ifdef __GNUC__
|
||||
-__inline
|
||||
-#ifdef __GNUC_STDC_INLINE__
|
||||
-__attribute__ ((__gnu_inline__))
|
||||
-#endif
|
||||
-#endif
|
||||
const char *
|
||||
-libc_name_p (register const char *str, register unsigned int len)
|
||||
+libc_name::libc_name_p (register const char *str, register unsigned int len)
|
||||
{
|
||||
enum
|
||||
{
|
||||
--- gcc-4.8.5/gcc/cp/except.c.orig 2013-10-25 15:49:48.000000000 +0200
|
||||
+++ gcc-4.8.5/gcc/cp/except.c 2018-07-27 13:11:11.825369497 +0200
|
||||
@@ -1025,7 +1025,7 @@
|
||||
unless the system headers are playing rename tricks, and if
|
||||
they are, we don't want to be confused by them. */
|
||||
id = DECL_NAME (fn);
|
||||
- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
|
||||
+ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
|
||||
}
|
||||
|
||||
/* Returns nonzero if an exception of type FROM will be caught by a
|
||||
--- gcc-4.8.5/libgcc/config/i386/linux-unwind.h.orig 2013-02-04 20:06:20.000000000 +0100
|
||||
+++ gcc-4.8.5/libgcc/config/i386/linux-unwind.h 2018-07-27 12:51:18.305390871 +0200
|
||||
@@ -58,7 +58,7 @@
|
||||
if (*(unsigned char *)(pc+0) == 0x48
|
||||
&& *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
|
||||
{
|
||||
- struct ucontext *uc_ = context->cfa;
|
||||
+ ucontext_t *uc_ = context->cfa;
|
||||
/* The void * cast is necessary to avoid an aliasing warning.
|
||||
The aliasing warning is correct, but should not be a problem
|
||||
because it does not alias anything. */
|
||||
@@ -138,7 +138,7 @@
|
||||
siginfo_t *pinfo;
|
||||
void *puc;
|
||||
siginfo_t info;
|
||||
- struct ucontext uc;
|
||||
+ ucontext_t uc;
|
||||
} *rt_ = context->cfa;
|
||||
/* The void * cast is necessary to avoid an aliasing warning.
|
||||
The aliasing warning is correct, but should not be a problem
|
||||
--- gcc-4.8.5/libsanitizer/asan/asan_linux.cc.orig 2013-01-23 12:41:33.000000000 +0100
|
||||
+++ gcc-4.8.5/libsanitizer/asan/asan_linux.cc 2018-07-27 12:51:45.641390381 +0200
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <sys/types.h>
|
||||
#include <fcntl.h>
|
||||
#include <pthread.h>
|
||||
+#include <signal.h>
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <unwind.h>
|
||||
--- gcc-4.8.5/libsanitizer/tsan/tsan_platform_linux.cc.orig 2013-02-21 11:57:10.000000000 +0100
|
||||
+++ gcc-4.8.5/libsanitizer/tsan/tsan_platform_linux.cc 2018-07-27 13:17:32.417362682 +0200
|
||||
@@ -292,7 +292,7 @@
|
||||
#ifndef TSAN_GO
|
||||
int ExtractResolvFDs(void *state, int *fds, int nfd) {
|
||||
int cnt = 0;
|
||||
- __res_state *statp = (__res_state*)state;
|
||||
+ struct __res_state *statp = (struct __res_state*)state;
|
||||
for (int i = 0; i < MAXNS && cnt < nfd; i++) {
|
||||
if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
|
||||
fds[cnt++] = statp->_u._ext.nssocks[i];
|
||||
87
etc/patches/gcc-4.9.4-with-gcc-7
Normal file
87
etc/patches/gcc-4.9.4-with-gcc-7
Normal file
@ -0,0 +1,87 @@
|
||||
#
|
||||
# Patch for building older gcc versions with gcc-7
|
||||
#
|
||||
--- gcc-4.9.4/libgcc/config/i386/linux-unwind.h.orig 2014-01-02 23:25:22.000000000 +0100
|
||||
+++ gcc-4.9.4/libgcc/config/i386/linux-unwind.h 2018-07-27 10:43:46.021527909 +0200
|
||||
@@ -58,7 +58,7 @@
|
||||
if (*(unsigned char *)(pc+0) == 0x48
|
||||
&& *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
|
||||
{
|
||||
- struct ucontext *uc_ = context->cfa;
|
||||
+ ucontext_t *uc_ = context->cfa;
|
||||
/* The void * cast is necessary to avoid an aliasing warning.
|
||||
The aliasing warning is correct, but should not be a problem
|
||||
because it does not alias anything. */
|
||||
@@ -138,7 +138,7 @@
|
||||
siginfo_t *pinfo;
|
||||
void *puc;
|
||||
siginfo_t info;
|
||||
- struct ucontext uc;
|
||||
+ ucontext_t uc;
|
||||
} *rt_ = context->cfa;
|
||||
/* The void * cast is necessary to avoid an aliasing warning.
|
||||
The aliasing warning is correct, but should not be a problem
|
||||
--- gcc-4.9.4/libsanitizer/asan/asan_linux.cc.orig 2013-12-05 10:18:38.000000000 +0100
|
||||
+++ gcc-4.9.4/libsanitizer/asan/asan_linux.cc 2018-07-27 11:11:52.085497715 +0200
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <sys/types.h>
|
||||
#include <fcntl.h>
|
||||
#include <pthread.h>
|
||||
+#include <signal.h>
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <unwind.h>
|
||||
--- gcc-4.9.4/libsanitizer/sanitizer_common/sanitizer_linux.cc.orig 2013-12-05 10:18:38.000000000 +0100
|
||||
+++ gcc-4.9.4/libsanitizer/sanitizer_common/sanitizer_linux.cc 2018-07-27 10:43:02.405528690 +0200
|
||||
@@ -599,8 +599,7 @@
|
||||
return internal_syscall(__NR_prctl, option, arg2, arg3, arg4, arg5);
|
||||
}
|
||||
|
||||
-uptr internal_sigaltstack(const struct sigaltstack *ss,
|
||||
- struct sigaltstack *oss) {
|
||||
+uptr internal_sigaltstack(const void *ss, void *oss) {
|
||||
return internal_syscall(__NR_sigaltstack, (uptr)ss, (uptr)oss);
|
||||
}
|
||||
|
||||
--- gcc-4.9.4/libsanitizer/sanitizer_common/sanitizer_linux.h.orig 2013-12-05 10:18:38.000000000 +0100
|
||||
+++ gcc-4.9.4/libsanitizer/sanitizer_common/sanitizer_linux.h 2018-07-27 10:42:29.845529273 +0200
|
||||
@@ -18,7 +18,6 @@
|
||||
#include "sanitizer_platform_limits_posix.h"
|
||||
|
||||
struct link_map; // Opaque type returned by dlopen().
|
||||
-struct sigaltstack;
|
||||
|
||||
namespace __sanitizer {
|
||||
// Dirent structure for getdents(). Note that this structure is different from
|
||||
@@ -28,8 +27,7 @@
|
||||
// Syscall wrappers.
|
||||
uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count);
|
||||
uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5);
|
||||
-uptr internal_sigaltstack(const struct sigaltstack* ss,
|
||||
- struct sigaltstack* oss);
|
||||
+uptr internal_sigaltstack(const void* ss, void* oss);
|
||||
uptr internal_sigaction(int signum, const __sanitizer_kernel_sigaction_t *act,
|
||||
__sanitizer_kernel_sigaction_t *oldact);
|
||||
uptr internal_sigprocmask(int how, __sanitizer_kernel_sigset_t *set,
|
||||
--- gcc-4.9.4/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc.orig 2013-12-05 11:28:59.000000000 +0100
|
||||
+++ gcc-4.9.4/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc 2018-07-27 10:41:32.053530308 +0200
|
||||
@@ -238,7 +238,7 @@
|
||||
|
||||
// Alternate stack for signal handling.
|
||||
InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize);
|
||||
- struct sigaltstack handler_stack;
|
||||
+ stack_t handler_stack;
|
||||
internal_memset(&handler_stack, 0, sizeof(handler_stack));
|
||||
handler_stack.ss_sp = handler_stack_memory.data();
|
||||
handler_stack.ss_size = kHandlerStackSize;
|
||||
--- gcc-4.9.4/libsanitizer/tsan/tsan_platform_linux.cc.orig 2013-12-05 10:18:38.000000000 +0100
|
||||
+++ gcc-4.9.4/libsanitizer/tsan/tsan_platform_linux.cc 2018-07-27 10:40:13.781531710 +0200
|
||||
@@ -351,7 +351,7 @@
|
||||
// closes within glibc. The code is a pure hack.
|
||||
int ExtractResolvFDs(void *state, int *fds, int nfd) {
|
||||
int cnt = 0;
|
||||
- __res_state *statp = (__res_state*)state;
|
||||
+ struct __res_state *statp = (struct __res_state*)state;
|
||||
for (int i = 0; i < MAXNS && cnt < nfd; i++) {
|
||||
if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
|
||||
fds[cnt++] = statp->_u._ext.nssocks[i];
|
||||
82
etc/patches/gcc-6.3.0-with-gcc-7
Normal file
82
etc/patches/gcc-6.3.0-with-gcc-7
Normal file
@ -0,0 +1,82 @@
|
||||
#
|
||||
# Patch for building older gcc versions with gcc-7
|
||||
#
|
||||
diff -u gcc-6.3.0/libgcc/config/i386/linux-unwind.h.orig gcc-6.3.0/libgcc/config/i386/linux-unwind.h
|
||||
--- gcc-6.3.0/libgcc/config/i386/linux-unwind.h.orig 2016-01-04 23:30:50.000000000 +0900
|
||||
+++ gcc-6.3.0/libgcc/config/i386/linux-unwind.h 2017-10-29 23:01:21.717240052 +0900
|
||||
@@ -58,7 +58,7 @@
|
||||
if (*(unsigned char *)(pc+0) == 0x48
|
||||
&& *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL)
|
||||
{
|
||||
- struct ucontext *uc_ = context->cfa;
|
||||
+ ucontext_t *uc_ = context->cfa;
|
||||
/* The void * cast is necessary to avoid an aliasing warning.
|
||||
The aliasing warning is correct, but should not be a problem
|
||||
because it does not alias anything. */
|
||||
@@ -138,7 +138,7 @@
|
||||
siginfo_t *pinfo;
|
||||
void *puc;
|
||||
siginfo_t info;
|
||||
- struct ucontext uc;
|
||||
+ ucontext_t uc;
|
||||
} *rt_ = context->cfa;
|
||||
/* The void * cast is necessary to avoid an aliasing warning.
|
||||
The aliasing warning is correct, but should not be a problem
|
||||
diff -u gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.cc.orig gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.cc
|
||||
--- gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.cc.orig 2015-11-23 18:07:18.000000000 +0900
|
||||
+++ gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.cc 2017-10-29 23:09:00.490577558 +0900
|
||||
@@ -546,8 +546,7 @@
|
||||
}
|
||||
#endif
|
||||
|
||||
-uptr internal_sigaltstack(const struct sigaltstack *ss,
|
||||
- struct sigaltstack *oss) {
|
||||
+uptr internal_sigaltstack(const void *ss, void *oss) {
|
||||
return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss);
|
||||
}
|
||||
|
||||
diff -u gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.h.orig gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.h
|
||||
--- gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.h.orig 2015-10-21 16:32:45.000000000 +0900
|
||||
+++ gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_linux.h 2017-10-29 23:09:43.907244619 +0900
|
||||
@@ -19,7 +19,6 @@
|
||||
#include "sanitizer_platform_limits_posix.h"
|
||||
|
||||
struct link_map; // Opaque type returned by dlopen().
|
||||
-struct sigaltstack;
|
||||
|
||||
namespace __sanitizer {
|
||||
// Dirent structure for getdents(). Note that this structure is different from
|
||||
@@ -28,8 +27,7 @@
|
||||
|
||||
// Syscall wrappers.
|
||||
uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count);
|
||||
-uptr internal_sigaltstack(const struct sigaltstack* ss,
|
||||
- struct sigaltstack* oss);
|
||||
+uptr internal_sigaltstack(const void* ss, void* oss);
|
||||
uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set,
|
||||
__sanitizer_sigset_t *oldset);
|
||||
void internal_sigfillset(__sanitizer_sigset_t *set);
|
||||
diff -u gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc.orig gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
|
||||
--- gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc.orig 2015-10-21 16:32:45.000000000 +0900
|
||||
+++ gcc-6.3.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc 2017-10-29 23:08:07.260577074 +0900
|
||||
@@ -267,7 +267,7 @@
|
||||
|
||||
// Alternate stack for signal handling.
|
||||
InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize);
|
||||
- struct sigaltstack handler_stack;
|
||||
+ stack_t handler_stack;
|
||||
internal_memset(&handler_stack, 0, sizeof(handler_stack));
|
||||
handler_stack.ss_sp = handler_stack_memory.data();
|
||||
handler_stack.ss_size = kHandlerStackSize;
|
||||
diff -u gcc-6.3.0/libsanitizer/tsan/tsan_platform_linux.cc.orig gcc-6.3.0/libsanitizer/tsan/tsan_platform_linux.cc
|
||||
--- gcc-6.3.0/libsanitizer/tsan/tsan_platform_linux.cc.orig 2016-08-12 17:53:46.000000000 +0900
|
||||
+++ gcc-6.3.0/libsanitizer/tsan/tsan_platform_linux.cc 2017-10-29 23:10:38.817245120 +0900
|
||||
@@ -291,7 +291,7 @@
|
||||
int ExtractResolvFDs(void *state, int *fds, int nfd) {
|
||||
#if SANITIZER_LINUX
|
||||
int cnt = 0;
|
||||
- __res_state *statp = (__res_state*)state;
|
||||
+ struct __res_state *statp = (struct __res_state*)state;
|
||||
for (int i = 0; i < MAXNS && cnt < nfd; i++) {
|
||||
if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
|
||||
fds[cnt++] = statp->_u._ext.nssocks[i];
|
||||
@ -1,3 +1,128 @@
|
||||
--- ParaView-git/CMake/ParaViewMacros.cmake.orig 2018-07-22 17:38:33.933614131 +0200
|
||||
+++ ParaView-git/CMake/ParaViewMacros.cmake 2018-07-22 17:42:12.457612519 +0200
|
||||
@@ -353,8 +353,9 @@
|
||||
set(qt_binary_dir_hints "${Qt5_DIR}/../../../bin")
|
||||
endif()
|
||||
|
||||
+ # The qhelpgenerator program may be installed as qhelpgenerator-qt5
|
||||
find_program(QT_HELP_GENERATOR
|
||||
- qhelpgenerator
|
||||
+ NAMES qhelpgenerator qhelpgenerator-qt5
|
||||
HINTS "${qt_binary_dir_hints}"
|
||||
DOC "qhelpgenerator used to compile Qt help project files")
|
||||
mark_as_advanced(QT_HELP_GENERATOR)
|
||||
--- ParaView-v5.5.2/VTK/ThirdParty/hdf5/vtkhdf5/src/H5detect.c.orig 2018-06-15 21:09:45.000000000 +0200
|
||||
+++ ParaView-v5.5.2/VTK/ThirdParty/hdf5/vtkhdf5/src/H5detect.c 2018-07-07 13:20:40.641815285 +0200
|
||||
@@ -1360,8 +1360,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C89_integers(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C89_integers(void)
|
||||
{
|
||||
DETECT_BYTE(signed char, SCHAR, d_g[nd_g]); nd_g++;
|
||||
DETECT_BYTE(unsigned char, UCHAR, d_g[nd_g]); nd_g++;
|
||||
@@ -1388,8 +1388,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C89_floats(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C89_floats(void)
|
||||
{
|
||||
DETECT_F(float, FLOAT, d_g[nd_g]); nd_g++;
|
||||
DETECT_F(double, DOUBLE, d_g[nd_g]); nd_g++;
|
||||
@@ -1410,8 +1410,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C99_integers8(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C99_integers8(void)
|
||||
{
|
||||
#if H5_SIZEOF_INT8_T>0
|
||||
#if H5_SIZEOF_INT8_T==1
|
||||
@@ -1472,8 +1472,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C99_integers16(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C99_integers16(void)
|
||||
{
|
||||
#if H5_SIZEOF_INT16_T>0
|
||||
DETECT_I(int16_t, INT16, d_g[nd_g]); nd_g++;
|
||||
@@ -1510,8 +1510,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C99_integers32(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C99_integers32(void)
|
||||
{
|
||||
#if H5_SIZEOF_INT32_T>0
|
||||
DETECT_I(int32_t, INT32, d_g[nd_g]); nd_g++;
|
||||
@@ -1548,8 +1548,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C99_integers64(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C99_integers64(void)
|
||||
{
|
||||
#if H5_SIZEOF_INT64_T>0
|
||||
DETECT_I(int64_t, INT64, d_g[nd_g]); nd_g++;
|
||||
@@ -1599,8 +1599,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C99_integers(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C99_integers(void)
|
||||
{
|
||||
/* break it down to more subroutines so that each module subroutine */
|
||||
/* is smaller and takes less time to compile with optimization on. */
|
||||
@@ -1625,8 +1625,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_C99_floats(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_C99_floats(void)
|
||||
{
|
||||
#if H5_SIZEOF_DOUBLE == H5_SIZEOF_LONG_DOUBLE
|
||||
/*
|
||||
@@ -1656,8 +1656,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-static void
|
||||
-detect_alignments(void) HDF_NO_UBSAN
|
||||
+static void HDF_NO_UBSAN
|
||||
+detect_alignments(void)
|
||||
{
|
||||
/* Detect structure alignment for pointers, hvl_t, hobj_ref_t, hdset_reg_ref_t */
|
||||
DETECT_M(void *, POINTER, m_g[na_g]); na_g++;
|
||||
@@ -1744,8 +1744,8 @@
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
-int
|
||||
-main(void) HDF_NO_UBSAN
|
||||
+int HDF_NO_UBSAN
|
||||
+main(void)
|
||||
{
|
||||
|
||||
#if defined(H5_HAVE_SETSYSINFO) && defined(SSI_NVPAIRS)
|
||||
--- ParaView-v5.5.0/VTK/ThirdParty/vtkm/vtk-m/CMake/VTKmDetermineVersion.cmake.orig 2018-04-06 22:03:33.000000000 +0200
|
||||
+++ ParaView-v5.5.0/VTK/ThirdParty/vtkm/vtk-m/CMake/VTKmDetermineVersion.cmake 2018-04-23 12:00:23.708544206 +0200
|
||||
@@ -51,6 +51,8 @@
|
||||
|
||||
@ -137,7 +137,7 @@ addVerbosity()
|
||||
|
||||
|
||||
#
|
||||
# Define options for mpi support
|
||||
# MPI support for PARAVIEW
|
||||
#
|
||||
addMpiSupport()
|
||||
{
|
||||
@ -146,7 +146,7 @@ addMpiSupport()
|
||||
return
|
||||
fi
|
||||
|
||||
addCMakeVariable "PARAVIEW_USE_MPI=ON" "VTK_USE_MPI=ON"
|
||||
addCMakeVariable "PARAVIEW_USE_MPI=ON"
|
||||
if [ "${MPI_MAX_PROCS:=0}" -gt 1 ]
|
||||
then
|
||||
addCMakeVariable "VTK_MPI_MAX_NUMPROCS=$MPI_MAX_PROCS"
|
||||
@ -467,11 +467,13 @@ You may need to update the OpenFOAM environment by running:
|
||||
INFO
|
||||
|
||||
# Non-system installation of QT?
|
||||
if [ "$qmake" != /usr/bin/qmake -a -d "$qtLib" ]
|
||||
case "$qtLib" in (/usr/lib | /usr/lib64) unset qtLib ;; esac
|
||||
|
||||
if [ "${qmake%/*}" != /usr/bin -a -d "$qtLib" ]
|
||||
then
|
||||
/bin/cat<<INFO
|
||||
|
||||
And adjust your LD_LIBRARY_PATH to include the following:
|
||||
Your LD_LIBRARY_PATH may require adjustment to include the following:
|
||||
$qtLib
|
||||
INFO
|
||||
fi
|
||||
|
||||
@ -20,9 +20,12 @@
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# The normal locations for source, build and installation (prefix-dir)
|
||||
sourceBASE=$WM_THIRD_PARTY_DIR
|
||||
buildBASE=$WM_THIRD_PARTY_DIR/build/$WM_ARCH$WM_COMPILER
|
||||
installBASE=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
|
||||
sourceBASE="$WM_THIRD_PARTY_DIR"
|
||||
buildBASE="$WM_THIRD_PARTY_DIR/build/$WM_ARCH$WM_COMPILER"
|
||||
installBASE="$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER"
|
||||
|
||||
# Synthetic value combining precision and label size (Eg, DPInt32)
|
||||
WM_SIZE_OPTIONS="${WM_PRECISION_OPTION}Int${WM_LABEL_SIZE}"
|
||||
|
||||
# Dynamic library endings (default is .so)
|
||||
[ "$(uname -s)" = Darwin ] && SO=dylib || SO=so
|
||||
@ -64,7 +67,7 @@ exportLinker()
|
||||
# Force use of gcc/g++
|
||||
useGcc()
|
||||
{
|
||||
export CC=gcc # Use gcc/g++
|
||||
export CC=gcc
|
||||
export CXX=g++
|
||||
}
|
||||
|
||||
@ -89,38 +92,59 @@ whichMpicc()
|
||||
local mpicc=$(command -v mpicc)
|
||||
case "$WM_MPLIB" in
|
||||
(INTELMPI)
|
||||
mpicc=$(command -v mpiicc) # Intel <mpiicc> available?
|
||||
mpicc=$(command -v mpiicc) # Intel <mpiicc> available?
|
||||
;;
|
||||
(CRAY-MPI*)
|
||||
: ${mpicc:=cc} # Cray <cc> if there is no <mpicc>
|
||||
: ${mpicc:=cc} # Cray <cc> if there is no <mpicc>
|
||||
;;
|
||||
esac
|
||||
echo "${mpicc:-mpicc}"
|
||||
}
|
||||
|
||||
# The presence of wmkdep etc required for building with wmake
|
||||
|
||||
# Return <mpicc> by default or <mpiicc> if possible for INTELMPI.
|
||||
# Cray doesn't have <mpicc>, but its <cc> manages mpi paths directly.
|
||||
# NOTE: could further refine based on $CC or $WM_CC, but not yet needed
|
||||
whichMpicxx()
|
||||
{
|
||||
local mpicxx=$(command -v mpicxx)
|
||||
case "$WM_MPLIB" in
|
||||
(INTELMPI)
|
||||
mpicxx=$(command -v mpiicpc) # Intel <mpiicpc> available?
|
||||
;;
|
||||
(CRAY-MPI*)
|
||||
: ${mpicxx:=CC} # Cray <CC> if there is no <mpicc>
|
||||
;;
|
||||
esac
|
||||
echo "${mpicxx:-mpicxx}"
|
||||
}
|
||||
|
||||
# Require wmkdepend etc when building with wmake
|
||||
requireWMakeToolchain()
|
||||
{
|
||||
local dir="${WM_DIR:-$WM_PROJECT_DIR/wmake}"
|
||||
local src="$dir/src"
|
||||
local bin="$dir/platforms/$WM_ARCH$WM_COMPILER/wmkdep"
|
||||
local wmDir="${WM_DIR:-$WM_PROJECT_DIR/wmake}"
|
||||
local archDir="$wmDir/platforms/$WM_ARCH$WM_COMPILER"
|
||||
|
||||
test -x $bin || {
|
||||
echo "Warning: the 'wmkdep' binary is missing - attempting to build it"
|
||||
( cd $src && make -s )
|
||||
}
|
||||
if [ -x "$archDir/wmkdepend" ] || [ -x "$archDir/wmkdep" ]
|
||||
then
|
||||
echo "Appear to have {wmkdepend,wmkdep} binary" 1>&2
|
||||
else
|
||||
echo "Warning: appear to be missing {wmkdepend,wmkdep} binary ... building" 1>&2
|
||||
( cd "$wmDir/src" && make -s )
|
||||
|
||||
test -x $bin || {
|
||||
exec 1>&2
|
||||
echo
|
||||
echo "Error: cannot use wmake build for '${0##*/}"
|
||||
echo " The 'wmkdep' binary is missing"
|
||||
echo " Please run the top-level OpenFOAM Allwmake first"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
[ -x "$archDir/wmkdepend" ] || [ -x "$archDir/wmkdep" ] || {
|
||||
exec 1>&2
|
||||
echo
|
||||
echo "Error: cannot use wmake build for '${0##*/}"
|
||||
echo " Missing {wmkdepend,wmkdep} binary"
|
||||
echo " Please try run the top-level OpenFOAM Allwmake first"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Some functions as per OpenFOAM etc/config.sh/functions
|
||||
|
||||
@ -143,6 +167,9 @@ fi
|
||||
# Source an etc/config.sh file
|
||||
_foamConfig() { eval "$($WM_PROJECT_DIR/bin/foamEtcFile -sh -config $@)"; }
|
||||
|
||||
# Source an etc file (as per OpenFOAM functions). Eg, for mpi setup.
|
||||
_foamEtc() { eval "$($WM_PROJECT_DIR/bin/foamEtcFile -sh $@)"; }
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#
|
||||
@ -168,9 +195,7 @@ setBuildSuffix()
|
||||
#
|
||||
unset WM_HOSTS WM_SCHEDULER
|
||||
|
||||
WM_NCOMPPROCS=$(egrep -c "^processor" /proc/cpuinfo 2>/dev/null) || \
|
||||
WM_NCOMPPROCS=$(getconf _NPROCESSORS_ONLN 2>/dev/null) || \
|
||||
WM_NCOMPPROCS=1
|
||||
WM_NCOMPPROCS=$(getconf _NPROCESSORS_ONLN 2>/dev/null) || WM_NCOMPPROCS=1
|
||||
: ${WM_NCOMPPROCS:=1}
|
||||
export WM_NCOMPPROCS
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2016-2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
@ -148,6 +148,28 @@ configVTK()
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# MPI support for VTK
|
||||
#
|
||||
unset -f addMpiSupport 2>/dev/null
|
||||
addMpiSupport()
|
||||
{
|
||||
if [ "${withMPI:=false}" != true ]
|
||||
then
|
||||
return
|
||||
fi
|
||||
|
||||
addCMakeVariable "VTK_Group_MPI=ON"
|
||||
addCMakeVariable "Module_vtkRenderingParallel=ON"
|
||||
addCMakeVariable "Module_vtkParallelMPI=ON"
|
||||
|
||||
if [ "${MPI_MAX_PROCS:=0}" -gt 1 ]
|
||||
then
|
||||
addCMakeVariable "VTK_MPI_MAX_NUMPROCS=$MPI_MAX_PROCS"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Invoke make
|
||||
# also link bin/ to lib/paraview-* for development without installation
|
||||
|
||||
@ -41,8 +41,8 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [adios-VERSION] [-- configure-options]
|
||||
options:
|
||||
-cmake PATH With cmake from the path given
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-cmake PATH With cmake from the path given
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* Build ADIOS
|
||||
|
||||
@ -39,8 +39,8 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [adios-VERSION]
|
||||
options:
|
||||
-cmake PATH With cmake from the path given
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-cmake PATH With cmake from the path given
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* Build ADIOS2
|
||||
|
||||
@ -51,7 +51,7 @@ usage()
|
||||
|
||||
Usage: ${0##*/} [OPTION] [lib|libso] [libccmio-VERSION]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* Compile the proprietary libccmio library
|
||||
|
||||
1
makeCGAL
1
makeCGAL
@ -534,6 +534,7 @@ CMAKE_OPTIONS
|
||||
-DCMAKE_INSTALL_PREFIX=$CGAL_ARCH_PATH \
|
||||
-DCGAL_INSTALL_LIB_DIR=lib$WM_COMPILER_LIB_ARCH \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DWITH_CGAL_Core=OFF \
|
||||
-DWITH_CGAL_ImageIO=OFF \
|
||||
-DWITH_CGAL_Qt5=OFF \
|
||||
${optHeadersOnly:+-DCGAL_HEADER_ONLY=TRUE} \
|
||||
|
||||
@ -42,8 +42,8 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] cmake-VERSION
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-link Create additional symlink as 'cmake-system'
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-link Create additional symlink as 'cmake-system'
|
||||
-help
|
||||
|
||||
* build cmake
|
||||
|
||||
2
makeFFTW
2
makeFFTW
@ -59,7 +59,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [fftw-VERSION] [-- configure-options]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* build FFTW with
|
||||
|
||||
7
makeGcc
7
makeGcc
@ -60,6 +60,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [gcc-VERSION] [gmp-VERSION] [mpfr-VERSION] [mpc-VERSION]
|
||||
options:
|
||||
-clang Force clang/clang++ for building
|
||||
-multilib for 64-bit systems with 32-bit support required
|
||||
-no-multilib for 64-bit systems without 32-bit support (DEFAULT)
|
||||
-no-threadsafe disable mpfr thread-safe (default is auto-detect)
|
||||
@ -86,6 +87,10 @@ do
|
||||
case "$1" in
|
||||
'') ;; # Ignore empty
|
||||
-h | -help) usage ;;
|
||||
-clang) # Force use of clang/clang++ for building
|
||||
export CC=clang
|
||||
export CXX=clang++
|
||||
;;
|
||||
|
||||
-multi*)
|
||||
optMultilib=enable
|
||||
@ -133,6 +138,8 @@ GCC configuration
|
||||
MPFR = $mpfrPACKAGE
|
||||
MPC = $mpcPACKAGE
|
||||
------------------
|
||||
Using CC = $CC $CFLAGS
|
||||
Using CXX = $CXX $CXXFLAGS
|
||||
SUMMARY
|
||||
|
||||
# Set 32 or 64 bit ABI
|
||||
|
||||
@ -41,7 +41,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [gperftools-VERSION]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* build gperftools
|
||||
|
||||
172
makeHYPRE
Executable file
172
makeHYPRE
Executable file
@ -0,0 +1,172 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
# <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# makeHYPRE
|
||||
#
|
||||
# Description
|
||||
# Build script for HYPRE
|
||||
#
|
||||
# ----------------------------------------------
|
||||
# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
|
||||
#------------------------------------------------------------------------------
|
||||
# Dynamic library endings (default is .so)
|
||||
[ "$(uname -s)" = Darwin ] && SO=dylib || SO=so
|
||||
|
||||
# Short-circuit test for an installation
|
||||
if [ "$1" = "-test" ]
|
||||
then
|
||||
[ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; }
|
||||
dir="$2" # <- HYPRE_ARCH_PATH
|
||||
if [ -d "$dir/include" ]
|
||||
then
|
||||
for lib in \
|
||||
$FOAM_EXT_LIBBIN/libhypre.$SO \
|
||||
$dir/lib/libhypre.a \
|
||||
$dir/lib/libhypre.$SO \
|
||||
$dir/lib$WM_COMPILER_LIB_ARCH/libhypre.a \
|
||||
$dir/lib$WM_COMPILER_LIB_ARCH/libhypre.$SO \
|
||||
;
|
||||
do
|
||||
if [ -r "$lib" ]
|
||||
then
|
||||
echo " hypre include: $dir/include"
|
||||
echo " hypre library: ${lib%/*}"
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
fi
|
||||
exit 2
|
||||
fi
|
||||
#------------------------------------------------------------------------------
|
||||
# Run from third-party directory only
|
||||
cd ${0%/*} && wmakeCheckPwd "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
|
||||
echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
}
|
||||
[ -n "$FOAM_EXT_LIBBIN" ] || {
|
||||
echo "Error (${0##*/}) : \$FOAM_EXT_LIBBIN not set"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
}
|
||||
. etc/tools/ThirdPartyFunctions
|
||||
#------------------------------------------------------------------------------
|
||||
_foamConfig hypre
|
||||
|
||||
hyprePACKAGE=${hypre_version:-hypre-system}
|
||||
targetType=libso
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
usage() {
|
||||
exec 1>&2
|
||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||
cat<<USAGE
|
||||
|
||||
usage: ${0##*/} [OPTION] [lib|libso] [HYPRE-VERSION]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* build HYPRE with
|
||||
${hyprePACKAGE:-'unspecified hypre version'}
|
||||
|
||||
USAGE
|
||||
exit 1
|
||||
}
|
||||
#------------------------------------------------------------------------------
|
||||
exportCompiler # Compiler info for CMake/configure
|
||||
|
||||
# Parse options
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
'') ;; # Ignore empty
|
||||
-h | -help) usage ;;
|
||||
-gcc) useGcc ;;
|
||||
|
||||
lib|libso)
|
||||
targetType="$1"
|
||||
;;
|
||||
|
||||
hypre-[0-9]*)
|
||||
hyprePACKAGE="${1%%/}"
|
||||
unset HYPRE_ARCH_PATH # Avoid inconsistency
|
||||
;;
|
||||
*)
|
||||
die "unknown option/argument: '$1'"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
[ -n "$hyprePACKAGE" ] || die "The hypre-VERSION was not specified"
|
||||
|
||||
# Nothing to build
|
||||
if _foamIsNone $hyprePACKAGE
|
||||
then
|
||||
echo "Using hypre-none (skip ThirdParty build of HYPRE)"
|
||||
exit 0
|
||||
elif _foamIsSystem $hyprePACKAGE
|
||||
then
|
||||
echo "Using hypre-system"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Build HYPRE
|
||||
#
|
||||
# HYPRE_ARCH_PATH : installation directory
|
||||
# HYPRE_SOURCE_DIR : location of the original sources
|
||||
|
||||
HYPRE_SOURCE_DIR=$sourceBASE/$hyprePACKAGE
|
||||
: ${HYPRE_ARCH_PATH:=$installBASE$WM_SIZE_OPTIONS/$hyprePACKAGE}
|
||||
|
||||
[ -d "$HYPRE_SOURCE_DIR" ] || {
|
||||
echo "Missing sources: '$hyprePACKAGE'"
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
# Compilers
|
||||
CC="$(whichMpicc)"
|
||||
CXX="$(whichMpicxx)"
|
||||
|
||||
echo "Starting build: $hyprePACKAGE ($targetType)"
|
||||
echo
|
||||
(
|
||||
# Configuration options:
|
||||
unset configOpt
|
||||
|
||||
cd $HYPRE_SOURCE_DIR/src || exit 1
|
||||
export GIT_DIR=$PWD/.git # Mask seeing our own git-repo
|
||||
|
||||
rm -rf $HYPRE_ARCH_PATH
|
||||
[ -e Makefile ] && make distclean 2>/dev/null
|
||||
|
||||
./configure \
|
||||
--prefix=$HYPRE_ARCH_PATH \
|
||||
--disable-fortran \
|
||||
--enable-shared \
|
||||
$configOpt \
|
||||
&& make -j $WM_NCOMPPROCS \
|
||||
&& echo "Built: hypre" \
|
||||
&& make install \
|
||||
&& echo "Installed: hypre"
|
||||
) || {
|
||||
echo "Error building: hypre"
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -75,7 +75,7 @@ usage()
|
||||
|
||||
Usage: ${0##*/} [OPTION] [lib|libso] [kahip-VERSION]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* Compile KaHIP
|
||||
|
||||
@ -74,7 +74,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [lib|libso] [METIS-VERSION]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* build METIS with
|
||||
@ -130,7 +130,7 @@ fi
|
||||
# METIS_SOURCE_DIR : location of the original sources
|
||||
|
||||
METIS_SOURCE_DIR=$sourceBASE/$metisPACKAGE
|
||||
: ${METIS_ARCH_PATH:=$installBASE$WM_PRECISION_OPTION$WM_LABEL_OPTION/$metisPACKAGE}
|
||||
: ${METIS_ARCH_PATH:=$installBASE$WM_SIZE_OPTIONS/$metisPACKAGE}
|
||||
|
||||
[ -d "$METIS_SOURCE_DIR" ] || {
|
||||
echo "Missing sources: '$metisPACKAGE'"
|
||||
|
||||
@ -42,7 +42,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [mgridgen-VERSION]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* Build MGridGen
|
||||
@ -96,7 +96,7 @@ fi
|
||||
# MGRIDGEN_ARCH_PATH : installation directory
|
||||
|
||||
MGRIDGEN_SOURCE_DIR=$WM_THIRD_PARTY_DIR/$mgridgenPACKAGE
|
||||
MGRIDGEN_ARCH_PATH=$installBASE$WM_PRECISION_OPTION$WM_LABEL_OPTION/$mgridgenPACKAGE
|
||||
MGRIDGEN_ARCH_PATH=$installBASE$WM_SIZE_OPTIONS/$mgridgenPACKAGE
|
||||
|
||||
: ${FOAM_MPI:=dummy}
|
||||
|
||||
|
||||
2
makeMesa
2
makeMesa
@ -49,7 +49,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] mesa-VERSION [-- configure-options]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* build Mesa with
|
||||
|
||||
@ -70,7 +70,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [openmpi-VERSION] [-- configure-options]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-memcheck Configure with --enable-memcheck (requires valgrind.h)
|
||||
-threaded Configure with --enable-mpi-thread-multiple
|
||||
-no-threaded Configure with --disable-mpi-thread-multiple
|
||||
|
||||
194
makePETSC
Executable file
194
makePETSC
Executable file
@ -0,0 +1,194 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2018 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of OpenFOAM, licensed under GNU General Public License
|
||||
# <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# makePETSC
|
||||
#
|
||||
# Description
|
||||
# Build script for PETSC
|
||||
#
|
||||
# ----------------------------------------------
|
||||
# NO USER-CONFIGURABLE SETTINGS WITHIN THIS FILE
|
||||
#------------------------------------------------------------------------------
|
||||
# Dynamic library endings (default is .so)
|
||||
[ "$(uname -s)" = Darwin ] && SO=dylib || SO=so
|
||||
|
||||
# Short-circuit test for an installation
|
||||
if [ "$1" = "-test" ]
|
||||
then
|
||||
[ "$#" -eq 2 ] || { echo "${0##*/} -test : needs 1 argument"; exit 1; }
|
||||
dir="$2" # <- PETSC_ARCH_PATH
|
||||
if [ -d "$dir/include" ]
|
||||
then
|
||||
for lib in \
|
||||
$FOAM_EXT_LIBBIN/libpetsc.$SO \
|
||||
$dir/lib/libpetsc.a \
|
||||
$dir/lib/libpetsc.$SO \
|
||||
$dir/lib$WM_COMPILER_LIB_ARCH/libpetsc.a \
|
||||
$dir/lib$WM_COMPILER_LIB_ARCH/libpetsc.$SO \
|
||||
;
|
||||
do
|
||||
if [ -r "$lib" ]
|
||||
then
|
||||
echo " petsc include: $dir/include"
|
||||
echo " petsc library: ${lib%/*}"
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
fi
|
||||
exit 2
|
||||
fi
|
||||
#------------------------------------------------------------------------------
|
||||
# Run from third-party directory only
|
||||
cd ${0%/*} && wmakeCheckPwd "$WM_THIRD_PARTY_DIR" 2>/dev/null || {
|
||||
echo "Error (${0##*/}) : not located in \$WM_THIRD_PARTY_DIR"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
}
|
||||
[ -n "$FOAM_EXT_LIBBIN" ] || {
|
||||
echo "Error (${0##*/}) : \$FOAM_EXT_LIBBIN not set"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
}
|
||||
. etc/tools/ThirdPartyFunctions
|
||||
#------------------------------------------------------------------------------
|
||||
_foamConfig petsc
|
||||
|
||||
petscPACKAGE=${petsc_version:-petsc-system}
|
||||
targetType=libso
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
usage() {
|
||||
exec 1>&2
|
||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||
cat<<USAGE
|
||||
|
||||
usage: ${0##*/} [OPTION] [lib|libso] [PETSC-VERSION]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* build PETSC with
|
||||
${petscPACKAGE:-'unspecified petsc version'}
|
||||
|
||||
USAGE
|
||||
exit 1
|
||||
}
|
||||
#------------------------------------------------------------------------------
|
||||
exportCompiler # Compiler info for CMake/configure
|
||||
|
||||
# Parse options
|
||||
while [ "$#" -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
'') ;; # Ignore empty
|
||||
-h | -help) usage ;;
|
||||
-gcc) useGcc ;;
|
||||
|
||||
lib|libso)
|
||||
targetType="$1"
|
||||
;;
|
||||
|
||||
petsc-[0-9]*)
|
||||
petscPACKAGE="${1%%/}"
|
||||
unset PETSC_ARCH_PATH # Avoid inconsistency
|
||||
;;
|
||||
*)
|
||||
die "unknown option/argument: '$1'"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
[ -n "$petscPACKAGE" ] || die "The petsc-VERSION was not specified"
|
||||
|
||||
# Nothing to build
|
||||
if _foamIsNone $petscPACKAGE
|
||||
then
|
||||
echo "Using petsc-none (skip ThirdParty build of PETSC)"
|
||||
exit 0
|
||||
elif _foamIsSystem $petscPACKAGE
|
||||
then
|
||||
echo "Using petsc-system"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Build PETSC
|
||||
#
|
||||
# PETSC_ARCH_PATH : installation directory
|
||||
# PETSC_SOURCE_DIR : location of the original sources
|
||||
|
||||
PETSC_SOURCE_DIR=$sourceBASE/$petscPACKAGE
|
||||
: ${PETSC_ARCH_PATH:=$installBASE$WM_SIZE_OPTIONS/$petscPACKAGE}
|
||||
|
||||
[ -d "$PETSC_SOURCE_DIR" ] || {
|
||||
echo "Missing sources: '$petscPACKAGE'"
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
echo "Starting build: $petscPACKAGE ($targetType)"
|
||||
echo
|
||||
(
|
||||
# PETSC arch - same root as WM_OPTIONS (eg, DPInt32)
|
||||
archOpt="$WM_SIZE_OPTIONS"
|
||||
|
||||
# Configuration options:
|
||||
configOpt="--with-cc=$(whichMpicc) --with-cxx=$(whichMpicxx)"
|
||||
|
||||
if [ "$targetType" = libso ]
|
||||
then
|
||||
configOpt="--with-shared-libraries"
|
||||
fi
|
||||
|
||||
if [ "$WM_LABEL_SIZE" = 64 ]
|
||||
then
|
||||
configOpt="$configOpt --with-64-bit-indices=1"
|
||||
else
|
||||
configOpt="$configOpt --with-64-bit-indices=0"
|
||||
fi
|
||||
|
||||
if [ "$WM_PRECISION_OPTION" = SP ]
|
||||
then
|
||||
configOpt="$configOpt --with-precision=single"
|
||||
else
|
||||
configOpt="$configOpt --with-precision=double"
|
||||
fi
|
||||
|
||||
cd $PETSC_SOURCE_DIR || exit 1
|
||||
export GIT_DIR=$PWD/.git # Mask seeing our own git-repo
|
||||
|
||||
rm -rf $PETSC_ARCH_PATH
|
||||
|
||||
./configure \
|
||||
--prefix=$PETSC_ARCH_PATH \
|
||||
--with-petsc-arch=$archOpt \
|
||||
--with-clanguage=C \
|
||||
--with-scalapack=0 \
|
||||
--with-superlu_dist=0 \
|
||||
--with-suitesparse=0 \
|
||||
--download-f2cblaslapack=1 \
|
||||
$configOpt \
|
||||
&& echo "Configured: petsc" \
|
||||
&& make PETSC_DIR=$PETSC_SOURCE_DIR PETSC_ARCH="$archOpt" all \
|
||||
&& echo "Built: petsc" \
|
||||
&& make PETSC_DIR=$PETSC_SOURCE_DIR PETSC_ARCH="$archOpt" install
|
||||
&& echo "Installed: petsc"
|
||||
) || {
|
||||
echo "Error building: petsc"
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
2
makeQt
2
makeQt
@ -35,7 +35,7 @@ usage() {
|
||||
|
||||
usage: ${0##*/} [OPTION] [qt-VERSION] [-- configure-options]
|
||||
options:
|
||||
-gcc Force gcc/g++ instead of the values from \$WM_CC, \$WM_CXX
|
||||
-gcc Force gcc/g++ instead of using \$WM_CC, \$WM_CXX
|
||||
-help
|
||||
|
||||
* build $qtTYPE, version ${qtVERSION:-undefined}
|
||||
|
||||
2
makeVTK
2
makeVTK
@ -71,7 +71,7 @@ options:
|
||||
-mesa-include DIR location of mesa headers (current: ${MESA_INCLUDE:-none})
|
||||
-mesa-lib PATH path to mesa library (current: ${MESA_LIBRARY:-none})
|
||||
-osmesa with off-screen mesa only
|
||||
-mpi with mpi
|
||||
-mpi with mpi (VTK_Group_MPI=ON)
|
||||
-mpi=N with max 'N' mpi processes. N=0 for no upper-limit.
|
||||
-cmake PATH with cmake from the path given
|
||||
-verbose verbose output in Makefiles
|
||||
|
||||
@ -7,24 +7,17 @@ vtk=VTK-9.0.0
|
||||
# mesa=mesa-13.0.3
|
||||
mesa=mesa-17.1.1
|
||||
|
||||
# Request building MPI modules
|
||||
# VTK_Group_MPI=ON
|
||||
# Module_vtkAcceleratorsVTKm : Request building vtkAcceleratorsVTKm
|
||||
#
|
||||
# Request building vtkAcceleratorsVTKm
|
||||
# Module_vtkAcceleratorsVTKm=OFF
|
||||
#
|
||||
# Request building vtkParallelMPI
|
||||
# Module_vtkParallelMPI=ON
|
||||
# -mpi implies VTK_Group_MPI : Request building MPI modules
|
||||
|
||||
set -x
|
||||
./makeVTK \
|
||||
-mpi=0 \
|
||||
-mpi \
|
||||
-osmesa \
|
||||
-mesa-prefix $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$mesa \
|
||||
$vtk "$@" \
|
||||
VTK_Group_MPI=ON \
|
||||
Module_vtkAcceleratorsVTKm=ON \
|
||||
Module_vtkParallelMPI=ON
|
||||
Module_vtkAcceleratorsVTKm=ON
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user