Skip to content
Snippets Groups Projects
Select Git revision
  • master default
  • ci-bump-test
  • abp-queue
  • new-delete-leaks
  • fused-continuation-and-completion-stealing
  • emper-fix-invalid-conv
  • remote-put-get-free-context-cycle
  • linux-version-construct-on-first-use
  • libstdc++-asserts
  • msan
  • libc++
  • completer-strategies
  • cactus_stack_devel_one_commit
  • client-load-change
  • cppcheck
  • flow
  • cast-if-future
  • async_network2
  • thread_safe_log_config
  • burak
  • attic/clang-release-tls-optimization-debug-and-fix
  • attic/continuation-stealing-dev
22 results

meson.build

Blame
  • Forked from Lehrstuhl für Informatik 4 (Systemsoftware) / manycore / emper
    Source project has a limited visibility.
    • Florian Fischer's avatar
      6753d982
      [meson] allow building EMPER on systems whithout <filesystem> · 6753d982
      Florian Fischer authored
      Check if std::filesystem::recursive_directory_iterator and std::filesystem::path
      are available before using those in EMPER code.
      
      We do not export the symbols using the not supported filesystem features
      in our public headers using preprocessor ifdef.
      
      But the code in the cpp files using it not removed using the preprocessor.
      To allow linkage we use a constexpr which throws a logic_error on runtime
      rendering the rest of the code dead und thus prevents its generation by
      the compiler.
      This methods allows the compiler to see the code in its analysis passes
      but does not fail during linking.
      
      Allow meson.build files in emper/ subdirectories add configuration options
      by consuming the conf_data object after all subdirectories were visited.
      
      Introduce a quasi naming standard for cpp feature flags in meson code:
      	cpp_has_<namespace>_<feature>
      
      Examples:
      	cpp_has_fs_path
      6753d982
      History
      [meson] allow building EMPER on systems whithout <filesystem>
      Florian Fischer authored
      Check if std::filesystem::recursive_directory_iterator and std::filesystem::path
      are available before using those in EMPER code.
      
      We do not export the symbols using the not supported filesystem features
      in our public headers using preprocessor ifdef.
      
      But the code in the cpp files using it not removed using the preprocessor.
      To allow linkage we use a constexpr which throws a logic_error on runtime
      rendering the rest of the code dead und thus prevents its generation by
      the compiler.
      This methods allows the compiler to see the code in its analysis passes
      but does not fail during linking.
      
      Allow meson.build files in emper/ subdirectories add configuration options
      by consuming the conf_data object after all subdirectories were visited.
      
      Introduce a quasi naming standard for cpp feature flags in meson code:
      	cpp_has_<namespace>_<feature>
      
      Examples:
      	cpp_has_fs_path