From c45b992a8b433df617ab8e030d3e169b33553bf7 Mon Sep 17 00:00:00 2001 From: Nick Alexander Date: Mon, 24 Feb 2014 18:14:04 -0800 Subject: [PATCH] Bug 975152 - Part 0: Allow res=None in AndroidEclipseProjectData. r=bnicholson --- python/mozbuild/mozbuild/backend/android_eclipse.py | 6 ++++++ .../.not_an_android_resource | 5 +++++ 2 files changed, 11 insertions(+) create mode 100644 python/mozbuild/mozbuild/backend/templates/android_eclipse_empty_resource_directory/.not_an_android_resource diff --git a/python/mozbuild/mozbuild/backend/android_eclipse.py b/python/mozbuild/mozbuild/backend/android_eclipse.py index 315b848610e1ec..b46def33d8f1c3 100644 --- a/python/mozbuild/mozbuild/backend/android_eclipse.py +++ b/python/mozbuild/mozbuild/backend/android_eclipse.py @@ -122,6 +122,12 @@ def _manifest_for_project(self, srcdir, project): if project.res: manifest.add_symlink(mozpath.join(srcdir, project.res), 'res') + else: + # Eclipse expects a res directory no matter what, so we + # make an empty directory if the project doesn't specify. + res = os.path.abspath(mozpath.join(os.path.dirname(__file__), + 'templates', 'android_eclipse_empty_resource_directory')) + manifest.add_pattern_copy(res, '.**', 'res') if project.assets: manifest.add_symlink(mozpath.join(srcdir, project.assets), 'assets') diff --git a/python/mozbuild/mozbuild/backend/templates/android_eclipse_empty_resource_directory/.not_an_android_resource b/python/mozbuild/mozbuild/backend/templates/android_eclipse_empty_resource_directory/.not_an_android_resource new file mode 100644 index 00000000000000..8ffce06921b748 --- /dev/null +++ b/python/mozbuild/mozbuild/backend/templates/android_eclipse_empty_resource_directory/.not_an_android_resource @@ -0,0 +1,5 @@ +This file is named such that it is ignored by Android aapt. The file +itself ensures that the AndroidEclipse build backend can create an +empty res/ directory for projects explicitly specifying that it has no +resource directory. This is necessary because the Android Eclipse +plugin requires that each project have a res/ directory.