diff options
author | Renato Botelho <renato@netgate.com> | 2017-04-28 16:41:55 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2017-05-02 09:25:41 -0300 |
commit | ce3d475437924f965dc957c2b742c1283c81e7ca (patch) | |
tree | 9c99de4d7994a0e7706e71922aeec8dcf86c83a0 | |
parent | fd7049e74db51980dd05d3e96e19221d2d122957 (diff) | |
download | pfsense-ce3d475437924f965dc957c2b742c1283c81e7ca.zip pfsense-ce3d475437924f965dc957c2b742c1283c81e7ca.tar.gz |
Build and install gnid on /usr/sbin
-rw-r--r-- | tools/builder_common.sh | 35 | ||||
-rw-r--r-- | tools/builder_defaults.sh | 5 |
2 files changed, 40 insertions, 0 deletions
diff --git a/tools/builder_common.sh b/tools/builder_common.sh index d8685be..560e49b 100644 --- a/tools/builder_common.sh +++ b/tools/builder_common.sh @@ -535,6 +535,17 @@ make_world() { (script -aq $LOGFILE make -C ${FREEBSD_SRC_DIR}/tools/tools/ath/athstats ${makeargs} install || print_error_pfS;) | egrep '^>>>' | tee -a ${LOGFILE} echo ">>> Building and installing crypto tools and athstats for ${TARGET} architecture... (Finished - $(LC_ALL=C date))" | tee -a ${LOGFILE} + if [ "${PRODUCT_NAME}" = "pfSense" -a -n "${GNID_REPO_BASE}" ]; then + echo ">>> Building gnid... " | tee -a ${LOGFILE} + (cd ${GNID_SRC_DIR} && make clean gnid) || print_error_pfS + install -o root -g wheel -m 0700 ${GNID_SRC_DIR}/gnid \ + ${STAGE_CHROOT_DIR}/usr/sbin \ + || print_error_pfS + install -o root -g wheel -m 0700 ${GNID_SRC_DIR}/gnid \ + ${INSTALLER_CHROOT_DIR}/usr/sbin \ + || print_error_pfS + fi + unset makeargs } @@ -1726,6 +1737,30 @@ update_freebsd_sources() { ( cd ${FREEBSD_SRC_DIR} && git checkout ${GIT_FREEBSD_COSHA1} ) 2>&1 | grep -C3 -i -E 'error|fatal' fi echo "Done!" + + if [ "${PRODUCT_NAME}" = "pfSense" -a -n "${GNID_REPO_BASE}" ]; then + echo ">>> Obtaining gnid sources..." + + _CLONE=1 + if [ -d "${GNID_SRC_DIR}/.git" ]; then + CUR_BRANCH=$(cd ${GNID_SRC_DIR} && git branch | grep '^\*' | cut -d' ' -f2) + if [ "${CUR_BRANCH}" = "${GNID_BRANCH}" ]; then + _CLONE=0 + ( cd ${GNID_SRC_DIR} && git clean -fd; git fetch origin; git reset --hard origin/${GNID_BRANCH} ) 2>&1 | grep -C3 -i -E 'error|fatal' + else + rm -rf ${GNID_SRC_DIR} + fi + fi + + if [ ${_CLONE} -eq 1 ]; then + ( git clone --branch ${GNID_BRANCH} ${GNID_REPO_BASE} ${GNID_SRC_DIR} ) 2>&1 | grep -C3 -i -E 'error|fatal' + fi + + if [ ! -d "${GNID_SRC_DIR}/.git" ]; then + echo ">>> ERROR: It was not possible to clone gnid src repo" + print_error_pfS + fi + fi } pkg_chroot() { diff --git a/tools/builder_defaults.sh b/tools/builder_defaults.sh index 0437b2e..a3445bf 100644 --- a/tools/builder_defaults.sh +++ b/tools/builder_defaults.sh @@ -143,6 +143,11 @@ POUDRIERE_BRANCH=$(echo "${GIT_REPO_BRANCH_OR_TAG}" | sed 's,RELENG_,v,; s,\.,_, GIT_REPO_BASE=$(git -C ${BUILDER_ROOT} config --get remote.origin.url | sed -e 's,/[^/]*$,,') +# gnid +export GNID_REPO_BASE=${GNID_REPO_BASE:-"${GIT_REPO_BASE}/gnid.git"} +export GNID_SRC_BASE=${GNID_SRC_BASE:-"${SCRATCHDIR}/gnid"} +export GNID_BRANCH=${GNID_BRANCH:-"master"} + # This is used for using svn for retrieving src export FREEBSD_REPO_BASE=${FREEBSD_REPO_BASE:-"${GIT_REPO_BASE}/freebsd-src.git"} export FREEBSD_BRANCH=${FREEBSD_BRANCH:-"RELENG_2_3"} |