Add a build parameter controlling whether or not to build the example programs, defau...
authorAndrew Anderson <aanderso@tcd.ie>
Thu, 18 May 2017 12:50:38 +0000 (13:50 +0100)
committerAndrew Anderson <aanderso@tcd.ie>
Mon, 22 May 2017 16:04:02 +0000 (17:04 +0100)
SConstruct
sconscript

index 693ad68a367dc2ec4f1e246d91d7bfe008542fd9..862eec71e7f6a83188512e7fc1a35b1a71fc29c3 100644 (file)
@@ -29,6 +29,7 @@ vars.AddVariables(
     EnumVariable("arch", "Target Architecture", "armv7a", allowed_values=("armv7a", "arm64-v8a", "arm64-v8.2-a", "x86_32", "x86_64")),
     EnumVariable("os", "Target OS", "linux", allowed_values=("linux", "android", "bare_metal")),
     EnumVariable("build", "Build type", "cross_compile", allowed_values=("native", "cross_compile")),
+    BoolVariable("examples", "Build example programs", False),
     BoolVariable("Werror", "Enable/disable the -Werror compilation flag", True),
     BoolVariable("opencl", "Enable OpenCL support", True),
     BoolVariable("neon", "Enable Neon support", False),
index 6ec52f6f569e680fbf2d7da653d5fd53674f310e..d3e71cda1b709b61e9d18e75e9eb850f96f72487 100644 (file)
@@ -351,30 +351,32 @@ alias = env.Alias("arm_compute",objects)
 Default(alias)
 
 # Build examples
-test_helpers = env.Object("test_helpers/Utils.cpp")
 
-if env['opencl'] and env['neon']:
-    for file in Glob("examples/neoncl_*.cpp"):
-        example =  os.path.basename( os.path.splitext(str(file))[0])
-        prog = env.Program(example, ['examples/%s.cpp' % example, test_helpers], LIBS=example_libs+['OpenCL'])
-        alias = env.Alias(example, prog)
-        Depends(prog, objects)
-        Default( alias )
-
-if env['opencl']:
-    for file in Glob("examples/cl_*.cpp"):
-        example =  os.path.basename( os.path.splitext(str(file))[0])
-        prog = env.Program(example, ['examples/%s.cpp' % example, test_helpers], LIBS=example_libs+['OpenCL'])
-        alias = env.Alias(example, prog)
-        Depends(prog, objects)
-        Default( alias )
-
-if env['neon']:
-    for file in Glob("examples/neon_*.cpp"):
-        example =  os.path.basename( os.path.splitext(str(file))[0])
-        prog = env.Program(example, ['examples/%s.cpp' % example, test_helpers], LIBS=example_libs)
-        alias = env.Alias(example, prog)
-        Depends(prog, objects)
-        Default( alias )
+if env['examples']:
+    test_helpers = env.Object("test_helpers/Utils.cpp")
+
+    if env['opencl'] and env['neon']:
+        for file in Glob("examples/neoncl_*.cpp"):
+            example =  os.path.basename( os.path.splitext(str(file))[0])
+            prog = env.Program(example, ['examples/%s.cpp' % example, test_helpers], LIBS=example_libs+['OpenCL'])
+            alias = env.Alias(example, prog)
+            Depends(prog, objects)
+            Default( alias )
+
+    if env['opencl']:
+        for file in Glob("examples/cl_*.cpp"):
+            example =  os.path.basename( os.path.splitext(str(file))[0])
+            prog = env.Program(example, ['examples/%s.cpp' % example, test_helpers], LIBS=example_libs+['OpenCL'])
+            alias = env.Alias(example, prog)
+            Depends(prog, objects)
+            Default( alias )
+
+    if env['neon']:
+        for file in Glob("examples/neon_*.cpp"):
+            example =  os.path.basename( os.path.splitext(str(file))[0])
+            prog = env.Program(example, ['examples/%s.cpp' % example, test_helpers], LIBS=example_libs)
+            alias = env.Alias(example, prog)
+            Depends(prog, objects)
+            Default( alias )
 
 Export('env')