commit:     3762c6fa6c5c4214698512376fc10e0581956c6e
Author:     Yuta SATOH <nigoro.dev <AT> gmail <DOT> com>
AuthorDate: Tue Jan  2 13:39:07 2018 +0000
Commit:     Yuta SATOH <nigoro <AT> gentoo <DOT> gr <DOT> jp>
CommitDate: Tue Jan  2 13:39:07 2018 +0000
URL:        https://gitweb.gentoo.org/proj/gentoo-bsd.git/commit/?id=3762c6fa

automatic_updater.sh: add the missing code to upgrade correctly.

 scripts/automatic_updater.sh | 36 ++++++++++++++++++++++++++++++------
 1 file changed, 30 insertions(+), 6 deletions(-)

diff --git a/scripts/automatic_updater.sh b/scripts/automatic_updater.sh
index 2afa6f6..58e8ced 100755
--- a/scripts/automatic_updater.sh
+++ b/scripts/automatic_updater.sh
@@ -42,7 +42,7 @@ move_makeconf(){
 }
 
 update_portage(){
-       local dl_portage_ver="2.3.8"
+       local dl_portage_ver="2.3.6"
 
        echo "Updating the sys-apps/portage with a manual method..."
 
@@ -63,8 +63,8 @@ update_portage(){
        eselect python set 1
 }
 
-update_bmake(){
-       echo "Updating the bmake..."
+update_bmake_command(){
+       echo "Updating bmake..."
 
        [[ -e /usr/local/bin/make ]] && exit 1
 
@@ -73,15 +73,32 @@ update_bmake(){
        make
        cp -a make /usr/local/bin/
        cd "${PORTDIR}/sys-freebsd/freebsd-ubin" && ebuild $(ls -1 
freebsd-ubin-${TARGETVER}*.ebuild | tail -n 1) clean
+
+       env-update
+       source /etc/profile
+}
+
+update_config_command(){
+       echo "Updating config..."
+
+       [[ -e /usr/local/sbin/config ]] && exit 1
+
+       cd "${PORTDIR}/sys-freebsd/freebsd-usbin" && ebuild $(ls -1 
freebsd-usbin-${TARGETVER}*.ebuild | tail -n 1) prepare
+       cd 
"${PORTAGE_TMPDIR}"/portage/sys-freebsd/freebsd-usbin-${TARGETVER}*/work/usr.sbin/config
+       /usr/local/bin/make -m /usr/share/mk/system
+       cp -a config /usr/local/sbin/
+       cd "${PORTDIR}/sys-freebsd/freebsd-usbin" && ebuild $(ls -1 
freebsd-usbin-${TARGETVER}*.ebuild | tail -n 1) clean
 }
 
 update_minimal(){
        echo "Updating the minimal packages to upgrade the Gentoo/FreeBSD..."
 
        emerge -u sys-devel/gcc-config --exclude sys-freebsd/*
-       update_bmake
+       update_bmake_command
 
        emerge --nodeps sys-freebsd/freebsd-mk-defs
+       update_config_command
+
        emerge -u '<sys-apps/findutils-4.6' --exclude sys-freebsd/*
        emerge sys-devel/libtool --exclude sys-freebsd/*
 
@@ -118,7 +135,8 @@ update_toolchain(){
 
        # https://bugs.gentoo.org/629128
        [[ ! -e /etc/portage/package.unmask ]] && mkdir -p 
/etc/portage/package.unmask
-       echo "sys-devel/binutils" > 
/etc/portage/package.unmask/binutils-oldversion
+       echo "sys-devel/binutils" > 
/etc/portage/package.unmask/toolchain-oldversion
+       echo "sys-devel/gcc" >> /etc/portage/package.unmask/toolchain-oldversion
        emerge -u '<sys-devel/binutils-2.28' --exclude sys-freebsd/*
        emerge -u sys-devel/gcc-config --exclude sys-freebsd/*
        emerge -u '<sys-devel/gcc-5.0' --exclude sys-freebsd/* --exclude 
sys-devel/binutils
@@ -167,6 +185,7 @@ update_freebsd_userland(){
        emerge freebsd-bin freebsd-lib freebsd-mk-defs freebsd-pam-modules 
freebsd-sbin freebsd-share freebsd-sources freebsd-ubin freebsd-usbin
 
        [[ -e /usr/local/bin/make ]] && rm /usr/local/bin/make
+       [[ -e /usr/local/sbin/config ]] && rm /usr/local/sbin/config
        env-update
        source /etc/profile
 }
@@ -205,7 +224,11 @@ emerge_world(){
        emerge -C \<$(emerge -pq --nodeps sys-devel/gcc --exclude sys-freebsd/* 
| grep ebuild | awk '{print $4}') && :
        gcc-config $(gcc-config -l | grep "${TARGETVER}" | awk '{print $1}' | 
sed 's:\[::g' | sed 's:\]::g' | tail -n 1)
        source /etc/profile
-       emerge -e @world --exclude dev-perl/libintl-perl
+       if [[ ${REMOVEPERL} -ne 0 ]] ; then
+               emerge -e @world --exclude dev-perl/libintl-perl
+       else
+               emerge -e @world
+       fi
        emerge -C dev-lang/python:3.2 && :
        emerge -C '<sys-devel/binutils-2.28.1' && :
        emerge @preserved-rebuild
@@ -215,6 +238,7 @@ emerge_world(){
 
 cleanup(){
        emerge sys-devel/libtool app-admin/eselect
+       [[ -e /etc/portage/package.unmask/toolchain-oldversion ]] && rm 
/etc/portage/package.unmask/toolchain-oldversion
        echo "done!"
 }
 

Reply via email to