# *********************************************************************** # # Copyright (C) 2025 -- The 4D-STAR Collaboration # File Author: Emily Boudreaux # Last Modified: March 19, 2025 # # 4DSSE is free software; you can use it and/or modify # it under the terms and restrictions the GNU General Library Public # License version 3 (GPLv3) as published by the Free Software Foundation. # # 4DSSE is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # See the GNU Library General Public License for more details. # # You should have received a copy of the GNU Library General Public License # along with this software; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # *********************************************************************** # project('SERiF', 'cpp', version: 'v0.0.1a', default_options: ['cpp_std=c++23'], meson_version: '>=1.5.0') # Add default visibility for all C++ targets add_project_arguments('-fvisibility=default', language: 'cpp') # Determine the mode mode = 1 if get_option('user_mode') mode = 0 endif # Define DATA_DIR based on mode if mode == 1 data_dir = meson.project_source_root() + '/assets/dynamic' else data_dir = get_option('prefix') + '/' + get_option('datadir') + '/SERiF' endif # Pass the DATA_DIR definition to the compiler add_project_arguments('-DDATA_DIR=' + data_dir, language : 'cpp') # We disable these because of CppAD add_project_arguments('-Wno-bitwise-instead-of-logical', language: 'cpp') # Build external dependencies first so that all the embedded resources are available to the other targets subdir('build-config') if get_option('build_debug_utils') subdir('utils/debugUtils') endif # Build the main project subdir('src') if get_option('build_tests') subdir('tests') endif # if get_option('build_python') # subdir('build-python') # endif if get_option('build_post_run_utils') subdir('utils') endif