| #  Copyright 2020 The Monogon Project Authors. | 
 | # | 
 | #  SPDX-License-Identifier: Apache-2.0 | 
 | # | 
 | #  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("@rules_cc//cc:defs.bzl", "cc_library") | 
 | load("@dev_source_monogon//build/utils:template_file.bzl", "template_file") | 
 |  | 
 | template_file( | 
 |     name = "pixman-version.h", | 
 |     src = "pixman-version.h.in", | 
 |     substitutions = { | 
 |         "@PIXMAN_VERSION_MAJOR@": "0", | 
 |         "@PIXMAN_VERSION_MINOR@": "40", | 
 |         "@PIXMAN_VERSION_MICRO@": "1", | 
 |     }, | 
 | ) | 
 |  | 
 | genrule( | 
 |     name = "config-h", | 
 |     outs = ["config.h"], | 
 |     cmd = "echo \"\" > \"$@\"", | 
 | ) | 
 |  | 
 | cc_library( | 
 |     name = "pixman", | 
 |     srcs = [ | 
 |         ":config-h", | 
 |         "pixman.c", | 
 |         "pixman-access.c", | 
 |         "pixman-access-accessors.c", | 
 |         "pixman-accessor.h", | 
 |         "pixman-arm.c", | 
 |         "pixman-bits-image.c", | 
 |         "pixman-combine-float.c", | 
 |         "pixman-combine32.c", | 
 |         "pixman-combine32.h", | 
 |         "pixman-compiler.h", | 
 |         "pixman-conical-gradient.c", | 
 |         "pixman-edge.c", | 
 |         "pixman-edge-accessors.c", | 
 |         "pixman-edge-imp.h", | 
 |         "pixman-fast-path.c", | 
 |         "pixman-filter.c", | 
 |         "pixman-general.c", | 
 |         "pixman-glyph.c", | 
 |         "pixman-gradient-walker.c", | 
 |         "pixman-image.c", | 
 |         "pixman-implementation.c", | 
 |         "pixman-inlines.h", | 
 |         "pixman-linear-gradient.c", | 
 |         "pixman-matrix.c", | 
 |         "pixman-mips.c", | 
 |         "pixman-noop.c", | 
 |         "pixman-ppc.c", | 
 |         "pixman-private.h", | 
 |         "pixman-radial-gradient.c", | 
 |         "pixman-region16.c", | 
 |         "pixman-region32.c", | 
 |         "pixman-solid-fill.c", | 
 |         "pixman-sse2.c", | 
 |         "pixman-ssse3.c", | 
 |         "pixman-timer.c", | 
 |         "pixman-trap.c", | 
 |         "pixman-utils.c", | 
 |         "pixman-x86.c", | 
 |         ":pixman-version.h", | 
 |         "dither/blue-noise-64x64.h", | 
 |     ], | 
 |     hdrs = [ | 
 |         "pixman.h", | 
 |         # Please never include these, this is some next-level insanity | 
 |         "pixman-region.c", | 
 |         "pixman-edge.c", | 
 |         "pixman-access.c", | 
 |     ], | 
 |     copts = ["-mssse3"], | 
 |     includes = ["."], | 
 |     local_defines = [ | 
 |         "PACKAGE=foo", | 
 |         "HAVE_FLOAT128=1", | 
 |         "HAVE_BUILTIN_CLZ=1", | 
 |         "USE_SSSE3=1", | 
 |         "USE_SSE2=1", | 
 |         "TLS=__thread", | 
 |     ], | 
 |     visibility = ["//visibility:public"], | 
 | ) |