diff options
author | Jason Zaman <perfinion@gentoo.org> | 2022-11-19 10:11:32 -0800 |
---|---|---|
committer | Jason Zaman <perfinion@gentoo.org> | 2022-11-19 10:23:23 -0800 |
commit | 5c4cdb22be1eca00e340facdaec28f65b551076f (patch) | |
tree | cce5a41439b448d386c1e06b6113cd03c8ade2f5 /sci-libs | |
parent | dev-ml/gen: drop seq dependency on dune file (diff) | |
download | gentoo-5c4cdb22be1eca00e340facdaec28f65b551076f.tar.gz gentoo-5c4cdb22be1eca00e340facdaec28f65b551076f.tar.bz2 gentoo-5c4cdb22be1eca00e340facdaec28f65b551076f.zip |
sci-libs/keras: drop 2.8.0, 2.9.0
Signed-off-by: Jason Zaman <perfinion@gentoo.org>
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/keras/Manifest | 2 | ||||
-rw-r--r-- | sci-libs/keras/files/keras-2.7.0-0001-bazel-Use-system-protobuf.patch | 316 | ||||
-rw-r--r-- | sci-libs/keras/files/keras-2.9.0-0001-bazel-Use-system-protobuf.patch | 331 | ||||
-rw-r--r-- | sci-libs/keras/keras-2.8.0.ebuild | 87 | ||||
-rw-r--r-- | sci-libs/keras/keras-2.9.0.ebuild | 85 |
5 files changed, 0 insertions, 821 deletions
diff --git a/sci-libs/keras/Manifest b/sci-libs/keras/Manifest index c8a8659e2e4b..3ac4fb7500a7 100644 --- a/sci-libs/keras/Manifest +++ b/sci-libs/keras/Manifest @@ -1,5 +1,3 @@ DIST bazelbuild-rules_cc-b1c40e1de81913a3c40e5948f78719c28152486d.zip 201360 BLAKE2B 0173a8edb17f344b18e42026e2f8a62a1909d4694ab0be83562b6437a3f1ef38889f069269ddd2308b41062e5f375f791be0d2631a8e52ede668203779813b56 SHA512 2ba1dc316d88947c1d17ec67154c052700e3571b8d03370a9f204cf9fe94a1bd58f93a2c4a3c0b02233ee3250053a4c30a4133b5b38745858c1d04be8c9d973f DIST bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip 9422 BLAKE2B bbc45c97551ee8126335b611ffca6574dac843d4db9b3221b10d26487f8eecfe38ba0cd67a4039a3ad921c25fea6294c43e4f4e7a57a060a30791acd6c4f9d39 SHA512 ba06242feb711e7fb6e821fd9ac029248b4f3e466fb1acf971d0db8196f3efe4d114ef137acbe4913073f8cbe8ccab4d47d8bafa21b867b2d6a6d57f5a647f0c DIST keras-2.10.0.tar.gz 2250425 BLAKE2B eb05537739cdc81e279b5c400e2e2b77d46f4085e8530fef565bde12414ddccedb44c0b13265106a3353e67c367106e1d341412dc25b32e2221f144a31d76079 SHA512 8682110495a045c2ebc61f31a98d646b88fd9608d5169be78701cf528457ff0d2e39669d885854c14c1e6bebb380b14968957f2a8a34a8a023f8860efc7aeecd -DIST keras-2.8.0.tar.gz 2001168 BLAKE2B 64e756da102369bd41b176245f7f8184b2376b6fb714485627e30107af552035931c9fcff18d82def5f4e1b83f2eae2fa3d0c18b030986f8d3a53dffbdbb2963 SHA512 a70ae1409761211f3b59d358df4d5abf6bb76b915f5dde90ada5a867aef2831581836d38876bd2e962f3c345f59373bf76a7c21247cef8aeaec45ba1301f787b -DIST keras-2.9.0.tar.gz 2142884 BLAKE2B 9d90ad998ef7215f9a3ab0f0ac9d035f81023f7049e5c73823a0aa8561ead2f697ff762c225f668f3d9fe376d69a2bfbdf8b137128c915a711cee53d809093d6 SHA512 779828aff9aa31970e7f68b32423e47b81f47d2284d9e9734428c3bc3789e6b0e9ef151315e1cae666b14b1cdc387828ddaf520811250f9ad4fa73cf5c98781d diff --git a/sci-libs/keras/files/keras-2.7.0-0001-bazel-Use-system-protobuf.patch b/sci-libs/keras/files/keras-2.7.0-0001-bazel-Use-system-protobuf.patch deleted file mode 100644 index 60736ebb16e9..000000000000 --- a/sci-libs/keras/files/keras-2.7.0-0001-bazel-Use-system-protobuf.patch +++ /dev/null @@ -1,316 +0,0 @@ -From 71f50c026a4b7658596ab4209cc63520710f02b5 Mon Sep 17 00:00:00 2001 -From: Jason Zaman <jason@perfinion.com> -Date: Sun, 14 Nov 2021 17:59:39 -0800 -Subject: [PATCH] bazel: Use system protobuf - ---- - WORKSPACE | 38 ------- - keras/protobuf/BUILD | 2 +- - third_party/BUILD | 8 +- - third_party/protobuf.bzl | 216 +++++++++++++++++++++++++++++++++++++++ - 4 files changed, 224 insertions(+), 40 deletions(-) - create mode 100644 third_party/protobuf.bzl - -diff --git a/WORKSPACE b/WORKSPACE -index 2c03ebba..61282aea 100644 ---- a/WORKSPACE -+++ b/WORKSPACE -@@ -1,39 +1 @@ - workspace(name = "org_keras") -- --load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") -- --# Needed by protobuf --load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") --http_archive( -- name = "bazel_skylib", -- url = "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.1/bazel-skylib-1.0.1.tar.gz", -- sha256 = "f1c8360c01fcf276778d3519394805dc2a71a64274a3a0908bc9edff7b5aebc8", --) --load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") --bazel_skylib_workspace() -- --# Needed by protobuf --http_archive( -- name = "six_archive", -- build_file = "//third_party:six.BUILD", -- sha256 = "d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73", -- strip_prefix = "six-1.12.0", -- urls = [ -- "http://mirror.bazel.build/pypi.python.org/packages/source/s/six/six-1.12.0.tar.gz", -- "https://pypi.python.org/packages/source/s/six/six-1.12.0.tar.gz", # 2018-12-10 -- ], --) -- --bind( -- name = "six", -- actual = "@six_archive//:six", --) -- --http_archive( -- name = "com_google_protobuf", -- sha256 = "1fbf1c2962af287607232b2eddeaec9b4f4a7a6f5934e1a9276e9af76952f7e0", -- strip_prefix = "protobuf-3.9.2", -- urls = ["https://github.com/protocolbuffers/protobuf/archive/v3.9.2.tar.gz"], --) --load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") --protobuf_deps() -diff --git a/keras/protobuf/BUILD b/keras/protobuf/BUILD -index 871d9f6b..9df2b8ce 100644 ---- a/keras/protobuf/BUILD -+++ b/keras/protobuf/BUILD -@@ -1,7 +1,7 @@ - # Description: - # Contains Keras protobufs - --load("@com_google_protobuf//:protobuf.bzl", "py_proto_library") -+load("//third_party:protobuf.bzl", "py_proto_library") - - package( - default_visibility = [ -diff --git a/third_party/BUILD b/third_party/BUILD -index 9be54076..9399232f 100644 ---- a/third_party/BUILD -+++ b/third_party/BUILD -@@ -1,4 +1,5 @@ - package( -+ default_visibility = ["//visibility:public"], - licenses = ["notice"], # Apache 2.0 - ) - -@@ -7,4 +8,9 @@ exports_files([ - "six.BUILD", - ]) - --package(default_visibility = ["//visibility:public"]) -+genrule( -+ name = "protoc", -+ outs = ["protoc.bin"], -+ cmd = "ln -s $$(which protoc) $@", -+ executable = 1, -+) -diff --git a/third_party/protobuf.bzl b/third_party/protobuf.bzl -new file mode 100644 -index 00000000..3a7ef0a2 ---- /dev/null -+++ b/third_party/protobuf.bzl -@@ -0,0 +1,216 @@ -+def _GetPath(ctx, path): -+ if ctx.label.workspace_root: -+ return ctx.label.workspace_root + "/" + path -+ else: -+ return path -+ -+def _IsNewExternal(ctx): -+ # Bazel 0.4.4 and older have genfiles paths that look like: -+ # bazel-out/local-fastbuild/genfiles/external/repo/foo -+ # After the exec root rearrangement, they look like: -+ # ../repo/bazel-out/local-fastbuild/genfiles/foo -+ return ctx.label.workspace_root.startswith("../") -+ -+def _GenDir(ctx): -+ if _IsNewExternal(ctx): -+ # We are using the fact that Bazel 0.4.4+ provides repository-relative paths -+ # for ctx.genfiles_dir. -+ return ctx.genfiles_dir.path + ( -+ "/" + ctx.attr.includes[0] if ctx.attr.includes and ctx.attr.includes[0] else "" -+ ) -+ -+ # This means that we're either in the old version OR the new version in the local repo. -+ # Either way, appending the source path to the genfiles dir works. -+ return ctx.var["GENDIR"] + "/" + _SourceDir(ctx) -+ -+def _SourceDir(ctx): -+ if not ctx.attr.includes: -+ return ctx.label.workspace_root -+ if not ctx.attr.includes[0]: -+ return _GetPath(ctx, ctx.label.package) -+ if not ctx.label.package: -+ return _GetPath(ctx, ctx.attr.includes[0]) -+ return _GetPath(ctx, ctx.label.package + "/" + ctx.attr.includes[0]) -+ -+def _PyOuts(srcs, use_grpc_plugin = False): -+ ret = [s[:-len(".proto")] + "_pb2.py" for s in srcs] -+ if use_grpc_plugin: -+ ret += [s[:-len(".proto")] + "_pb2_grpc.py" for s in srcs] -+ return ret -+ -+def _proto_gen_impl(ctx): -+ """General implementation for generating protos""" -+ srcs = ctx.files.srcs -+ deps = [] -+ deps += ctx.files.srcs -+ source_dir = _SourceDir(ctx) -+ gen_dir = _GenDir(ctx) -+ if source_dir: -+ import_flags = ["-I" + source_dir, "-I" + gen_dir] -+ else: -+ import_flags = ["-I."] -+ -+ for dep in ctx.attr.deps: -+ import_flags += dep.proto.import_flags -+ deps += dep.proto.deps -+ import_flags = depset(import_flags).to_list() -+ deps = depset(deps).to_list() -+ -+ args = [] -+ if ctx.attr.gen_cc: -+ args += ["--cpp_out=" + gen_dir] -+ if ctx.attr.gen_py: -+ args += ["--python_out=" + gen_dir] -+ -+ inputs = srcs + deps -+ tools = [ctx.executable.protoc] -+ if ctx.executable.plugin: -+ plugin = ctx.executable.plugin -+ lang = ctx.attr.plugin_language -+ if not lang and plugin.basename.startswith("protoc-gen-"): -+ lang = plugin.basename[len("protoc-gen-"):] -+ if not lang: -+ fail("cannot infer the target language of plugin", "plugin_language") -+ -+ outdir = gen_dir -+ if ctx.attr.plugin_options: -+ outdir = ",".join(ctx.attr.plugin_options) + ":" + outdir -+ args += ["--plugin=protoc-gen-%s=%s" % (lang, plugin.path)] -+ args += ["--%s_out=%s" % (lang, outdir)] -+ tools.append(plugin) -+ -+ if args: -+ ctx.actions.run( -+ inputs = inputs, -+ outputs = ctx.outputs.outs, -+ arguments = args + import_flags + [s.path for s in srcs], -+ executable = ctx.executable.protoc, -+ mnemonic = "ProtoCompile", -+ tools = tools, -+ use_default_shell_env = True, -+ ) -+ -+ return struct( -+ proto = struct( -+ srcs = srcs, -+ import_flags = import_flags, -+ deps = deps, -+ ), -+ ) -+ -+proto_gen = rule( -+ attrs = { -+ "srcs": attr.label_list(allow_files = True), -+ "deps": attr.label_list(providers = ["proto"]), -+ "includes": attr.string_list(), -+ "protoc": attr.label( -+ cfg = "host", -+ executable = True, -+ allow_single_file = True, -+ mandatory = True, -+ ), -+ "plugin": attr.label( -+ cfg = "host", -+ allow_files = True, -+ executable = True, -+ ), -+ "plugin_language": attr.string(), -+ "plugin_options": attr.string_list(), -+ "gen_cc": attr.bool(), -+ "gen_py": attr.bool(), -+ "outs": attr.output_list(), -+ }, -+ output_to_genfiles = True, -+ implementation = _proto_gen_impl, -+) -+"""Generates codes from Protocol Buffers definitions. -+ -+This rule helps you to implement Skylark macros specific to the target -+language. You should prefer more specific `cc_proto_library `, -+`py_proto_library` and others unless you are adding such wrapper macros. -+ -+Args: -+ srcs: Protocol Buffers definition files (.proto) to run the protocol compiler -+ against. -+ deps: a list of dependency labels; must be other proto libraries. -+ includes: a list of include paths to .proto files. -+ protoc: the label of the protocol compiler to generate the sources. -+ plugin: the label of the protocol compiler plugin to be passed to the protocol -+ compiler. -+ plugin_language: the language of the generated sources -+ plugin_options: a list of options to be passed to the plugin -+ gen_cc: generates C++ sources in addition to the ones from the plugin. -+ gen_py: generates Python sources in addition to the ones from the plugin. -+ outs: a list of labels of the expected outputs from the protocol compiler. -+""" -+ -+def py_proto_library( -+ name, -+ srcs = [], -+ deps = [], -+ py_libs = [], -+ py_extra_srcs = [], -+ include = None, -+ default_runtime = None, -+ protoc = "//third_party:protoc", -+ use_grpc_plugin = False, -+ **kwargs): -+ """Bazel rule to create a Python protobuf library from proto source files -+ -+ NOTE: the rule is only an internal workaround to generate protos. The -+ interface may change and the rule may be removed when bazel has introduced -+ the native rule. -+ -+ Args: -+ name: the name of the py_proto_library. -+ srcs: the .proto files of the py_proto_library. -+ deps: a list of dependency labels; must be py_proto_library. -+ py_libs: a list of other py_library targets depended by the generated -+ py_library. -+ py_extra_srcs: extra source files that will be added to the output -+ py_library. This attribute is used for internal bootstrapping. -+ include: a string indicating the include path of the .proto files. -+ default_runtime: the implicitly default runtime which will be depended on by -+ the generated py_library target. -+ protoc: the label of the protocol compiler to generate the sources. -+ use_grpc_plugin: a flag to indicate whether to call the Python C++ plugin -+ when processing the proto files. -+ **kwargs: other keyword arguments that are passed to py_library. -+ -+ """ -+ outs = _PyOuts(srcs, use_grpc_plugin) -+ -+ includes = [] -+ if include != None: -+ includes = [include] -+ -+ grpc_python_plugin = None -+ if use_grpc_plugin: -+ grpc_python_plugin = "//external:grpc_python_plugin" -+ # Note: Generated grpc code depends on Python grpc module. This dependency -+ # is not explicitly listed in py_libs. Instead, host system is assumed to -+ # have grpc installed. -+ -+ proto_gen( -+ name = name + "_genproto", -+ srcs = srcs, -+ deps = [s + "_genproto" for s in deps], -+ includes = includes, -+ protoc = protoc, -+ gen_py = 1, -+ outs = outs, -+ visibility = ["//visibility:public"], -+ plugin = grpc_python_plugin, -+ plugin_language = "grpc", -+ ) -+ -+ if default_runtime and not default_runtime in py_libs + deps: -+ py_libs = py_libs + [default_runtime] -+ -+ native.py_library( -+ name = name, -+ srcs = outs + py_extra_srcs, -+ deps = py_libs + deps, -+ imports = includes, -+ **kwargs -+ ) --- -2.32.0 - diff --git a/sci-libs/keras/files/keras-2.9.0-0001-bazel-Use-system-protobuf.patch b/sci-libs/keras/files/keras-2.9.0-0001-bazel-Use-system-protobuf.patch deleted file mode 100644 index b571a8b994bc..000000000000 --- a/sci-libs/keras/files/keras-2.9.0-0001-bazel-Use-system-protobuf.patch +++ /dev/null @@ -1,331 +0,0 @@ -From c79e1177ff9f2e0de9070c604a812ff768c2c8c8 Mon Sep 17 00:00:00 2001 -From: Jason Zaman <jason@perfinion.com> -Date: Sun, 14 Nov 2021 17:59:39 -0800 -Subject: [PATCH] bazel: Use system protobuf - ---- - WORKSPACE | 53 ---------- - keras/protobuf/BUILD | 2 +- - third_party/BUILD | 8 +- - third_party/protobuf.bzl | 216 +++++++++++++++++++++++++++++++++++++++ - 4 files changed, 224 insertions(+), 55 deletions(-) - create mode 100644 third_party/protobuf.bzl - -diff --git a/WORKSPACE b/WORKSPACE -index 39f478f8..61282aea 100644 ---- a/WORKSPACE -+++ b/WORKSPACE -@@ -1,54 +1 @@ - workspace(name = "org_keras") -- --load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") -- --# Needed by protobuf --load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") --http_archive( -- name = "bazel_skylib", -- url = "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.1/bazel-skylib-1.0.1.tar.gz", -- sha256 = "f1c8360c01fcf276778d3519394805dc2a71a64274a3a0908bc9edff7b5aebc8", --) --load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") --bazel_skylib_workspace() -- --# Needed by protobuf --http_archive( -- name = "six_archive", -- build_file = "//third_party:six.BUILD", -- sha256 = "d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73", -- strip_prefix = "six-1.12.0", -- urls = [ -- "http://mirror.bazel.build/pypi.python.org/packages/source/s/six/six-1.12.0.tar.gz", -- "https://pypi.python.org/packages/source/s/six/six-1.12.0.tar.gz", # 2018-12-10 -- ], --) -- --bind( -- name = "six", -- actual = "@six_archive//:six", --) -- --http_archive( -- name = "com_google_protobuf", -- sha256 = "1fbf1c2962af287607232b2eddeaec9b4f4a7a6f5934e1a9276e9af76952f7e0", -- strip_prefix = "protobuf-3.9.2", -- urls = ["https://github.com/protocolbuffers/protobuf/archive/v3.9.2.tar.gz"], --) -- --# ZLIB --# Need by com_google_protobuf. Note that the original URL from zlib side is not --# available for now. We need to use bazel mirror as a backup. --http_archive( -- name = "zlib", -- build_file = "@com_google_protobuf//:third_party/zlib.BUILD", -- sha256 = "c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1", -- strip_prefix = "zlib-1.2.11", -- urls = [ -- "https://mirror.bazel.build/zlib.net/zlib-1.2.11.tar.gz", -- "https://zlib.net/zlib-1.2.11.tar.gz", -- ], --) -- --load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") --protobuf_deps() -diff --git a/keras/protobuf/BUILD b/keras/protobuf/BUILD -index 413dcb74..80133c06 100644 ---- a/keras/protobuf/BUILD -+++ b/keras/protobuf/BUILD -@@ -1,7 +1,7 @@ - # Description: - # Contains Keras protobufs - --load("@com_google_protobuf//:protobuf.bzl", "py_proto_library") -+load("//third_party:protobuf.bzl", "py_proto_library") - - package( - default_visibility = [ -diff --git a/third_party/BUILD b/third_party/BUILD -index 9be54076..9399232f 100644 ---- a/third_party/BUILD -+++ b/third_party/BUILD -@@ -1,4 +1,5 @@ - package( -+ default_visibility = ["//visibility:public"], - licenses = ["notice"], # Apache 2.0 - ) - -@@ -7,4 +8,9 @@ exports_files([ - "six.BUILD", - ]) - --package(default_visibility = ["//visibility:public"]) -+genrule( -+ name = "protoc", -+ outs = ["protoc.bin"], -+ cmd = "ln -s $$(which protoc) $@", -+ executable = 1, -+) -diff --git a/third_party/protobuf.bzl b/third_party/protobuf.bzl -new file mode 100644 -index 00000000..3a7ef0a2 ---- /dev/null -+++ b/third_party/protobuf.bzl -@@ -0,0 +1,216 @@ -+def _GetPath(ctx, path): -+ if ctx.label.workspace_root: -+ return ctx.label.workspace_root + "/" + path -+ else: -+ return path -+ -+def _IsNewExternal(ctx): -+ # Bazel 0.4.4 and older have genfiles paths that look like: -+ # bazel-out/local-fastbuild/genfiles/external/repo/foo -+ # After the exec root rearrangement, they look like: -+ # ../repo/bazel-out/local-fastbuild/genfiles/foo -+ return ctx.label.workspace_root.startswith("../") -+ -+def _GenDir(ctx): -+ if _IsNewExternal(ctx): -+ # We are using the fact that Bazel 0.4.4+ provides repository-relative paths -+ # for ctx.genfiles_dir. -+ return ctx.genfiles_dir.path + ( -+ "/" + ctx.attr.includes[0] if ctx.attr.includes and ctx.attr.includes[0] else "" -+ ) -+ -+ # This means that we're either in the old version OR the new version in the local repo. -+ # Either way, appending the source path to the genfiles dir works. -+ return ctx.var["GENDIR"] + "/" + _SourceDir(ctx) -+ -+def _SourceDir(ctx): -+ if not ctx.attr.includes: -+ return ctx.label.workspace_root -+ if not ctx.attr.includes[0]: -+ return _GetPath(ctx, ctx.label.package) -+ if not ctx.label.package: -+ return _GetPath(ctx, ctx.attr.includes[0]) -+ return _GetPath(ctx, ctx.label.package + "/" + ctx.attr.includes[0]) -+ -+def _PyOuts(srcs, use_grpc_plugin = False): -+ ret = [s[:-len(".proto")] + "_pb2.py" for s in srcs] -+ if use_grpc_plugin: -+ ret += [s[:-len(".proto")] + "_pb2_grpc.py" for s in srcs] -+ return ret -+ -+def _proto_gen_impl(ctx): -+ """General implementation for generating protos""" -+ srcs = ctx.files.srcs -+ deps = [] -+ deps += ctx.files.srcs -+ source_dir = _SourceDir(ctx) -+ gen_dir = _GenDir(ctx) -+ if source_dir: -+ import_flags = ["-I" + source_dir, "-I" + gen_dir] -+ else: -+ import_flags = ["-I."] -+ -+ for dep in ctx.attr.deps: -+ import_flags += dep.proto.import_flags -+ deps += dep.proto.deps -+ import_flags = depset(import_flags).to_list() -+ deps = depset(deps).to_list() -+ -+ args = [] -+ if ctx.attr.gen_cc: -+ args += ["--cpp_out=" + gen_dir] -+ if ctx.attr.gen_py: -+ args += ["--python_out=" + gen_dir] -+ -+ inputs = srcs + deps -+ tools = [ctx.executable.protoc] -+ if ctx.executable.plugin: -+ plugin = ctx.executable.plugin -+ lang = ctx.attr.plugin_language -+ if not lang and plugin.basename.startswith("protoc-gen-"): -+ lang = plugin.basename[len("protoc-gen-"):] -+ if not lang: -+ fail("cannot infer the target language of plugin", "plugin_language") -+ -+ outdir = gen_dir -+ if ctx.attr.plugin_options: -+ outdir = ",".join(ctx.attr.plugin_options) + ":" + outdir -+ args += ["--plugin=protoc-gen-%s=%s" % (lang, plugin.path)] -+ args += ["--%s_out=%s" % (lang, outdir)] -+ tools.append(plugin) -+ -+ if args: -+ ctx.actions.run( -+ inputs = inputs, -+ outputs = ctx.outputs.outs, -+ arguments = args + import_flags + [s.path for s in srcs], -+ executable = ctx.executable.protoc, -+ mnemonic = "ProtoCompile", -+ tools = tools, -+ use_default_shell_env = True, -+ ) -+ -+ return struct( -+ proto = struct( -+ srcs = srcs, -+ import_flags = import_flags, -+ deps = deps, -+ ), -+ ) -+ -+proto_gen = rule( -+ attrs = { -+ "srcs": attr.label_list(allow_files = True), -+ "deps": attr.label_list(providers = ["proto"]), -+ "includes": attr.string_list(), -+ "protoc": attr.label( -+ cfg = "host", -+ executable = True, -+ allow_single_file = True, -+ mandatory = True, -+ ), -+ "plugin": attr.label( -+ cfg = "host", -+ allow_files = True, -+ executable = True, -+ ), -+ "plugin_language": attr.string(), -+ "plugin_options": attr.string_list(), -+ "gen_cc": attr.bool(), -+ "gen_py": attr.bool(), -+ "outs": attr.output_list(), -+ }, -+ output_to_genfiles = True, -+ implementation = _proto_gen_impl, -+) -+"""Generates codes from Protocol Buffers definitions. -+ -+This rule helps you to implement Skylark macros specific to the target -+language. You should prefer more specific `cc_proto_library `, -+`py_proto_library` and others unless you are adding such wrapper macros. -+ -+Args: -+ srcs: Protocol Buffers definition files (.proto) to run the protocol compiler -+ against. -+ deps: a list of dependency labels; must be other proto libraries. -+ includes: a list of include paths to .proto files. -+ protoc: the label of the protocol compiler to generate the sources. -+ plugin: the label of the protocol compiler plugin to be passed to the protocol -+ compiler. -+ plugin_language: the language of the generated sources -+ plugin_options: a list of options to be passed to the plugin -+ gen_cc: generates C++ sources in addition to the ones from the plugin. -+ gen_py: generates Python sources in addition to the ones from the plugin. -+ outs: a list of labels of the expected outputs from the protocol compiler. -+""" -+ -+def py_proto_library( -+ name, -+ srcs = [], -+ deps = [], -+ py_libs = [], -+ py_extra_srcs = [], -+ include = None, -+ default_runtime = None, -+ protoc = "//third_party:protoc", -+ use_grpc_plugin = False, -+ **kwargs): -+ """Bazel rule to create a Python protobuf library from proto source files -+ -+ NOTE: the rule is only an internal workaround to generate protos. The -+ interface may change and the rule may be removed when bazel has introduced -+ the native rule. -+ -+ Args: -+ name: the name of the py_proto_library. -+ srcs: the .proto files of the py_proto_library. -+ deps: a list of dependency labels; must be py_proto_library. -+ py_libs: a list of other py_library targets depended by the generated -+ py_library. -+ py_extra_srcs: extra source files that will be added to the output -+ py_library. This attribute is used for internal bootstrapping. -+ include: a string indicating the include path of the .proto files. -+ default_runtime: the implicitly default runtime which will be depended on by -+ the generated py_library target. -+ protoc: the label of the protocol compiler to generate the sources. -+ use_grpc_plugin: a flag to indicate whether to call the Python C++ plugin -+ when processing the proto files. -+ **kwargs: other keyword arguments that are passed to py_library. -+ -+ """ -+ outs = _PyOuts(srcs, use_grpc_plugin) -+ -+ includes = [] -+ if include != None: -+ includes = [include] -+ -+ grpc_python_plugin = None -+ if use_grpc_plugin: -+ grpc_python_plugin = "//external:grpc_python_plugin" -+ # Note: Generated grpc code depends on Python grpc module. This dependency -+ # is not explicitly listed in py_libs. Instead, host system is assumed to -+ # have grpc installed. -+ -+ proto_gen( -+ name = name + "_genproto", -+ srcs = srcs, -+ deps = [s + "_genproto" for s in deps], -+ includes = includes, -+ protoc = protoc, -+ gen_py = 1, -+ outs = outs, -+ visibility = ["//visibility:public"], -+ plugin = grpc_python_plugin, -+ plugin_language = "grpc", -+ ) -+ -+ if default_runtime and not default_runtime in py_libs + deps: -+ py_libs = py_libs + [default_runtime] -+ -+ native.py_library( -+ name = name, -+ srcs = outs + py_extra_srcs, -+ deps = py_libs + deps, -+ imports = includes, -+ **kwargs -+ ) --- -2.35.1 - diff --git a/sci-libs/keras/keras-2.8.0.ebuild b/sci-libs/keras/keras-2.8.0.ebuild deleted file mode 100644 index ad31dfa47c78..000000000000 --- a/sci-libs/keras/keras-2.8.0.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8,9} ) -inherit bazel distutils-r1 - -DESCRIPTION="Deep Learning for humans" -HOMEPAGE="https://keras.io/" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64" -IUSE="" - -bazel_external_uris=" - https://github.com/bazelbuild/rules_cc/archive/b1c40e1de81913a3c40e5948f78719c28152486d.zip -> bazelbuild-rules_cc-b1c40e1de81913a3c40e5948f78719c28152486d.zip - https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip" - -SRC_URI="https://github.com/keras-team/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz - ${bazel_external_uris}" - -RDEPEND=" - >=dev-libs/protobuf-3.13.0:= - dev-python/absl-py[${PYTHON_USEDEP}] - dev-python/h5py[${PYTHON_USEDEP}] - dev-python/numpy[${PYTHON_USEDEP}] - dev-python/pandas[${PYTHON_USEDEP}] - dev-python/pillow[${PYTHON_USEDEP}] - >=dev-python/protobuf-python-3.13.0[${PYTHON_USEDEP}] - dev-python/six[${PYTHON_USEDEP}] - >=sci-libs/keras-applications-1.0.8[${PYTHON_USEDEP}] - >=sci-libs/keras-preprocessing-1.1.2[${PYTHON_USEDEP}] - >=sci-libs/tensorflow-2.8[python,${PYTHON_USEDEP}]" -DEPEND="${RDEPEND} - dev-python/setuptools[${PYTHON_USEDEP}]" -BDEPEND=" - app-arch/unzip - >=dev-libs/protobuf-3.13.0 - dev-java/java-config - >=dev-util/bazel-4.2.2" - -# Bazel tests not pytest, also want GPU access -RESTRICT="test" -DOCS=( CONTRIBUTING.md README.md ) -PATCHES=( - "${FILESDIR}/keras-2.7.0-0001-bazel-Use-system-protobuf.patch" -) - -src_unpack() { - unpack "${P}.tar.gz" - bazel_load_distfiles "${bazel_external_uris}" -} - -src_prepare() { - bazel_setup_bazelrc - default - python_copy_sources -} - -src_compile() { - export JAVA_HOME=$(java-config --jre-home) - - do_compile() { - ebazel build //keras/tools/pip_package:build_pip_package - ebazel shutdown - - local srcdir="${T}/src-${EPYTHON/./_}" - mkdir -p "${srcdir}" || die - bazel-bin/keras/tools/pip_package/build_pip_package --src "${srcdir}" || die - } - - python_foreach_impl run_in_build_dir do_compile -} - -src_install() { - do_install() { - cd "${T}/src-${EPYTHON/./_}" || die - esetup.py install - python_optimize - } - python_foreach_impl do_install - - cd "${S}" || die - einstalldocs -} diff --git a/sci-libs/keras/keras-2.9.0.ebuild b/sci-libs/keras/keras-2.9.0.ebuild deleted file mode 100644 index e6119a59a075..000000000000 --- a/sci-libs/keras/keras-2.9.0.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8,9,10} ) -inherit bazel distutils-r1 - -DESCRIPTION="Deep Learning for humans" -HOMEPAGE="https://keras.io/" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64" -IUSE="" - -bazel_external_uris=" - https://github.com/bazelbuild/rules_cc/archive/b1c40e1de81913a3c40e5948f78719c28152486d.zip -> bazelbuild-rules_cc-b1c40e1de81913a3c40e5948f78719c28152486d.zip - https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip" - -SRC_URI="https://github.com/keras-team/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz - ${bazel_external_uris}" - -RDEPEND=" - >=dev-libs/protobuf-3.13.0:= - dev-python/absl-py[${PYTHON_USEDEP}] - dev-python/h5py[${PYTHON_USEDEP}] - dev-python/numpy[${PYTHON_USEDEP}] - dev-python/pandas[${PYTHON_USEDEP}] - dev-python/pillow[${PYTHON_USEDEP}] - >=dev-python/protobuf-python-3.13.0[${PYTHON_USEDEP}] - dev-python/six[${PYTHON_USEDEP}] - >=sci-libs/keras-applications-1.0.8[${PYTHON_USEDEP}] - >=sci-libs/keras-preprocessing-1.1.2[${PYTHON_USEDEP}] - >=sci-libs/tensorflow-2.9[python,${PYTHON_USEDEP}]" -DEPEND="${RDEPEND} - dev-python/setuptools[${PYTHON_USEDEP}]" -BDEPEND=" - app-arch/unzip - >=dev-libs/protobuf-3.13.0 - dev-java/java-config - >=dev-util/bazel-4.2.2" - -# Bazel tests not pytest, also want GPU access -RESTRICT="test" -DOCS=( CONTRIBUTING.md README.md ) -PATCHES=( - "${FILESDIR}/keras-2.9.0-0001-bazel-Use-system-protobuf.patch" -) - -src_unpack() { - unpack "${P}.tar.gz" - bazel_load_distfiles "${bazel_external_uris}" -} - -src_prepare() { - bazel_setup_bazelrc - default - python_copy_sources -} - -python_compile() { - pushd "${BUILD_DIR}" >/dev/null || die - - ebazel build //keras/tools/pip_package:build_pip_package - ebazel shutdown - - local srcdir="${T}/src-${EPYTHON/./_}" - mkdir -p "${srcdir}" || die - bazel-bin/keras/tools/pip_package/build_pip_package --src "${srcdir}" || die - - popd || die -} - -src_compile() { - export JAVA_HOME=$(java-config --jre-home) - distutils-r1_src_compile -} - -python_install() { - pushd "${T}/src-${EPYTHON/./_}" >/dev/null || die - esetup.py install - python_optimize - popd || die -} |