[gnome-chess] Split engine support into a separate internal lib
- From: Michael Catanzaro <mcatanzaro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-chess] Split engine support into a separate internal lib
- Date: Thu, 24 Dec 2020 18:10:37 +0000 (UTC)
commit 6ce6d59c4a0b9c2c13b20805ab4d1d13386011be
Author: Michael Catanzaro <mcatanzaro gnome org>
Date: Thu Dec 24 12:08:35 2020 -0600
Split engine support into a separate internal lib
The chess engine support currently lives in src/, which otherwise
handles only GUI functions. This is a little misplaced, because engines
are not related to the GUI. So lib/ would be a better location for it.
Except all the engine support is actually higher-level than lib/. So we
can nicely fit it in between src/ and lib/ by creating a second internal
lib, libengine.
This is only a small benefit, but it's nice to keep src/ focused on the
GUI.
{src => engine}/ai-profile.vala | 0
{src => engine}/chess-engine-cecp.vala | 0
{src => engine}/chess-engine-uci.vala | 0
{src => engine}/chess-engine.vala | 0
engine/meson.build | 33 +++++++++++++++++++++++++++++++++
meson.build | 1 +
src/meson.build | 5 +----
7 files changed, 35 insertions(+), 4 deletions(-)
---
diff --git a/src/ai-profile.vala b/engine/ai-profile.vala
similarity index 100%
rename from src/ai-profile.vala
rename to engine/ai-profile.vala
diff --git a/src/chess-engine-cecp.vala b/engine/chess-engine-cecp.vala
similarity index 100%
rename from src/chess-engine-cecp.vala
rename to engine/chess-engine-cecp.vala
diff --git a/src/chess-engine-uci.vala b/engine/chess-engine-uci.vala
similarity index 100%
rename from src/chess-engine-uci.vala
rename to engine/chess-engine-uci.vala
diff --git a/src/chess-engine.vala b/engine/chess-engine.vala
similarity index 100%
rename from src/chess-engine.vala
rename to engine/chess-engine.vala
diff --git a/engine/meson.build b/engine/meson.build
new file mode 100644
index 0000000..b7e48cb
--- /dev/null
+++ b/engine/meson.build
@@ -0,0 +1,33 @@
+libengine_sources = [
+ 'ai-profile.vala',
+ 'chess-engine-cecp.vala',
+ 'chess-engine-uci.vala',
+ 'chess-engine.vala',
+]
+
+libengine_vala_args = [
+ '--target-glib=@0@'.format(min_glib_version),
+]
+
+libengine_c_args = [
+ '-include', 'config.h',
+]
+
+libengine_deps = [
+ glib,
+ gio,
+ posix,
+ libchess_dep,
+]
+
+libengine = static_library('libengine', libengine_sources,
+ include_directories: config_h_dir,
+ vala_args: libengine_vala_args,
+ c_args: libengine_c_args,
+ dependencies: libengine_deps
+)
+
+libengine_dep = declare_dependency(
+ link_with: libengine,
+ include_directories: include_directories('.'),
+)
diff --git a/meson.build b/meson.build
index 5bd07da..02b4baa 100644
--- a/meson.build
+++ b/meson.build
@@ -57,6 +57,7 @@ meson.add_install_script('meson_post_install.py')
subdir('data')
subdir('po')
subdir('lib')
+subdir('engine')
subdir('src')
subdir('tests')
subdir('help')
diff --git a/src/meson.build b/src/meson.build
index 5052848..bd1166a 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -8,10 +8,6 @@ resources = gnome.compile_resources(application_id, resource_files,
# The gnome-chess binary
chess_sources = [
resources,
- 'ai-profile.vala',
- 'chess-engine-cecp.vala',
- 'chess-engine-uci.vala',
- 'chess-engine.vala',
'chess-scene.vala',
'chess-view.vala',
'gnome-chess.vala',
@@ -32,6 +28,7 @@ chess_deps = [
librsvg,
posix,
libchess_dep,
+ libengine_dep,
]
executable('gnome-chess', chess_sources,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]