blob: 719d4c7c670fc64884632886bd49afade41078ec [file] [log] [blame]
# Description:
# libpng is the official PNG reference library.
licenses(["notice"]) # BSD/MIT-like license
exports_files(["LICENSE"])
cc_library(
name = "png",
srcs = [
"png.c",
"pngdebug.h",
"pngerror.c",
"pngget.c",
"pnginfo.h",
"pnglibconf.h",
"pngmem.c",
"pngpread.c",
"pngpriv.h",
"pngread.c",
"pngrio.c",
"pngrtran.c",
"pngrutil.c",
"pngset.c",
"pngstruct.h",
"pngtrans.c",
"pngwio.c",
"pngwrite.c",
"pngwtran.c",
"pngwutil.c",
] + select({
":windows": [
"intel/intel_init.c",
"intel/filter_sse2_intrinsics.c",
],
"@org_tensorflow//tensorflow:linux_ppc64le": [
"powerpc/powerpc_init.c",
"powerpc/filter_vsx_intrinsics.c",
],
"//conditions:default": [
],
}),
hdrs = [
"png.h",
"pngconf.h",
],
copts = select({
":windows": ["-DPNG_INTEL_SSE_OPT=1"],
"//conditions:default": [],
}),
includes = ["."],
linkopts = select({
":windows": [],
"//conditions:default": ["-lm"],
}),
visibility = ["//visibility:public"],
deps = ["@zlib"],
)
genrule(
name = "snappy_stubs_public_h",
srcs = ["scripts/pnglibconf.h.prebuilt"],
outs = ["pnglibconf.h"],
cmd = "sed -e 's/PNG_ZLIB_VERNUM 0/PNG_ZLIB_VERNUM 0x12b0/' $< >$@",
)
config_setting(
name = "windows",
values = {"cpu": "x64_windows"},
)