27 Commits

Author SHA1 Message Date
325e3e230d ENH: improve flexibility of make scripts
- the various make scripts now also search hierarchical sources,
  which makes it easier to organize sources. The secondary
  sub-directory is the lower-case value of the package stripped of
  trailing non-alphabet characters.

  For example, searching for ParaView-v5.9.1

    sources/
    |-- adios
    |   |-- ...
    |   |-- ADIOS2-2.7.1
    |   \-- adios-1.13.1
    |-- cgal
    |   |-- CGAL-4.12.2
    |   \-- CGAL-4.14.2
    |   ...
    |-- openmpi
    |   |-- openmpi-4.0.3
    |   \-- openmpi-4.1.1
    |-- paraview
    |   |-- ParaView-v5.6.1
    |   \-- ParaView-v5.9.1
    \-- scotch
        ...

- additional out-of-source build options

  FOAM_THIRD_PARTY_BUILDROOT :
     Replace WM_THIRD_PARTY_DIR as the root for build/ and platforms/

  FOAM_THIRD_PARTY_SOURCES :
     Alternative to WM_THIRD_PARTY_DIR/sources/

- rationalise internal package variable names for easier maintenance
2021-12-09 16:30:28 +01:00
834efe6dda COMP: handle forced use of gcc/g++ for wmake components
- does not change WM_OPTIONS or output directories, so that the target
  directories are correct.
2020-11-16 08:29:39 +01:00
bdd4266e2f ENH: delay testing of FOAM_EXT_LIBBIN
- only test in the packages that actually require it.
  State as a requirement.

ENH: skip build of packages with known mingw issues

- primarily kahip and pt-scotch.
  Others may also have issues, but for these we tend to use system
  packages anyhow.

ENH: add '-force' option to various scripts

- overrides some _lazy_ build logic
2020-06-24 14:32:26 +02:00
78819144d3 DOC: add hint about scotch gitlab repo and paraview requirements (#52)
- add download hints for -help of various make scripts
2020-06-19 00:38:03 +02:00
6e03e1ecb4 CONFIG: simplify version range
- accept [0-9]* instead of attempting more restrictive specifications

CONFIG: makePETSC without fortran
2020-06-15 20:30:22 +02:00
c8a7f46db2 STYLE: regularize quoting and exit on failed 'cd' 2019-11-19 16:17:01 +01:00
a7c2a4bfb9 STYLE: use EXT_SO instead of SO for consistency with wmake internal naming 2019-04-25 10:46:45 +02:00
770e22bf51 ENH: update handling of compiler and flags
- support use of wmake -show-xyz, as well as older WM_CC, WM_CFLAGS etc.

- add support for Makefile.inc for scotch

- add -toolset= option for making boost and use b2 instead of legacy
  bjam for configuration
2019-04-25 10:46:44 +02:00
830e92194a BOT: reformat headers 2019-04-12 08:54:50 +02:00
0e599b7a64 ENH: add optional -clang flag for building gcc
- can be useful when bootstrapping
2018-07-18 09:39:12 +02:00
4f844dabcf STYLE: use _foamConfig function instead of _foamEtc -config 2018-06-19 20:41:57 +02:00
6d7ef8dc42 COMP: adjust make scripts for systems with .dylib instead of .so 2018-04-11 16:28:32 +02:00
231733bc15 STYLE: use foamEtcFile with -config option instead of config.sh/ 2018-01-22 16:05:19 +01:00
43cbb24ddd COMP: check for wmake toolchain when building third-party (fixes #30) 2018-01-08 13:43:29 +01:00
816173b7c4 CONFIG: update versions
ENH: add support of additional configure options to some make scripts

- remove hard-coded --verbs from makeOPENMPI in favour of letting the
  user provide it via the command-line for makeOPENMPI.

  eg,  makeOPENMPI openmpi-1.10.6 -- --with-verbs=DIRECTORY ...
2017-12-15 11:21:31 +01:00
491b3390bb ENH: add build scripts for KaHIP and METIS 2017-10-11 12:28:04 +02:00
59be96faed ENH: remove reliance on OpenFOAM etc/config.sh/functions file.
- similar functionality in etc/tools/ThirdPartyFunctions to improve
  the independence of ThirdParty while reducing clutter in the callers.

- add useGcc function for convenience
- mask seeing our own git-repo when building

STYLE: various items

- eliminate old user-editable configuration in files - now command-line only.
- use *_BUILD_DIR instead of *_BINARY_DIR for more clarity of the purpose
- drop use of '-q' option for wmakeCheckPwd (already has stderr redirect)
- drop checkVersion for makeParaView since it stopped working properly
  with newer paraview version

CONFIG: update list of versions
2017-03-20 12:42:44 +01:00
59432b7b2d ENH: use pkgconfigAdjust when compiling software that has pkgconfig files
- simplifies relocation at a later stage
2017-01-20 14:55:18 +01:00
1622a46832 STYLE: clearly document which scripts contain user-configurable settings
- unify cd, check for the cwd and error message
2017-01-20 09:00:51 +01:00
318e249542 STYLE: reference the location of sources via the sourceBASE variable
- in the future it may be useful to locate all the sources under a
  sub-directory instead
2016-11-27 18:47:06 +01:00
cc2161856b ENH: improve third-party make with central installations
- initial attempt for building CGAL as headers-only, and without
  gmp/mpfr
2016-11-27 16:00:43 +01:00
0e474dcd51 STYLE: adjust comment to reflect change to wmRefresh 2016-11-10 16:26:26 +01:00
8f68d51717 CONFIG: change default library target for ccm to be static
- Makes it easier to locate for compiling/linking and lets us
  wrap away in a C++ interface to hide low-level C routines.
2016-08-09 09:54:11 +02:00
17aaa3dc77 CONFIG: rename config file to avoid premature filtering of its name 2016-07-06 08:12:31 +02:00
0b1c761075 STYLE: provide 'die' as alternative to 'usage'
- make option parsing more consistent
2016-06-20 07:07:51 +02:00
dc0ed1606a STYLE: slight cleanup of paraview make
- align comments in ParaView3Functions with ParaViewFunctions
  (makes it easier to spot differences)

- mention '-buildType' option in usage
- fix the version extraction reporting
- drop broken date-stamp check

STYLE: align some naming in makeCCMIO with other files
2016-06-20 07:07:50 +02:00
f2e5aba339 ENH: adjust build options for third-party IO libraries
- support building static libraries
2016-06-14 18:28:56 +02:00