| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- # Protobuf PHP runtime
- #
- # See also code generation logic under /src/google/protobuf/compiler/php.
- load("@rules_pkg//:pkg.bzl", "pkg_tar")
- load("@rules_pkg//:mappings.bzl", "pkg_files", "pkg_filegroup", "strip_prefix")
- load("//:protobuf_version.bzl", "PROTOBUF_PHP_VERSION")
- pkg_files(
- name = "dist_files",
- srcs = glob([
- "ext/google/protobuf/**/*",
- "src/GPBMetadata/Google/Protobuf/**/*.php",
- "src/Google/Protobuf/**/*.php",
- "tests/*.php",
- "tests/*.sh",
- "tests/generated_previous/**/*.php",
- "tests/proto/**/*.proto",
- "tests/proto_previous/*.proto",
- ]) + [
- "BUILD.bazel",
- "README.md",
- "REFCOUNTING.md",
- "composer.json",
- "generate_descriptor_protos.sh",
- "generate_test_protos.sh",
- "release.sh",
- "src/phpdoc.dist.xml",
- "tests/valgrind.supp",
- ],
- prefix = "php",
- strip_prefix = strip_prefix.from_pkg(""),
- visibility = ["//pkg:__pkg__"],
- )
- ################################################################################
- # PECL .tgz Release
- ################################################################################
- pkg_files(
- name = "php_ext_source_files",
- srcs = glob([
- "ext/google/protobuf/*.h",
- "ext/google/protobuf/*.c",
- ]) + [
- "//:LICENSE",
- "ext/google/protobuf/config.m4",
- "ext/google/protobuf/wkt.inc",
- ],
- )
- pkg_files(
- name = "utf8_range_files",
- srcs = [
- "//third_party/utf8_range:utf8_range_srcs",
- "//third_party/utf8_range:LICENSE",
- ],
- prefix = "third_party/utf8_range",
- )
- pkg_filegroup(
- name = "pecl_release_files",
- srcs = [
- ":php_ext_source_files",
- ":utf8_range_files",
- ],
- prefix = "protobuf-%s" % PROTOBUF_PHP_VERSION,
- )
- # PECL .tgz without package.xml
- pkg_tar(
- name = "release_without_package",
- extension = "tgz",
- srcs = [
- ":pecl_release_files",
- ],
- out = "release_without_package.tgz",
- )
- # Generate PECL package.xml
- genrule(
- name = "generate_package_xml",
- srcs = [
- ":release_without_package",
- "ext/google/protobuf/template_package.xml",
- ],
- outs = ["package.xml"],
- cmd = " ".join([
- "$(location ext/google/protobuf/generate_package_xml.sh)",
- "$(location ext/google/protobuf/template_package.xml)",
- PROTOBUF_PHP_VERSION,
- "$$(tar -tf $(location :release_without_package) | sed -z -e 's;\\n;,;g')",
- "$(location package.xml)"
- ]),
- tools = ["ext/google/protobuf/generate_package_xml.sh"],
- )
- pkg_tar(
- name = "release",
- extension = "tgz",
- srcs = [
- ":pecl_release_files",
- ":generate_package_xml",
- ],
- out = "protobuf-%s.tgz" % PROTOBUF_PHP_VERSION,
- )
|