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,