This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
Re: [PATCH] Blackfin hardware boards support (1/7)
Jeff Johnston wrote:
Jie Zhang wrote:
And do you still want me to submit the patch to install the merged
linker scripts?
It's a usability issue so ultimately it is up to you. I think it would
be easier for your end-users unless you are going to have the compiler
do it for them automatically once they specify the board via an option.
I think this is a good idea. Here is the patch for libgloss to install
merged linker scripts for Blackfin. There is another patch to make
changes accordingly on gcc side. Both patches have to be checked in or
neither can be checked in. If you think this patch is OK, I'll send out
the gcc patch to gcc mailing list. We can install them when the gcc one
is approved.
Jie
2008-08-20 Jie Zhang <jie.zhang@analog.com>
* bfin/Makefile.in (BOARD_SCRIPTS): Replace it ...
(SC_BOARD_SCRIPTS, MC_BOARD_SCRIPTS, SC_COMMON_SCRIPT,
MC_COMMON_SCRIPT): ... with these.
(install-board): Install merged linker scripts.
Index: bfin/Makefile.in
===================================================================
--- bfin/Makefile.in (revision 2771)
+++ bfin/Makefile.in (working copy)
@@ -60,14 +60,16 @@
SIM_INSTALL = install-sim
# Here is all of the development board stuff
-# BF531, BF532, BF533, BF537
-BOARD_SCRIPTS = bfin-common-sc.ld bfin-common-mc.ld \
- bf522.ld bf523.ld bf524.ld bf525.ld bf526.ld bf527.ld \
+SC_BOARD_SCRIPTS = bf522.ld bf523.ld bf524.ld bf525.ld bf526.ld bf527.ld \
bf531.ld bf532.ld bf533.ld \
bf534.ld bf536.ld bf537.ld \
bf538.ld bf539.ld \
bf542.ld bf544.ld bf547.ld bf548.ld bf549.ld \
- bf561.ld bf561a.ld bf561b.ld bf561m.ld
+ bf561.ld
+MC_BOARD_SCRIPTS = bf561a.ld bf561b.ld bf561m.ld
+SC_COMMON_SCRIPT = bfin-common-sc.ld
+MC_COMMON_SCRIPT = bfin-common-mc.ld
+
BOARD_LDFLAGS =
BOARD_BSP = # We actually use libnosys.a
BOARD_CRT0S = basiccrt.o basiccrts.o
@@ -153,9 +155,14 @@
${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
done
-if [ -z "${MULTISUBDIR}" ]; then \
- for x in ${BOARD_SCRIPTS}; do \
+ for x in ${SC_BOARD_SCRIPTS}; do \
${INSTALL_DATA} ${srcdir}/$$x $(DESTDIR)${tooldir}/lib/$$x; \
+ cat ${srcdir}/${SC_COMMON_SCRIPT} >> $(DESTDIR)${tooldir}/lib/$$x; \
done; \
+ for x in ${MC_BOARD_SCRIPTS}; do \
+ ${INSTALL_DATA} ${srcdir}/$$x $(DESTDIR)${tooldir}/lib/$$x; \
+ cat ${srcdir}/${MC_COMMON_SCRIPT} >> $(DESTDIR)${tooldir}/lib/$$x; \
+ done; \
${mkinstalldirs} ${DESTDIR}${tooldir}/include; \
for i in ${srcdir}/include/*.h; do \
${INSTALL_DATA} $$i ${DESTDIR}${tooldir}/include/`basename $$i`; \