chiark / gitweb /
Centralise handling of default gradle flavours
authorDaniel Martí <mvdan@mvdan.cc>
Sat, 13 Sep 2014 11:04:24 +0000 (13:04 +0200)
committerDaniel Martí <mvdan@mvdan.cc>
Sat, 13 Sep 2014 11:04:24 +0000 (13:04 +0200)
fdroidserver/build.py
fdroidserver/checkupdates.py
fdroidserver/common.py
fdroidserver/metadata.py

index 836835de7e2bfaa8bc563553a986f1ae9cd20b5b..bee4280b3d12edbbf3142849f58982ebd0793fd3 100644 (file)
@@ -682,9 +682,6 @@ def build_local(app, thisbuild, vcs, build_dir, output_dir, srclib_dir, extlib_d
         logging.info("Building Gradle project...")
         flavours = thisbuild['gradle']
 
-        if len(flavours) == 1 and flavours[0] in ['main', 'yes', '']:
-            flavours[0] = ''
-
         commands = [config['gradle']]
         if thisbuild['preassemble']:
             commands += thisbuild['preassemble'].split()
index 9bfd1151320dc16a80e5e59141388938c58b5ed4..2f92b51ffd58c4d9e7cbb23a1231f807822b0f56 100644 (file)
@@ -358,8 +358,6 @@ def fetch_autoname(app, tag):
             app_dir = os.path.join(app_dir, app['builds'][-1]['subdir'])
         if app['builds'][-1]['gradle']:
             flavours = app['builds'][-1]['gradle']
-    if len(flavours) == 1 and flavours[0] in ['main', 'yes', '']:
-        flavours = None
 
     logging.debug("...fetch auto name from " + app_dir)
     new_name = common.fetch_real_name(app_dir, flavours)
index 6e6dfbc0d1879900d04e8c61becde629d7c292d5..b18b0ef12d239cee1c1a0feef7bbba7c0ba5b809 100644 (file)
@@ -833,10 +833,9 @@ def manifest_paths(app_dir, flavours):
          os.path.join(app_dir, 'src', 'AndroidManifest.xml'),
          os.path.join(app_dir, 'build.gradle')]
 
-    if flavours:
-        for flavour in flavours:
-            possible_manifests.append(
-                os.path.join(app_dir, 'src', flavour, 'AndroidManifest.xml'))
+    for flavour in flavours:
+        possible_manifests.append(
+            os.path.join(app_dir, 'src', flavour, 'AndroidManifest.xml'))
 
     return [path for path in possible_manifests if os.path.isfile(path)]
 
@@ -1210,11 +1209,9 @@ def prepare_source(vcs, app, build, build_dir, srclib_dir, extlib_dir, onserver=
         f.write(props)
         f.close()
 
-    flavours = None
+    flavours = []
     if build['type'] == 'gradle':
         flavours = build['gradle']
-        if len(flavours) == 1 and flavours[0] in ['main', 'yes', '']:
-            flavours = None
 
         version_regex = re.compile(r".*'com\.android\.tools\.build:gradle:([^\.]+\.[^\.]+).*'.*")
         gradlepluginver = None
index 0b0106d09f62eea91b1a11ba2488e7d8be8ec145..7ac589dfd2794be2e0b5763c1a82dc7308b88e7e 100644 (file)
@@ -601,7 +601,11 @@ def parse_metadata(metafile):
         t = flagtype(pk)
         if t == 'list':
             # Port legacy ';' separators
-            thisbuild[pk] = [v.strip() for v in pv.replace(';', ',').split(',')]
+            pv = [v.strip() for v in pv.replace(';', ',').split(',')]
+            if pk == 'gradle':
+                if len(pv) == 1 and pv[0] in ['main', 'yes', '']:
+                    pv = []
+            thisbuild[pk] = pv
         elif t == 'string' or t == 'script':
             thisbuild[pk] = pv
         elif t == 'bool':