From bb13476e581b49db6bfc9c7ce58214b4f7882c5f Mon Sep 17 00:00:00 2001 From: Joffrey Jaffeux Date: Tue, 24 Mar 2015 00:47:36 +0100 Subject: [PATCH] add support_libraries option for android Rakefile config --- lib/motion/project/template/android.rb | 11 +++++++++++ lib/motion/project/template/android/config.rb | 6 +++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/lib/motion/project/template/android.rb b/lib/motion/project/template/android.rb index 92bd8c4d..f4d2aca9 100644 --- a/lib/motion/project/template/android.rb +++ b/lib/motion/project/template/android.rb @@ -37,6 +37,17 @@ task :build do app_build_dir = App.config.versionized_build_dir mkdir_p app_build_dir + # support libraries + extras_folder = File.join(App.config.sdk_path, 'extras') + App.config.support_libraries.each do |support_library| + library_folder = File.join(extras_folder, support_library.split('-'), "\"#{support_library}\".jar") + if File.exist?(library_folder) + App.config.vendor_project(:jar => library_folder) + else + App.fail "We couldn’t fail #{support_library} in #{extras_folder}. Use #{File.join(App.config.sdk_path, 'tools', 'android')} to install it." + end + end + # permissions permissions = Array(App.config.permissions) if App.config.development? diff --git a/lib/motion/project/template/android/config.rb b/lib/motion/project/template/android/config.rb index 5b07f25e..fbb2acb8 100644 --- a/lib/motion/project/template/android/config.rb +++ b/lib/motion/project/template/android/config.rb @@ -95,7 +95,7 @@ module Motion; module Project; variable :sdk_path, :ndk_path, :package, :main_activity, :sub_activities, :api_version, :target_api_version, :arch, :assets_dirs, :icon, :logs_components, :version_code, :version_name, :permissions, :features, - :services, :application_class, :manifest, :theme + :services, :application_class, :manifest, :theme, :support_libraries # Non-public. attr_accessor :vm_debug_logs, :libs @@ -235,6 +235,10 @@ module Motion; module Project; @target_api_version ||= latest_api_version end + def support_libraries + @support_libraries ||= [] + end + def versionized_build_dir sep = spec_mode ? 'Testing' : build_mode_name File.join(build_dir, sep + '-' + api_version)