summary refs log tree commit diff
path: root/assets/meson.build
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2024-04-13 07:59:29 +0200
committerMel <einebeere@gmail.com>2024-04-13 07:59:29 +0200
commit727983e0a7033e0b778c38e0a0b51a5bc0e9fc2b (patch)
tree76919734109190ea5b867ea89df169f3b7afaf9a /assets/meson.build
parent4ce39fff5cf708887817870977d2dbaaee19f9c9 (diff)
downloadmeowcraft-727983e0a7033e0b778c38e0a0b51a5bc0e9fc2b.tar.zst
meowcraft-727983e0a7033e0b778c38e0a0b51a5bc0e9fc2b.zip
Create Meson build configuration
Diffstat (limited to 'assets/meson.build')
-rw-r--r--assets/meson.build29
1 files changed, 29 insertions, 0 deletions
diff --git a/assets/meson.build b/assets/meson.build
new file mode 100644
index 0000000..75265c2
--- /dev/null
+++ b/assets/meson.build
@@ -0,0 +1,29 @@
+fs = import('fs')
+
+asset_files = [
+    'images/atlas.ppm',
+
+    'shaders/block_outline.frag.glsl', 'shaders/block_outline.vert.glsl',
+    'shaders/clouds.frag.glsl', 'shaders/clouds.vert.glsl',
+    'shaders/image_viewer.frag.glsl', 'shaders/image_viewer.vert.glsl',
+    'shaders/terrain.frag.glsl', 'shaders/terrain.vert.glsl'
+]
+
+assets = []
+foreach file : asset_files
+    content = fs.read(file)
+    name = file.replace('/', '_') \
+        .replace('.frag.glsl', '_fragment') \
+        .replace('.vert.glsl', '_vertex') \
+        .replace('.', '_')
+
+    delim = 'meowcraft_asset'
+
+    assets += f'char const* @name@ = R"@delim@(@content@)@delim@";'
+endforeach
+
+merged_assets = '\n\n'.join(assets)
+
+asset_file = configure_file(input: 'all_assets.cpp.in',
+    output: 'all_assets.cpp',
+    configuration: {'content': merged_assets})
\ No newline at end of file