arm_compute v18.02
Change-Id: I7207aa488e5470f235f39b6c188b4678dc38d1a6
diff --git a/SConscript b/SConscript
index cd1a049..5e05c64 100644
--- a/SConscript
+++ b/SConscript
@@ -24,8 +24,8 @@
import re
import subprocess
-VERSION = "v18.01"
-SONAME_VERSION="7.0.0"
+VERSION = "v18.02"
+SONAME_VERSION="9.0.0"
Import('env')
Import('vars')
@@ -123,12 +123,34 @@
with open(target[0].get_path(), "w") as fd:
fd.write(build_info)
-
arm_compute_env = env.Clone()
-# Don't allow undefined references in the libraries:
-arm_compute_env.Append(LINKFLAGS=['-Wl,--no-undefined','-Wl,--no-allow-shlib-undefined'])
+# Generate embed files
generate_embed = [ arm_compute_env.Command("src/core/arm_compute_version.embed", "", action=create_version_file) ]
+if env['opencl'] and env['embed_kernels']:
+ cl_files = Glob('src/core/CL/cl_kernels/*.cl')
+ cl_files += Glob('src/core/CL/cl_kernels/*.h')
+
+ embed_files = [ f.get_path()+"embed" for f in cl_files ]
+ arm_compute_env.Append(CPPPATH =[Dir("./src/core/CL/").path] )
+
+ generate_embed.append(arm_compute_env.Command(embed_files, cl_files, action=resolve_includes))
+
+if env['gles_compute'] and env['embed_kernels']:
+ cs_files = Glob('src/core/GLES_COMPUTE/cs_shaders/*.cs')
+ cs_files += Glob('src/core/GLES_COMPUTE/cs_shaders/*.h')
+
+ embed_files = [ f.get_path()+"embed" for f in cs_files ]
+ arm_compute_env.Append(CPPPATH =[Dir("./src/core/GLES_COMPUTE/").path] )
+
+ generate_embed.append(arm_compute_env.Command(embed_files, cs_files, action=resolve_includes))
+
+Default(generate_embed)
+if env["build"] == "embed_only":
+ Return()
+
+# Don't allow undefined references in the libraries:
+arm_compute_env.Append(LINKFLAGS=['-Wl,--no-undefined'])
arm_compute_env.Append(CPPPATH =[Dir("./src/core/").path] )
if env["os"] not in ["android", "bare_metal"]:
@@ -161,24 +183,14 @@
runtime_files += Glob('src/runtime/CL/*.cpp')
runtime_files += Glob('src/runtime/CL/functions/*.cpp')
- # Generate embed files
- if env['embed_kernels']:
- cl_files = Glob('src/core/CL/cl_kernels/*.cl')
- cl_files += Glob('src/core/CL/cl_kernels/*.h')
-
- embed_files = [ f.get_path()+"embed" for f in cl_files ]
- arm_compute_env.Append(CPPPATH =[Dir("./src/core/CL/").path] )
-
- generate_embed.append(arm_compute_env.Command(embed_files, cl_files, action=resolve_includes))
-
if env['neon']:
core_files += Glob('src/core/NEON/*.cpp')
core_files += Glob('src/core/NEON/kernels/*.cpp')
# build winograd sources for either v7a / v8a
- core_files += Glob('src/core/NEON/kernels/winograd/*.cpp')
- core_files += Glob('src/core/NEON/kernels/winograd/transforms/*.cpp')
- arm_compute_env.Append(CPPPATH = ["arm_compute/core/NEON/kernels/winograd/"])
+ core_files += Glob('src/core/NEON/kernels/convolution/*/*.cpp')
+ core_files += Glob('src/core/NEON/kernels/convolution/winograd/*/*.cpp')
+ arm_compute_env.Append(CPPPATH = ["arm_compute/core/NEON/kernels/winograd/", "arm_compute/core/NEON/kernels/assembly/"])
if env['arch'] == "armv7a":
core_files += Glob('src/core/NEON/kernels/arm32/*.cpp')
@@ -199,16 +211,6 @@
runtime_files += Glob('src/runtime/GLES_COMPUTE/*.cpp')
runtime_files += Glob('src/runtime/GLES_COMPUTE/functions/*.cpp')
- # Generate embed files
- if env['embed_kernels']:
- cs_files = Glob('src/core/GLES_COMPUTE/cs_shaders/*.cs')
- cs_files += Glob('src/core/GLES_COMPUTE/cs_shaders/*.h')
-
- embed_files = [ f.get_path()+"embed" for f in cs_files ]
- arm_compute_env.Append(CPPPATH =[Dir("./src/core/GLES_COMPUTE/").path] )
-
- generate_embed.append(arm_compute_env.Command(embed_files, cs_files, action=resolve_includes))
-
arm_compute_core_a = build_library('arm_compute_core-static', core_files, static=True)
Export('arm_compute_core_a')
@@ -255,8 +257,6 @@
Default(alias)
-Default(generate_embed)
-
if env['standalone']:
Depends([alias,arm_compute_core_a], generate_embed)
else: