123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- #!/bin/bash
- # Copyright (c) Facebook, Inc. and its affiliates.
- #
- # This source code is licensed under the MIT license found in the
- # LICENSE file in the root directory of this source tree.
- set -e
- PLATFORM_NAME="${PLATFORM_NAME:-iphoneos}"
- CURRENT_ARCH="${CURRENT_ARCH}"
- if [ -z "$CURRENT_ARCH" ] || [ "$CURRENT_ARCH" == "undefined_arch" ]; then
- # Xcode 10 beta sets CURRENT_ARCH to "undefined_arch", this leads to incorrect linker arg.
- # it's better to rely on platform name as fallback because architecture differs between simulator and device
- if [[ "$PLATFORM_NAME" == *"simulator"* ]]; then
- CURRENT_ARCH="x86_64"
- else
- CURRENT_ARCH="armv7"
- fi
- fi
- export CC="$(xcrun -find -sdk $PLATFORM_NAME cc) -arch $CURRENT_ARCH -isysroot $(xcrun -sdk $PLATFORM_NAME --show-sdk-path)"
- export CXX="$CC"
- # Remove automake symlink if it exists
- if [ -h "test-driver" ]; then
- rm test-driver
- fi
- ./configure --host arm-apple-darwin
- # Fix build for tvOS
- cat << EOF >> src/config.h
- /* Add in so we have Apple Target Conditionals */
- #ifdef __APPLE__
- #include <TargetConditionals.h>
- #include <Availability.h>
- #endif
- /* Special configuration for AppleTVOS */
- #if TARGET_OS_TV
- #undef HAVE_SYSCALL_H
- #undef HAVE_SYS_SYSCALL_H
- #undef OS_MACOSX
- #endif
- /* Special configuration for ucontext */
- #undef HAVE_UCONTEXT_H
- #undef PC_FROM_UCONTEXT
- #if defined(__x86_64__)
- #define PC_FROM_UCONTEXT uc_mcontext->__ss.__rip
- #elif defined(__i386__)
- #define PC_FROM_UCONTEXT uc_mcontext->__ss.__eip
- #endif
- EOF
- # Prepare exported header include
- EXPORTED_INCLUDE_DIR="exported/glog"
- mkdir -p exported/glog
- cp -f src/glog/log_severity.h "$EXPORTED_INCLUDE_DIR/"
- cp -f src/glog/logging.h "$EXPORTED_INCLUDE_DIR/"
- cp -f src/glog/raw_logging.h "$EXPORTED_INCLUDE_DIR/"
- cp -f src/glog/stl_logging.h "$EXPORTED_INCLUDE_DIR/"
- cp -f src/glog/vlog_is_on.h "$EXPORTED_INCLUDE_DIR/"
|