multisubdir=
else
multisubdir="/${with_multisubdir}"
- dotdot=`echo ${multisubdir} | sed -e 's:/[^/]*:../:g'`
+ # The '[^/][^/]*' appears that way to work around a SunOS sed bug.
+ dotdot=`echo ${with_multisubdir} | sed -e 's:[^/][^/]*:..:g'`
# TOP is used by newlib and should not be used elsewhere for this purpose.
- sed -e "s:^TOP[ ]*=[ ]*\([./]*\)[ ]*$:TOP = ${dotdot}\1:" \
- -e "s:^MULTITOP[ ]*=[ ]*\([./]*\)[ ]*$:MULTITOP = ${dotdot}\1:" \
+ # MULTITOP is the proper one to use.
+ # FIXME: newlib needs to be updated to use MULTITOP so we can delete TOP.
+ # Newlib may wish to continue to use TOP for its own purposes of course.
+ sed -e "s:^TOP[ ]*=[ ]*\([./]*\)[ ]*$:TOP = ${dotdot}/\1:" \
+ -e "s:^MULTITOP[ ]*=.*$:MULTITOP = ${dotdot}:" \
${Makefile} > Makefile.tem
rm -f ${Makefile}
mv Makefile.tem ${Makefile}
# and lists the subdirectories to recurse into.
# MULTISUBDIR is non-empty in each cpu subdirectory's Makefile
# (eg: newlib/h8300h/Makefile) and is the installed subdirectory name with
-# a trailing '/'.
+# a leading '/'.
# MULTIDO is used for targets like all, install, and check where
# $(FLAGS_TO_PASS) augmented with the subdir's compiler option is needed.
# MULTICLEAN is used for the *clean targets.
rm -f ${Makefile}
mv Makefile.tem ${Makefile}
+# ??? May wish to add a check to avoid appending this to Makefiles that
+# don't need it. It's not necessary, but is cleaner.
+
cat > Multi.tem <<\EOF
# FIXME: There should be an @-sign in front of the `if'.