| OLD | NEW |
| 1 # Copyright (c) 2012 The Native Client Authors. All rights reserved. | 1 # Copyright (c) 2012 The Native Client Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 # | 4 # |
| 5 # Environment variable NACL_ARCH should be unset or set to "i686" | 5 # Environment variable NACL_ARCH should be unset or set to "i686" |
| 6 # for a 32-bit build. It should be set to "x86_64", "pnacl", or "arm" | 6 # for a 32-bit build. It should be set to "x86_64", "pnacl", or "arm" |
| 7 # for a 64-bit, pnacl, or arm builds. | 7 # for a 64-bit, pnacl, or arm builds. |
| 8 | 8 |
| 9 | 9 |
| 10 # NAMING CONVENTION | 10 # NAMING CONVENTION |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 131 fi | 131 fi |
| 132 | 132 |
| 133 # Don't support building with SDKs older than the current stable release | 133 # Don't support building with SDKs older than the current stable release |
| 134 MIN_SDK_VERSION=${MIN_SDK_VERSION:-31} | 134 MIN_SDK_VERSION=${MIN_SDK_VERSION:-31} |
| 135 | 135 |
| 136 readonly NACL_PACKAGES_REPOSITORY=${REPOSITORY} | 136 readonly NACL_PACKAGES_REPOSITORY=${REPOSITORY} |
| 137 readonly NACL_PACKAGES_PUBLISH=${NACL_PACKAGES_OUT}/publish | 137 readonly NACL_PACKAGES_PUBLISH=${NACL_PACKAGES_OUT}/publish |
| 138 readonly NACL_PACKAGES_TARBALLS=${NACL_PACKAGES_OUT}/tarballs | 138 readonly NACL_PACKAGES_TARBALLS=${NACL_PACKAGES_OUT}/tarballs |
| 139 readonly NACL_PACKAGES_STAMPDIR=${NACL_PACKAGES_OUT}/stamp | 139 readonly NACL_PACKAGES_STAMPDIR=${NACL_PACKAGES_OUT}/stamp |
| 140 | 140 |
| 141 readonly NACL_HOST_PYROOT=${NACL_PACKAGES_REPOSITORY}/host_python-2.7.5 |
| 142 readonly NACL_HOST_PYTHON=${NACL_HOST_PYROOT}/bin/python2.7 |
| 143 readonly NACL_DEST_PYROOT=${NACLPORTS_PREFIX} |
| 144 readonly DEST_PYTHON_OBJS=${NACL_HOST_PYROOT}/${NACL_BUILD_SUBDIR} |
| 145 readonly SITE_PACKAGES="lib/python2.7/site-packages/" |
| 146 NACL_PYSETUP_ARGS="" |
| 147 |
| 141 if [ $OS_NAME = "Darwin" ]; then | 148 if [ $OS_NAME = "Darwin" ]; then |
| 142 OS_JOBS=4 | 149 OS_JOBS=4 |
| 143 elif [ $OS_NAME = "Linux" ]; then | 150 elif [ $OS_NAME = "Linux" ]; then |
| 144 OS_JOBS=`nproc` | 151 OS_JOBS=`nproc` |
| 145 else | 152 else |
| 146 OS_JOBS=1 | 153 OS_JOBS=1 |
| 147 fi | 154 fi |
| 148 | 155 |
| 149 GomaTest() { | 156 GomaTest() { |
| 150 # test the goma compiler | 157 # test the goma compiler |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 fi | 195 fi |
| 189 | 196 |
| 190 # PACKAGE_DIR (the folder contained within that archive) defaults to | 197 # PACKAGE_DIR (the folder contained within that archive) defaults to |
| 191 # the PACKAGE_NAME. Packages with non-standard contents can override | 198 # the PACKAGE_NAME. Packages with non-standard contents can override |
| 192 # this before including common.sh | 199 # this before including common.sh |
| 193 PACKAGE_DIR=${PACKAGE_DIR:-${PACKAGE_NAME:-}} | 200 PACKAGE_DIR=${PACKAGE_DIR:-${PACKAGE_NAME:-}} |
| 194 SRC_DIR=${NACL_PACKAGES_REPOSITORY}/${PACKAGE_DIR} | 201 SRC_DIR=${NACL_PACKAGES_REPOSITORY}/${PACKAGE_DIR} |
| 195 DEFAULT_BUILD_DIR=${SRC_DIR}/${NACL_BUILD_SUBDIR} | 202 DEFAULT_BUILD_DIR=${SRC_DIR}/${NACL_BUILD_SUBDIR} |
| 196 BUILD_DIR=${NACL_BUILD_DIR:-${DEFAULT_BUILD_DIR}} | 203 BUILD_DIR=${NACL_BUILD_DIR:-${DEFAULT_BUILD_DIR}} |
| 197 | 204 |
| 198 | |
| 199 PUBLISH_DIR="${NACL_PACKAGES_PUBLISH}/${PACKAGE_NAME}" | 205 PUBLISH_DIR="${NACL_PACKAGES_PUBLISH}/${PACKAGE_NAME}" |
| 200 if [ "${NACL_ARCH}" = "pnacl" ]; then | 206 if [ "${NACL_ARCH}" = "pnacl" ]; then |
| 201 PUBLISH_DIR+=/pnacl | 207 PUBLISH_DIR+=/pnacl |
| 202 else | 208 else |
| 203 PUBLISH_DIR+=/${NACL_LIBC} | 209 PUBLISH_DIR+=/${NACL_LIBC} |
| 204 fi | 210 fi |
| 205 | 211 |
| 206 if [ "${NACL_ARCH}" != "pnacl" -a -z "${NACL_SEL_LDR:-}" ]; then | 212 if [ "${NACL_ARCH}" != "pnacl" -a -z "${NACL_SEL_LDR:-}" ]; then |
| 207 SKIP_SEL_LDR_TESTS=1 | 213 SKIP_SEL_LDR_TESTS=1 |
| 208 else | 214 else |
| (...skipping 640 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 849 ChangeDir ${BUILD_DIR} | 855 ChangeDir ${BUILD_DIR} |
| 850 # Build ${MAKE_TARGETS} or default target if it is not defined | 856 # Build ${MAKE_TARGETS} or default target if it is not defined |
| 851 if [ -n "${MAKEFLAGS:-}" ]; then | 857 if [ -n "${MAKEFLAGS:-}" ]; then |
| 852 echo "MAKEFLAGS=${MAKEFLAGS}" | 858 echo "MAKEFLAGS=${MAKEFLAGS}" |
| 853 export MAKEFLAGS | 859 export MAKEFLAGS |
| 854 fi | 860 fi |
| 855 export PATH=${NACL_BIN_PATH}:${PATH}; | 861 export PATH=${NACL_BIN_PATH}:${PATH}; |
| 856 LogExecute make -j${OS_JOBS} ${MAKE_TARGETS:-} | 862 LogExecute make -j${OS_JOBS} ${MAKE_TARGETS:-} |
| 857 } | 863 } |
| 858 | 864 |
| 865 DefaultPythonModuleBuildStep() { |
| 866 Banner "Build ${PACKAGE_NAME} python module" |
| 867 ChangeDir ${NACL_PACKAGES_REPOSITORY}/${PACKAGE_DIR} |
| 868 if CheckStamp install_dest_${PACKAGE_NAME} ; then |
| 869 return |
| 870 fi |
| 871 LogExecute rm -rf build dist |
| 872 export PYTHONPATH="${NACL_HOST_PYROOT}/${SITE_PACKAGES}" |
| 873 export PYTHONPATH="${PYTHONPATH}:${NACL_DEST_PYROOT}/${SITE_PACKAGES}" |
| 874 export NACL_PORT_BUILD=${1:-dest} |
| 875 export NACL_BUILD_TREE=${NACL_DEST_PYROOT} |
| 876 export CC=${NACLCC} |
| 877 export CXX=${NACLCXX} |
| 878 export PKG_CONFIG_PATH=${NACLPORTS_LIBDIR}/pkgconfig |
| 879 export PKG_CONFIG_LIBDIR=${NACLPORTS_LIBDIR} |
| 880 export FREETYPE_CONFIG=${NACLPORTS_PREFIX_BIN}/freetype-config |
| 881 export CFLAGS=${NACLPORTS_CFLAGS} |
| 882 export CXXFLAGS=${NACLPORTS_CXXFLAGS} |
| 883 export LDFLAGS=${NACLPORTS_LDFLAGS} |
| 884 LogExecute ${NACL_HOST_PYTHON} setup.py \ |
| 885 ${NACL_PYSETUP_ARGS:-} \ |
| 886 install --prefix=${NACL_DEST_PYROOT} |
| 887 MakeDir ${DEST_PYTHON_OBJS} |
| 888 LogExecute find build -name "*.o" -exec cp -v {} ${DEST_PYTHON_OBJS} \; |
| 889 TouchStamp install_dest_${PACKAGE_NAME} |
| 890 } |
| 859 | 891 |
| 860 DefaultTestStep() { | 892 DefaultTestStep() { |
| 861 echo "No tests defined for ${PACKAGE_NAME}" | 893 echo "No tests defined for ${PACKAGE_NAME}" |
| 862 } | 894 } |
| 863 | 895 |
| 864 | 896 |
| 865 DefaultInstallStep() { | 897 DefaultInstallStep() { |
| 866 # assumes pwd has makefile | 898 # assumes pwd has makefile |
| 867 if [ -n "${MAKEFLAGS:-}" ]; then | 899 if [ -n "${MAKEFLAGS:-}" ]; then |
| 868 echo "MAKEFLAGS=${MAKEFLAGS}" | 900 echo "MAKEFLAGS=${MAKEFLAGS}" |
| 869 export MAKEFLAGS | 901 export MAKEFLAGS |
| 870 fi | 902 fi |
| 871 export PATH=${NACL_BIN_PATH}:${PATH}; | 903 export PATH=${NACL_BIN_PATH}:${PATH}; |
| 872 LogExecute make ${INSTALL_TARGETS:-install} | 904 LogExecute make ${INSTALL_TARGETS:-install} |
| 873 } | 905 } |
| 874 | 906 |
| 907 DefaultPythonModuleInstallStep() { |
| 908 Banner "Installing ${PACKAGE_NAME}" |
| 909 # We've installed already previously. We just need to collect our modules. |
| 910 MakeDir ${NACL_HOST_PYROOT}/python_modules/ |
| 911 if [ -e ${START_DIR}/modules.list ] ; then |
| 912 LogExecute cp ${START_DIR}/modules.list \ |
| 913 ${DEST_PYTHON_OBJS}/${PACKAGE_NAME}.list |
| 914 fi |
| 915 if [ -e ${START_DIR}/modules.libs ] ; then |
| 916 LogExecute cp ${START_DIR}/modules.libs \ |
| 917 ${DEST_PYTHON_OBJS}/${PACKAGE_NAME}.libs |
| 918 fi |
| 919 } |
| 875 | 920 |
| 876 # | 921 # |
| 877 # echo a command before exexuting it under 'time' | 922 # echo a command before exexuting it under 'time' |
| 878 # | 923 # |
| 879 TimeCommand() { | 924 TimeCommand() { |
| 880 echo "$@" | 925 echo "$@" |
| 881 time "$@" | 926 time "$@" |
| 882 } | 927 } |
| 883 | 928 |
| 884 | 929 |
| (...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1192 # Always run | 1237 # Always run |
| 1193 # These functions are called when this script is imported to do | 1238 # These functions are called when this script is imported to do |
| 1194 # any essential checking/setup operations. | 1239 # any essential checking/setup operations. |
| 1195 ###################################################################### | 1240 ###################################################################### |
| 1196 CheckToolchain | 1241 CheckToolchain |
| 1197 CheckPatchVersion | 1242 CheckPatchVersion |
| 1198 CheckSDKVersion | 1243 CheckSDKVersion |
| 1199 PatchSpecFile | 1244 PatchSpecFile |
| 1200 InjectSystemHeaders | 1245 InjectSystemHeaders |
| 1201 InstallConfigSite | 1246 InstallConfigSite |
| OLD | NEW |