feat(RayFEM): initial commit

This commit is contained in:
2026-02-05 07:16:15 -05:00
commit 0f341071f4
31 changed files with 2973 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
cli11_proj = subproject('cli11')
dependencies += cli11_proj.get_variable('CLI11_dep')

View File

@@ -0,0 +1,12 @@
czmq_opts = cmake.subproject_options()
czmq_opts.add_cmake_defines({
'CMAKE_POLICY_VERSION_MINIMUM': '3.5',
'CMAKE_C_FLAGS': '-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0',
'CMAKE_CXX_FLAGS': '-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0'
})
czmq_opts.set_install(false)
czmq_subproject = cmake.subproject('czmq', options: czmq_opts)
dependencies += czmq_subproject.dependency('czmq')

View File

@@ -0,0 +1,8 @@
config_p = subproject('libconfig',
default_options:[
'default_library=static',
'pkg_config=false',
'build_tests=false',
'build_examples=false'
])
dependencies += config_p.get_variable('config_dep')

7
build-config/meson.build Normal file
View File

@@ -0,0 +1,7 @@
cmake = import('cmake')
subdir('raylib')
subdir('czmq')
subdir('mfem')
subdir('CLI11')
subdir('libconfig')

View File

@@ -0,0 +1,16 @@
cmake = import('cmake')
mfem_cmake_options = cmake.subproject_options()
mfem_cmake_options.add_cmake_defines({
'MFEM_ENABLE_EXAMPLES': 'OFF',
'MFEM_ENABLE_TESTING': 'OFF',
'MFEM_ENABLE_MINIAPPS': 'OFF',
'MFEM_USE_BENCMARK': 'OFF',
'BUILD_SHARED_LIBS': 'OFF',
'BUILD_STATIC_LIBS': 'ON',
})
mfem_cmake_options.set_install(true)
mfem_sp = cmake.subproject(
'mfem',
options: mfem_cmake_options)
dependencies += mfem_sp.dependency('mfem')

View File

@@ -0,0 +1,39 @@
raylib_opts = cmake.subproject_options()
raylib_opts.set_install(false)
raylib_opts.add_cmake_defines({
'BUILD_EXAMPLES': 'OFF',
})
if cc.get_id() == 'emscripten'
raylib_opts.add_cmake_defines({
'PLATFORM': 'Web',
})
else
raylib_opts.add_cmake_defines({
'PLATFORM': 'Desktop',
})
endif
raylib_subproject = cmake.subproject('raylib', options: raylib_opts)
dependencies += raylib_subproject.dependency('raylib')
# General configuration
if host_machine.system() == 'windows'
dependencies += [
cc.find_library('winmm'),
]
elif host_machine.system() == 'darwin'
link_args += [
'-framework', 'AppKit',
'-framework', 'IOKit',
]
elif host_machine.system() == 'linux'
dependencies += [
cc.find_library('m'),
cc.find_library('dl'),
]
elif host_machine.system() == 'emscripten'
link_args += [
'-s', 'ENVIRONMENT=web',
'-s', 'USE_GLFW=3',
]
name_suffix = 'html'
endif