diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-03-01 22:06:52 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-03-01 22:06:52 +0000 |
commit | f43b3b289ca47993cd2038dbcf816c8772ce16c5 (patch) | |
tree | 3432c876e72543bbc0ccec9e6567231e939bb0da | |
parent | f568755cb924a25e62efdcd4888ca2c027cd4013 (diff) | |
download | portage-f43b3b289ca47993cd2038dbcf816c8772ce16c5.tar.gz portage-f43b3b289ca47993cd2038dbcf816c8772ce16c5.tar.bz2 portage-f43b3b289ca47993cd2038dbcf816c8772ce16c5.zip |
Add compatibility code to avoid the GNU specific --reference option of chmod. Thanks to Timothy Redaelli <drizzt@gentoo.org>.
svn path=/main/trunk/; revision=6115
-rwxr-xr-x | bin/etc-update | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/bin/etc-update b/bin/etc-update index 858a6b98c..c1569ff12 100755 --- a/bin/etc-update +++ b/bin/etc-update @@ -386,7 +386,11 @@ Please select from the menu above (-1 to exit, losing this merge): " my_input=$(read_int) case ${my_input} in 1) echo "Replacing ${ofile} with ${mfile}" - chmod --reference=${ofile} ${mfile} + if [[ ${USERLAND} == GNU ]]; then + chmod --reference="${ofile}" "${mfile}" + else + chmod $(stat -f %Mp%Lp "${ofile}") "${mfile}" + fi mv ${mv_opts} ${mfile} ${ofile} rm ${rm_opts} ${file} return 255 @@ -437,7 +441,7 @@ trap die term eval $(/usr/lib/portage/bin/portageq envvar -v CONFIG_PROTECT \ - CONFIG_PROTECT_MASK PORTAGE_CONFIGROOT PORTAGE_TMPDIR ROOT) + CONFIG_PROTECT_MASK PORTAGE_CONFIGROOT PORTAGE_TMPDIR ROOT USERLAND) export PORTAGE_TMPDIR [ -w ${PORTAGE_CONFIGROOT}etc ] || die "Need write access to ${PORTAGE_CONFIGROOT}etc" 1 |