Skip to content
Snippets Groups Projects
  1. Jul 28, 2021
  2. Jun 18, 2021
    • Mark OLESEN's avatar
      CONFIG: inline _foamEval within <etc/config.sh/setup> · e2148b58
      Mark OLESEN authored
      - previously a function (unlike the csh version) but since bashrc and
        setup have been split -> replace with inline definition
      
      STYLE: formatting/wording for openfoam starters
      
      TUT: simplify controlDict modification, add default substitution
      
      ENH: accept '/' for end-of-options terminator (etc/openfoam)
      
      - makes the application or service more apparent.
        * eg.  /usr/bin/openfoam / blockMesh
        * vs.  /usr/bin/openfoam -- blockMesh
      
        Accept lone '-' as the end-of-options terminator, as per bash
      
      - Adjust handling of openfoam '-c' option to flag that a command-string
        will appear, but continue with option parsing.
        Consistent with bash definition.
      e2148b58
    • Mark OLESEN's avatar
      ENH: add auto-detect 0/ to foamCleanTutorials · 7d2a9fad
      Mark OLESEN authored
      - in the 'auto' mode (now the default), it will use cleanCase and also
        remove the 0/ directory if a 0.orig/ directory also exists.
      
        This corresponds to a frequent idiom and can be used quite safely
        for most cases.
      
      ENH: add -serial / -parallel preference for foamRunTutorials
      7d2a9fad
  3. Jun 10, 2021
    • Mark OLESEN's avatar
      ENH: replace tutorials/AutoTest with bin/foamTestTutorial · 85301030
      Mark OLESEN authored
      - additional -serial/-parallel option:
        prefer Allrun-serial or Allrun-parallel if available
      
      - optional -output=DIR to preserve output
      
      ENH: report missing tutorials/ directory in RunFunctions
      85301030
    • Mark OLESEN's avatar
      ENH: robustness, consistency for wmake -show-api, -version · c7bde70e
      Mark OLESEN authored
      - add to wmakeFunctions to ensure it works even without 'make' being
        installed. Exit immediately after -show-api for consistency with
        -version.
      
      foamEtcFile:
        - drop warnings for some old (pre-v1812) defunct options
          and simply flag as unknown options.
        - handle -version, --version as equivalent to -show-api
      c7bde70e
  4. May 27, 2021
  5. May 06, 2021
  6. Feb 16, 2021
  7. Feb 15, 2021
  8. Feb 10, 2021
  9. Jan 26, 2021
  10. Nov 26, 2020
    • Mark OLESEN's avatar
      ENH: add hook for bear frontend to create json output (#1936) · a50047bb
      Mark OLESEN authored
      Example usage,
      
         wmake -with-bear src/OpenFOAM
         src/Allwmake -with-bear -s -j
      
      - bin/tools/vscode-settings
      
        Emit some json content suitable for setting up Visual Studio Code
        for use with OpenFOAM.
      
        For example,
            bin/tools/vscode-settings > .vscode/settings.json
      
      Ideas from Volker Weissman
      a50047bb
  11. Nov 25, 2020
    • Mark OLESEN's avatar
      ENH: installation helpers · 9fe09ad2
      Mark OLESEN authored
      ----
      install-dirs: a general directory installer
      
        Copy installs non-binary (platform) directories.
        Eg,
      
            install-dirs -prefix=... -devel
            install-dirs -prefix=... -default -no-app
      
      ----
      install-platform: a platform (binary) installer
      
        This is primarily driven by the need to install into system mpi
        directories. The problem noted in issue #1893 is caused by the
        rpm-mpi-hooks (fedora and redhat-8).
      
        For the additional mpi library qualifier (openmpi-x86_64) to be
        added to the requirements, the mpi-specific libraries (eg,
        libPstream.so) need to be installed in the mpi system directory
        (eg, /usr/lib64/openmpi).
      
        However, then need symlinks from the system locations back to our
        local directories to ensure that the libraries are correctly found
        via our LD_LIBRARY_PATH and we don't get dummy libraries.
      
      ----
      update-mpi-links: a post-install update hook
      
        Expected paths are registered as persistent information into the
        hook during packaging. Triggering the hook after installation
        completes the creation of the symlinks.
      
      Normal usage,
      ```
      prefix="/tmp/local-install/openfoam"
      
      bin/tools/install-dirs -prefix="$prefix" -common
      bin/tools/install-platform -prefix="$prefix"
      ```
      Installs
       - /tmp/local-install/openfoam/META-INFO
       - /tmp/local-install/openfoam/bin
       - /tmp/local-install/openfoam/etc
       - /tmp/local-install/openfoam/platforms/linux64GccDPInt32Opt/bin
       - /tmp/local-install/openfoam/platforms/linux64GccDPInt32Opt/lib
      
      Can also place architecture-dependent bits elsewhere,
      ```
      prefix="/tmp/local-install/openfoam"
      multi_arch="$(dpkg-architecture -qDEB_TARGET_MULTIARCH)"
      
      bin/tools/install-dirs -prefix="$prefix" -common
      bin/tools/install-platform -exec-prefix="$prefix/$multi_arch"
      ```
      Installs
       - /tmp/local-install/openfoam/META-INFO
       - /tmp/local-install/openfoam/bin
       - /tmp/local-install/openfoam/etc
       - /tmp/local-install/openfoam/x86_64-linux-gnu/bin
       - /tmp/local-install/openfoam/x86_64-linux-gnu/lib
      
      Can use it to flatten out platforms entirely,
      ```
      prefix="/tmp/local-install/openfoam"
      bin/tools/install-dirs -prefix="$prefix" -common
      bin/tools/install-platform -exec-prefix="$prefix"
      ```
      Installs
       - /tmp/local-install/openfoam/META-INFO
       - /tmp/local-install/openfoam/bin
       - /tmp/local-install/openfoam/etc
       - /tmp/local-install/openfoam/lib
      9fe09ad2
  12. Nov 11, 2020
    • Mark OLESEN's avatar
      CONFIG: rationalize mpi config tuning (#1910) · c91fc6f4
      Mark OLESEN authored
      - prefix FOAM_MPI and library directories with 'sys-' for system
        versions for uniform identication.
      
        WM_MPLIB      | libdir (FOAM_MPI)  | old naming |
        SYSTEMMPI     | sys-mpi            | mpi        |
        SYSTEMOPENMPI | sys-openmpi        | openmpi-system |
      
      - prefix preferences with 'prefs.' to make them more easily
        identifiable, and update bin/tools/create-mpi-config accordingly
      
            Old name: config.{csh,sh}/openmpi
            New name: config.{csh,sh}/prefs.openmpi
      
      - additional mpi preferences now available:
          * prefs.intelmpi
          * prefs.mpich
          ...
      
      CONFIG: added hook for EASYBUILDMPI (eb-mpi), somewhat like USERMPI
      
      - EasyBuild uses mpicc when compiling, so no explicit wmake rules are
        used
      
      ENH: support different major versions for system openmpi
      
      - for example, with
      
           WM_MPLIB=SYSTEMOPENMPI2
      
        defines FOAM_MPI=sys-openmpi2 and thus creates lib/sys-openmpi2
      
      ENH: centralize handling of mpi as 'mpi-rules'
      
          Before:
              sinclude $(G...
      c91fc6f4
  13. Nov 04, 2020
    • Mark OLESEN's avatar
      ENH: handle wmake -debug option via FOAM_EXTRA_CXX_FLAGS · 1d544540
      Mark OLESEN authored
      - ensures that subsequent Allwmake scripts know about it.
      
      ENH: add bin/tools/query-detect wrapper for wmake have_* scripts
      
      CONFIG: use project/ThirdParty without additional sanity checks
      
      - no need to test for Allwmake or platforms/ if ThirdParty is located
        within the project directory itself.
      
      COMP: add simple mpi test to 00-dummy
      
      - for testing library linkage, etc.
      1d544540
  14. Oct 28, 2020
    • Mark OLESEN's avatar
      ENH: generate local orientation vectors for blockMesh VTK output (#1903) · f959c8eb
      Mark OLESEN authored
      - can help when designing/debugging blockMesh layouts
      
      - propagate low-level cellModel methods face() and edge() to cellShape
      
      STYLE: relocate blockMesh OBJ output to application only
      
      - remove blockTopology files in cleanCase function
      
      - improve code consistency in top-level blockMesh, PDRblockMesh
        generation.
      f959c8eb
  15. Oct 20, 2020
  16. Oct 07, 2020
  17. Sep 09, 2020
  18. Sep 03, 2020
  19. Aug 11, 2020
    • Mark OLESEN's avatar
      ENH: add bin/tools/createMingwRuntime helper · 18c68e6b
      Mark OLESEN authored
        Script to copy/create mingw run-time installation from the Linux
        cross-compilation. Packs everything into a tar or a zip file.
      
        To accommodate Windows, all .dll files are also placed in the
        platforms bin/ directory where they are easily found via the PATH.
      
        Futhermore, ThirdParty dll files (including those from mingw itself)
        are also placed in the same directory.
      
      ---
      Steps
        - bundles common files and directories (bin, etc, META-INFO, ...)
      
        - copies .exe files from FOAM_APPBIN and .dll files from FOAM_LIBBIN
          to the new target platforms/win64MingwDPInt32Opt/bin.
      
        - copies mingw sys-root .dll files to the new target
          platforms/win64MingwDPInt32Opt/bin
      
        - copies other ThirdParty dll files (scotch, fftw, etc) to
          platforms/win64MingwDPInt32Opt/bin
      
        - copies tutorials (can be deactivated)
      
      ---
      Note
          Can only be called when the linux64Mingw environment is active.
      18c68e6b
    • Mark OLESEN's avatar
      ENH: improvements for FOAM_CONFIG_ETC · a6e86caa
      Mark OLESEN authored
      - handle relative directory names for FOAM_CONFIG_ETC
      a6e86caa
  20. Jun 23, 2020
    • Mark OLESEN's avatar
      CONFIG: support openfoam -init=FILE · cbcc8754
      Mark OLESEN authored
      - useful for supporting a variety of different predefined
        configuration files. Bypasses the regular etc/bashrc entirely.
      
      - minor refactoring in foamCreateModuleInclude
      cbcc8754
  21. Jun 19, 2020
  22. Jun 08, 2020
  23. Jun 03, 2020
  24. May 29, 2020
  25. May 28, 2020
  26. May 12, 2020
    • Mark OLESEN's avatar
      ENH: add 'subcommand' handling to wmake (#1693) · 9e3d0685
      Mark OLESEN authored
      - initial split of wmake-related commands into "plumbing" and
        "porcelain" akin to how git handles things.
      
      - wmakeBuildInfo (very low-level), now relocated to the wmake/scripts
        and accessible for the user as "wmake -build-info".
      
        This satisfies a long-standing desire to access build information
        in a fashion similar to the api/patch information.
      
      CONFIG: avoid git information when building with a debian/ directory
      
      - when a 'debian/' directory exists, there is a high probability that
        the '.git/' directory is from debian and not from OpenFOAM (ie,
        useless here). This corresponds to an implicit '-no-git', which has
        no effect when building from pristine sources.
      
      ENH: wmakeCheckPwd becomes scripts/wmake-check-dir
      
      - accessible for the user as "wmake -check-dir" and with 1 or 2
        directory names. A wmakeCheckPwd symlink left for compatibility.
      9e3d0685
  27. May 11, 2020
  28. May 06, 2020
    • Mark OLESEN's avatar
      ENH: add paraFoam -plugin-path=DIR option · 0ec0facf
      Mark OLESEN authored
      - convenient way to use alternative plugin installations
      
      - provide separate -help-build information and reduce the noisy output
        when a reader module cannot be located.
      0ec0facf
  29. May 05, 2020
    • Mark OLESEN's avatar
      ENH: improve cmake/ParaView config handling · aafe674f
      Mark OLESEN authored
      - improve handling of changes in ParaView/VTK or cmake parameters (#1693)
      
        * adjust internals to support recording of an unlimited number of
          configuration parameters and use file `cmp` instead of trying
          to check strings ourselves.
      
      ENH: new wmake/scripts/wmake.cmake-args handler
      
      - additional handling of -prefix=... as CMAKE_INSTALL_PREFIX export.
      
      - in some contexts, can use instead of AllwmakeParseArguments
      aafe674f
  30. Apr 21, 2020
  31. Apr 15, 2020
  32. Apr 08, 2020
  33. Apr 06, 2020
  34. Mar 25, 2020