Allow project-specific java parameters.
Summary:
We need to increase the heap size for Buck. This lets projects add
java runtime flags.
Test Plan: unit tests; run a command that OOMs, add .buckjavaargs, verify success
diff --git a/bin/buck_common b/bin/buck_common
index 32b5c96..b67c0a3 100755
--- a/bin/buck_common
+++ b/bin/buck_common
@@ -240,6 +240,13 @@
${BUCK_DIRECTORY}/third-party/java/xz-java-1.3/xz-1.3.jar:\
"
+BUCK_PROJECT_JAVA_ARGS_FILE="${PROJECT_ROOT}/.buckjavaargs"
+if [[ -r ${BUCK_PROJECT_JAVA_ARGS_FILE} ]]; then
+ BUCK_PROJECT_JAVA_ARGS=$(cat ${BUCK_PROJECT_JAVA_ARGS_FILE})
+else
+ BUCK_PROJECT_JAVA_ARGS=
+fi
+
BUCK_JAVA_ARGS="\
-XX:MaxPermSize=256m \
-Xmx1000m \
@@ -259,6 +266,7 @@
-Dbuck.dx=${BUCK_PATH_TO_CUSTOM_DX} \
-Dbuck.buckd_dir=${BUCKD_DIR} \
-Dlog4j.configuration=file:${BUCK_DIRECTORY}/config/log4j.properties \
+${BUCK_PROJECT_JAVA_ARGS} \
${BUCK_EXTRA_JAVA_ARGS}"
# To debug BUCK, set BUCK_DEBUG_MODE in your environment to anything non-empty,