Fix buck build

This commit is contained in:
Ali 2020-07-28 20:59:08 +04:00
parent 9eee3f16ac
commit 4a8cc881e6

View File

@ -1,8 +1,10 @@
load("//Config:buck_rule_macros.bzl", "static_library", "gen_header_targets", "merge_maps")
headers = [ headers = [
"turbojpeg.h", "mozjpeg/turbojpeg.h",
"jpeglib.h", "mozjpeg/jpeglib.h",
"jmorecfg.h", "mozjpeg/jmorecfg.h",
"mozjpeg/jconfig.h",
] ]
libs = [ libs = [
@ -18,7 +20,6 @@ genrule(
"build-mozjpeg-buck.sh", "build-mozjpeg-buck.sh",
], ],
bash = bash =
cmd_bash =
""" """
set -ex set -ex
@ -26,21 +27,31 @@ cmd_bash =
mkdir -p "$OUT" mkdir -p "$OUT"
BUILD_DIR="$(OUT)/build_$${BUILD_ARCH}" BUILD_DIR="$OUT/$BUILD_ARCH"
rm -rf "$BUILD_DIR" rm -rf "$BUILD_DIR"
mkdir -p "$BUILD_DIR" mkdir -p "$BUILD_DIR"
CMAKE_DIR="$(location //third-party/cmake:cmake)/cmake-3.16.0" CMAKE_DIR="$(location //third-party/cmake:cmake)/cmake-3.16.0"
cp $(location :build-mozjpeg-buck.sh) "$BUILD_DIR/" cp "$SRCDIR/build-mozjpeg-buck.sh" "$BUILD_DIR/"
SOURCE_PATH="third-party/mozjpeg/mozjpeg"
cp -R "$SRCDIR/mozjpeg" "$BUILD_DIR/" cp -R "$SRCDIR/mozjpeg" "$BUILD_DIR/"
mkdir -p "$BUILD_DIR/Public/mozjpeg" mkdir -p "$BUILD_DIR/Public/mozjpeg"
PATH="$PATH:$CMAKE_DIR/bin" sh $BUILD_DIR/build-mozjpeg-bazel.sh $BUILD_ARCH "$BUILD_DIR/mozjpeg" "$BUILD_DIR" PATH="$PATH:$CMAKE_DIR/bin" sh $BUILD_DIR/build-mozjpeg-buck.sh $BUILD_ARCH "$BUILD_DIR/mozjpeg" "$BUILD_DIR"
mkdir -p $OUT/Public/mozjpeg
mkdir -p $OUT/Public/lib
cp $BUILD_DIR/mozjpeg/turbojpeg.h "$OUT/Public/mozjpeg/"
cp $BUILD_DIR/mozjpeg/jpeglib.h "$OUT/Public/mozjpeg/"
cp $BUILD_DIR/mozjpeg/jmorecfg.h "$OUT/Public/mozjpeg/"
cp $BUILD_DIR/build/jconfig.h "$OUT/Public/mozjpeg/"
cp $BUILD_DIR/build/libjpeg.a "$OUT/Public/lib/"
cp $BUILD_DIR/build/libturbojpeg.a "$OUT/Public/lib/"
""", """,
out = "libmozjpeg", out = "libmozjpeg",
visibility = [ visibility = [
@ -48,20 +59,22 @@ cmd_bash =
] ]
) )
mozjpeg_header_targets = gen_header_targets(headers, "libmozjpeg_header_", "", "libmozjpeg_build", "Public")
apple_library( apple_library(
name = "mozjpeg_lib", name = "mozjpeg_lib",
exported_headers = mozjpeg_header_targets,
visibility = [ visibility = [
"//third-party/mozjpeg:mozjpeg" "//third-party/mozjpeg:mozjpeg"
], ],
header_namespace = "ffmpeg", header_namespace = "mozjpeg",
exported_headers = ffmpeg_header_targets,
linker_flags = [ linker_flags = [
"-L$(location :libmozjpeg_build)/lib", "-L$(location :libmozjpeg_build)/Public/lib",
"-ljpeg", "-ljpeg",
"-lturbojpeg", "-lturbojpeg",
], ],
exported_linker_flags = [ exported_linker_flags = [
"-L$(location :libmozjpeg_build)/lib", "-L$(location :libmozjpeg_build)/Public/lib",
"-ljpeg", "-ljpeg",
"-lturbojpeg", "-lturbojpeg",
], ],
@ -70,13 +83,9 @@ apple_library(
], ],
) )
mozjpeg_header_targets = gen_header_targets(headers, "libmozjpeg_header_", "", "libmozjpeg_build", "mozjpeg/include")
static_library( static_library(
name = "mozjpeg", name = "mozjpeg",
exported_headers = merge_maps([ exported_headers = mozjpeg_header_targets,
mozjpeg_header_targets,
]),
deps = [ deps = [
":libmozjpeg_build", ":libmozjpeg_build",
":mozjpeg_lib", ":mozjpeg_lib",