107 lines
3.9 KiB
Bash
107 lines
3.9 KiB
Bash
#!/bin/bash
|
|
# Copyright (c) 2014 The Chromium Embedded Framework Authors. All rights
|
|
# reserved. Use of this source code is governed by a BSD-style license
|
|
# that can be found in the LICENSE file.
|
|
|
|
if [ -z "$1" ]; then
|
|
echo "ERROR: Please specify a build target: linux32, linux64 or macosx64"
|
|
else
|
|
DIR="$( cd "$( dirname "$0" )" && cd .. && pwd )"
|
|
DISTRIB_PLATFORM="$1"
|
|
DISTRIB_PATH="${DIR}/binary_distrib/$1"
|
|
DISTRIB_BIN_PATH="$DISTRIB_PATH/bin"
|
|
DISTRIB_DOCS_PATH="$DISTRIB_PATH/docs"
|
|
OUT_PATH="${DIR}/out"
|
|
OUT_DOCS_PATH="${DIR}/out/docs"
|
|
SOURCE_PATH="${DIR}/java"
|
|
JOGAMP_PATH="${DIR}/third_party/jogamp"
|
|
TOOLS_DISTRIB_PATH="${DIR}/tools/distrib/$1"
|
|
EXCLUDE_FILE="${DIR}/tools/distrib/EXCLUDE_FILES.txt"
|
|
|
|
if [ ! -d "$DISTRIB_BIN_PATH" ]; then
|
|
mkdir -p "$DISTRIB_BIN_PATH"
|
|
fi
|
|
|
|
# Create the JCEF documentation.
|
|
"${DIR}"/tools/make_docs.sh
|
|
|
|
# Copy documentation to the docs directory.
|
|
cp -rf "$OUT_DOCS_PATH" "$DISTRIB_DOCS_PATH"
|
|
|
|
# Create README.txt
|
|
python "${DIR}"/tools/make_readme.py --output-dir "$DISTRIB_PATH/" --platform $DISTRIB_PLATFORM
|
|
|
|
# Copy miscellaneous files to the root directory.
|
|
cp -f "${DIR}"/LICENSE.txt "$DISTRIB_PATH"
|
|
cp -f "$JOGAMP_PATH"/*.LICENSE.txt "$DISTRIB_PATH"
|
|
rsync -a --exclude-from "$EXCLUDE_FILE" "$TOOLS_DISTRIB_PATH/" "$DISTRIB_PATH/"
|
|
|
|
if [ $1 == "macosx64" ]; then
|
|
OUT_BINARY_PATH="${DIR}/jcef_build/native/Release"
|
|
if [ ! -d "$OUT_BINARY_PATH" ]; then
|
|
echo "ERROR: Native Release build output path does not exist"
|
|
exit 1
|
|
fi
|
|
|
|
# Copy test program source file to the tests directory.
|
|
cp -rf "$SOURCE_PATH"/tests "$DISTRIB_PATH"
|
|
|
|
# Everything else is contained in the app bundle.
|
|
cp -rf "$OUT_BINARY_PATH"/jcef_app.app ""$DISTRIB_BIN_PATH
|
|
else
|
|
DISTRIB_LIB_PATH="$DISTRIB_PATH/bin/lib/$1"
|
|
JOGAMP_JAR_PATH="$JOGAMP_PATH/jar"
|
|
OUT_BINARY_PATH="$OUT_PATH/Release"
|
|
|
|
# Alternately look in the CMake output path.
|
|
if [ ! -d "$OUT_BINARY_PATH" ]; then
|
|
OUT_BINARY_PATH="${DIR}/jcef_build/native/Release"
|
|
fi
|
|
if [ ! -d "$OUT_BINARY_PATH" ]; then
|
|
echo "ERROR: Native Release build output path does not exist"
|
|
exit 1
|
|
fi
|
|
|
|
# Create the JCEF JAR file.
|
|
"${DIR}"/tools/make_jar.sh $1
|
|
|
|
# Copy JAR files to the bin directory.
|
|
cp -f "$JOGAMP_JAR_PATH"/gluegen-rt.jar "$DISTRIB_BIN_PATH"
|
|
cp -f "$JOGAMP_JAR_PATH"/jogl-all.jar "$DISTRIB_BIN_PATH"
|
|
|
|
if [ $1 == "linux32" ]; then
|
|
JOGAMP_JAR_SUFFIX="i586"
|
|
else
|
|
JOGAMP_JAR_SUFFIX="amd64"
|
|
fi
|
|
cp -f "$JOGAMP_JAR_PATH"/gluegen-rt-natives-linux-$JOGAMP_JAR_SUFFIX.jar "$DISTRIB_BIN_PATH"
|
|
cp -f "$JOGAMP_JAR_PATH"/jogl-all-natives-linux-$JOGAMP_JAR_SUFFIX.jar "$DISTRIB_BIN_PATH"
|
|
cp -f "$OUT_PATH"/$1/jcef.jar "$DISTRIB_BIN_PATH"
|
|
|
|
# Copy test program source and JAR file to the bin directory.
|
|
cp -rf "$SOURCE_PATH"/tests "$DISTRIB_BIN_PATH"
|
|
cp -f "$OUT_PATH"/$1/jcef-tests.jar "$DISTRIB_BIN_PATH"
|
|
|
|
# Copy CEF Release files to the lib directory.
|
|
if [ ! -d "$DISTRIB_LIB_PATH" ]; then
|
|
mkdir -p "$DISTRIB_LIB_PATH"
|
|
fi
|
|
|
|
cp -f "$OUT_BINARY_PATH"/chrome-sandbox "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/libjcef.so "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/jcef_helper "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/icudtl.dat "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/libcef.so "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/libEGL.so "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/libGLESv2.so "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/snapshot_blob.bin "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/v8_context_snapshot.bin "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/*.pak "$DISTRIB_LIB_PATH"
|
|
cp -rf "$OUT_BINARY_PATH"/locales/ "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/libvk_swiftshader.so "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/vk_swiftshader_icd.json "$DISTRIB_LIB_PATH"
|
|
cp -f "$OUT_BINARY_PATH"/libvulkan.so.1 "$DISTRIB_LIB_PATH"
|
|
fi
|
|
fi
|
|
|