mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2025-02-21 10:02:26 +00:00
Enable ld to build for RCE. This is not tested yet!
This commit is contained in:
parent
f2e492a14a
commit
fb14975b70
@ -106,7 +106,7 @@ else
|
||||
done
|
||||
fi
|
||||
|
||||
rce_files="configure.in"
|
||||
rce_files="configure.in Makefile.in"
|
||||
|
||||
if ( echo $* | grep keep\-rce > /dev/null ) ; then
|
||||
for i in $rce_files ; do
|
||||
|
@ -459,6 +459,11 @@ ens32knbsd.c: $(srcdir)/emulparams/ns32knbsd.sh \
|
||||
esparcnbsd.c: $(srcdir)/emulparams/sparcnbsd.sh \
|
||||
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
||||
${GENSCRIPTS} sparcnbsd
|
||||
# start-santize-rce
|
||||
erce.c: $(srcdir)/emulparams/rce.sh \
|
||||
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/rce.sc ${GEN_DEPENDS}
|
||||
${GENSCRIPTS} rce
|
||||
# end-santize-rce
|
||||
|
||||
$(LD_PROG): $(OFILES) $(BFDLIB) $(LIBIBERTY)
|
||||
$(CC) $(CFLAGS) $(LDFLAGS) -o $(LD_PROG) $(OFILES) $(BFDLIB) $(LIBIBERTY) $(EXTRALIBS)
|
||||
|
@ -1 +1 @@
|
||||
EMUL=sopaout
|
||||
EMUL=rce
|
||||
|
@ -15,6 +15,13 @@
|
||||
|
||||
Do-first:
|
||||
|
||||
rce_files="rce.sh"
|
||||
|
||||
if ( echo $* | grep keep\-rce > /dev/null ) ; then
|
||||
keep_these_too="${rce_files} ${keep_these_too}"
|
||||
else
|
||||
lose_these_too="${rce_files} ${lose_these_too}"
|
||||
fi
|
||||
|
||||
# All files listed between the "Things-to-keep:" line and the
|
||||
# "Do-last:" line will be kept. All other files will be removed.
|
||||
|
5
ld/emulparams/rce.sh
Normal file
5
ld/emulparams/rce.sh
Normal file
@ -0,0 +1,5 @@
|
||||
SCRIPT_NAME=rce
|
||||
OUTPUT_FORMAT="aout-rce"
|
||||
TEXT_START_ADDR=0x8000
|
||||
PAGE_SIZE=128
|
||||
ARCH=rce
|
@ -15,6 +15,13 @@
|
||||
|
||||
Do-first:
|
||||
|
||||
rce_files="rce.sc"
|
||||
|
||||
if ( echo $* | grep keep\-rce > /dev/null ) ; then
|
||||
keep_these_too="${rce_files} ${keep_these_too}"
|
||||
else
|
||||
lose_these_too="${rce_files} ${lose_these_too}"
|
||||
fi
|
||||
|
||||
# All files listed between the "Things-to-keep:" line and the
|
||||
# "Do-last:" line will be kept. All other files will be removed.
|
||||
|
54
ld/scripttempl/rce.sc
Normal file
54
ld/scripttempl/rce.sc
Normal file
@ -0,0 +1,54 @@
|
||||
cat <<EOF
|
||||
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
|
||||
OUTPUT_ARCH(${ARCH})
|
||||
|
||||
MEMORY {
|
||||
ram : o = 0x1000, l = 512k
|
||||
}
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.text :
|
||||
{
|
||||
*(.text)
|
||||
*(.strings)
|
||||
${RELOCATING+ _etext = . ; }
|
||||
} ${RELOCATING+ > ram}
|
||||
|
||||
|
||||
.tors : {
|
||||
___ctors = . ;
|
||||
*(.ctors)
|
||||
___ctors_end = . ;
|
||||
___dtors = . ;
|
||||
*(.dtors)
|
||||
___dtors_end = . ;
|
||||
} ${RELOCATING+ > ram}
|
||||
|
||||
.data :
|
||||
{
|
||||
*(.data)
|
||||
${RELOCATING+ _edata = . ; }
|
||||
} ${RELOCATING+ > ram}
|
||||
.bss :
|
||||
{
|
||||
${RELOCATING+ _bss_start = . ; }
|
||||
*(.bss)
|
||||
*(COMMON)
|
||||
${RELOCATING+ _end = . ; }
|
||||
} ${RELOCATING+ >ram}
|
||||
.stack ${RELOCATING+ 0x30000 } :
|
||||
{
|
||||
${RELOCATING+ _stack = . ; }
|
||||
*(.stack)
|
||||
} ${RELOCATING+ > ram}
|
||||
.stab 0 ${RELOCATING+(NOLOAD)} :
|
||||
{
|
||||
[ .stab ]
|
||||
}
|
||||
.stabstr 0 ${RELOCATING+(NOLOAD)} :
|
||||
{
|
||||
[ .stabstr ]
|
||||
}
|
||||
}
|
||||
EOF
|
Loading…
x
Reference in New Issue
Block a user