mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-26 11:33:45 +08:00
* ldexp.h, ldlang.h: Change enum boolean -> enum bfd_boolean.
* ldtemplate: Remove ldfile_add_library_path calls; just use the SEARCH_DIR commands in the script files. * Makefile.in: Add LIB_PATH macro, which if set is used to replace the SEARCH_DIR commands in the scripts (using ugly sed magic). This is primarily intended for cross-linking, where you would place libaries in a different place than native libraries. Also, emulations made from ldtemplate now use $(srcdir). * ldglda29k.sc: Change SEARCH_DIR commands to a conventional form; people can use the Makefile's LIB_PATH to override.
This commit is contained in:
parent
b7de6963d4
commit
ee17cac9c6
@ -14,6 +14,12 @@ bindir = $(prefix)/bin
|
||||
libdir = $(prefix)/lib
|
||||
libsubdir = $(libdir)/gcc/$(target)/$(version)
|
||||
|
||||
# Seach path to override the default search path for -lfoo libraries.
|
||||
# If LIB_PATH is empty, the ones in the script (if any) are left alone.
|
||||
# Otherwise, they are replaced with the ones given in LIB_PATH,
|
||||
# which may have the form: LIB_PATH=/lib:/usr/local/lib
|
||||
LIB_PATH =
|
||||
|
||||
INSTALL = install -c
|
||||
INSTALL_PROGRAM = $(INSTALL)
|
||||
INSTALL_FILE = $(INSTALL)
|
||||
@ -68,7 +74,12 @@ SED_REMOVE_CONSTRUCTORS= -e /CONSTRUCTORS/d
|
||||
# Each .sc .scr or .scu script is filtered by mkscript
|
||||
# into a string literal that can be included in a .c program.
|
||||
.sc.x:
|
||||
./mkscript < $< >$*.x
|
||||
if [ "x"$(LIB_PATH) = "x" ]; then ./mkscript < $< >$*.x ; \
|
||||
else \
|
||||
(sed <$< -e '/SEARCH_DIR(.*)/d' ; \
|
||||
echo $(LIB_PATH) | tr ':' ' ' | sed -e 's/\([^ ][^ ]*\)/SEARCH_DIR(\1);/g';) | ./mkscript >$*.x;\
|
||||
fi
|
||||
# ./mkscript < $< >$*.x
|
||||
.scu.xu:
|
||||
./mkscript < $< >$*.xu
|
||||
.scr.xr:
|
||||
@ -120,21 +131,21 @@ ldlex.c: ldlex.l
|
||||
lex -t $(VPATH)/ldlex.l >ldlex.c
|
||||
|
||||
|
||||
ldgld.c: ldtemplate
|
||||
ldgld.c: $(srcdir)/ldtemplate
|
||||
sed -e s/"<ldtarget>"/ldgld/g -e s/"<arch>"/m68k/g \
|
||||
-e s/"<target>"//g -e s/"<TARGET>"//g < ldtemplate > ldgld.c
|
||||
news.c: ldtemplate
|
||||
-e s/"<target>"//g -e s/"<TARGET>"//g <$< >$@
|
||||
news.c: $(srcdir)/ldtemplate
|
||||
sed -e s/"<ldtarget>"/news/g -e s/"<arch>"/m68k/g \
|
||||
-e s/"<target>"/news/g -e s/"<TARGET>"/NEWS/g < ldtemplate > news.c
|
||||
ldgld68k.c: ldtemplate
|
||||
-e s/"<target>"/news/g -e s/"<TARGET>"/NEWS/g <$< >$@
|
||||
ldgld68k.c: $(srcdir)/ldtemplate
|
||||
sed -e s/"<ldtarget>"/ldgld68k/g -e s/"<arch>"/m68k/g \
|
||||
-e s/"<target>"/68k/g -e s/"<TARGET>"/68K/g < ldtemplate > ldgld68k.c
|
||||
ldglda29k.c: ldtemplate
|
||||
-e s/"<target>"/68k/g -e s/"<TARGET>"/68K/g <$< >$@
|
||||
ldglda29k.c: $(srcdir)/ldtemplate
|
||||
sed -e s/"<ldtarget>"/ldglda29k/g -e s/"<arch>"/a29k/g \
|
||||
-e s/"<target>"/29k/g -e s/"<TARGET>"/29K/g < ldtemplate > ldglda29k.c
|
||||
ldm88k.c: ldtemplate
|
||||
-e s/"<target>"/29k/g -e s/"<TARGET>"/29K/g <$< >$@
|
||||
ldm88k.c: $(srcdir)/ldtemplate
|
||||
sed -e s/"<ldtarget>"/ldm88k/g -e s/"<arch>"/m88k/g \
|
||||
-e s/"<target>"/m88kbcs/g -e s/"<TARGET>"/M88KBCS/g < ldtemplate > ldm88k.c
|
||||
-e s/"<target>"/m88kbcs/g -e s/"<TARGET>"/M88KBCS/g <$< >$@
|
||||
|
||||
# The .c files for these are generated from ldtemplete.
|
||||
ldgld.o: ./mkscript ldgld.x ldgld.xr ldgld.xu
|
||||
|
@ -1,8 +1,8 @@
|
||||
OUTPUT_FORMAT("coff-a29k-big")
|
||||
INPUT(/lab3/u3/sym1/tools/usr/lib/segments.o) /* Has .rstack/.mstack */
|
||||
SEARCH_DIR(/lab3/u3/sym1/tools/lib)
|
||||
SEARCH_DIR(/lab3/u3/sym1/tools/usr/lib)
|
||||
SEARCH_DIR(/lab3/u3/sym1/tools/usr/local/lib)
|
||||
SEARCH_DIR(/lib)
|
||||
SEARCH_DIR(/usr/lib)
|
||||
SEARCH_DIR(/usr/local/lib)
|
||||
MEMORY {
|
||||
text : ORIGIN = 0x1000000, LENGTH = 0x1000000
|
||||
talias : ORIGIN = 0x2000000, LENGTH = 0x1000000
|
||||
|
@ -61,9 +61,6 @@ static void gld<target>_before_parse()
|
||||
extern char lprefix;
|
||||
lprefix = '@';
|
||||
#else
|
||||
ldfile_add_library_path("/lib");
|
||||
ldfile_add_library_path("/usr/lib");
|
||||
ldfile_add_library_path("/usr/local/lib");
|
||||
#ifndef TARGET_ /* I.e., if not generic */
|
||||
ldfile_output_architecture = bfd_arch_<arch>;
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user