Merge pull request #26 from aiuto/pkg

First cut at making a release binary
diff --git a/BUILD b/BUILD
index 020b0e0..a763238 100644
--- a/BUILD
+++ b/BUILD
@@ -38,3 +38,15 @@
     ]),
     visibility = ["//visibility:public"],
 )
+
+filegroup(
+    name = "standard_package",
+    srcs = glob([
+        "*.bzl",
+        "*.md",
+    ]) + [
+        "BUILD",
+        "LICENSE",
+    ],
+    visibility = ["//distro:__pkg__"],
+)
diff --git a/WORKSPACE b/WORKSPACE
index e8aa17e..c4b227b 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -14,10 +14,24 @@
 
 workspace(name = "rules_license")
 
+# You only need the dependencies if you intend to use any of the tools.
 load("@rules_license//:deps.bzl", "rules_license_dependencies")
 
 rules_license_dependencies()
 
 ### INTERNAL ONLY - lines after this are not included in the release packaging.
 
-# TODO(aiuto): Add stardoc dependency eventually.
+load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
+
+http_archive(
+    name = "rules_pkg",
+    sha256 = "62eeb544ff1ef41d786e329e1536c1d541bb9bcad27ae984d57f18f314018e66",
+    urls = [
+        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.6.0/rules_pkg-0.6.0.tar.gz",
+        "https://github.com/bazelbuild/rules_pkg/releases/download/0.6.0/rules_pkg-0.6.0.tar.gz",
+    ],
+)
+
+load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
+
+rules_pkg_dependencies()
diff --git a/distro/BUILD b/distro/BUILD
new file mode 100644
index 0000000..c175f18
--- /dev/null
+++ b/distro/BUILD
@@ -0,0 +1,69 @@
+# Copyright 2022 The Bazel Authors. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+load("//:version.bzl", "version")
+load("@rules_pkg//pkg:pkg.bzl", "pkg_tar")
+load("@rules_pkg//pkg/releasing:defs.bzl", "print_rel_notes")
+
+
+package(
+    default_visibility = ["//visibility:private"],
+    default_applicable_licenses = ["//:license"],
+)
+
+alias(
+    name = "distro",
+    actual = "rules_license-%s" % version,
+)
+
+# Build the artifact to put on the github release page.
+pkg_tar(
+    name = "rules_license-%s" % version,
+    srcs = [
+        ":small_workspace",
+        "//:standard_package",
+        "//licenses/spdx:standard_package",
+        "//rules:standard_package",
+        "//tools:standard_package",
+    ],
+    extension = "tar.gz",
+    # It is all source code, so make it read-only.
+    mode = "0444",
+    # Make it owned by root so it does not have the uid of the CI robot.
+    owner = "0.0",
+    package_dir = ".",
+    strip_prefix = ".",
+    tags = [
+        "no_windows",
+    ],
+)
+
+genrule(
+    name = "small_workspace",
+    srcs = ["//:WORKSPACE"],
+    outs = ["WORKSPACE"],
+    cmd = "sed -e '/### INTERNAL ONLY/,$$d' $(location //:WORKSPACE) >$@",
+    tags = [
+        "no_windows",
+    ],
+)
+
+print_rel_notes(
+    name = "relnotes",
+    outs = ["relnotes.txt"],
+    mirror_host = "mirror.bazel.build",
+    org = "bazelbuild",
+    repo = "rules_license",
+    version = version,
+)
diff --git a/licenses/spdx/BUILD b/licenses/spdx/BUILD
index 1f83892..cf50e0e 100644
--- a/licenses/spdx/BUILD
+++ b/licenses/spdx/BUILD
@@ -59,6 +59,11 @@
     default_visibility = ["//visibility:public"],
 )
 
+filegroup(
+    name = "standard_package",
+    srcs = ["BUILD"],
+)
+
 license_kind(
     name = "0BSD",
     conditions = [],
diff --git a/rules/BUILD b/rules/BUILD
index 36609b7..f0fd218 100644
--- a/rules/BUILD
+++ b/rules/BUILD
@@ -19,3 +19,8 @@
     default_applicable_licenses = ["//:license"],
     default_visibility = ["//visibility:public"],
 )
+
+filegroup(
+    name = "standard_package",
+    srcs = glob(["**"]),
+)
diff --git a/tools/BUILD b/tools/BUILD
index b2bc718..03bbac1 100644
--- a/tools/BUILD
+++ b/tools/BUILD
@@ -27,3 +27,9 @@
 )
 
 exports_files(["diff_test.sh"])
+
+filegroup(
+    name = "standard_package",
+    srcs = glob(["**"]),
+    visibility = ["//distro:__pkg__"],
+)