mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-09 04:21:49 +08:00
eb8061bf35
* deffile.h: New file; direct support for PE DLLs * deffilep.y: New file; direct support for PE DLLs * emultempl/pe.em: add direct support for PE DLLs * configure.tgt: allow target-specific extra files * configure.in: allow target-specific extra files * ldlang.c (lang_add_assignment): return the assignment so that one can change the value later based on the object files (pe-dll DEF files do this) * ldint.texinfo: add section for emulation walkthrough
407 lines
9.9 KiB
Plaintext
407 lines
9.9 KiB
Plaintext
# .Sanitize for devo/ld
|
|
|
|
# Each directory to survive its way into a release will need a file
|
|
# like this one called "./.Sanitize". All keyword lines must exist,
|
|
# and must exist in the order specified by this file. Each directory
|
|
# in the tree will be processed, top down, in the following order.
|
|
|
|
# Hash started lines like this one are comments and will be deleted
|
|
# before anything else is done. Blank lines will also be squashed
|
|
# out.
|
|
|
|
# The lines between the "Do-first:" line and the "Things-to-keep:"
|
|
# line are executed as a /bin/sh shell script before anything else is
|
|
# done in this directory.
|
|
|
|
Do-first:
|
|
|
|
# Remember the current lists of files in the subdirectories from which
|
|
# we might remove files.
|
|
if test -d emulparams; then
|
|
ld_emulparams_files=`cd emulparams; echo *`
|
|
else
|
|
ld_emulparams_files=
|
|
fi
|
|
if test -d emultempl; then
|
|
ld_emultempl_files=`cd emultempl; echo *`
|
|
else
|
|
ld_emultempl_files=
|
|
fi
|
|
if test -d scripttempl; then
|
|
ld_scripttempl_files=`cd scripttempl; echo *`
|
|
else
|
|
ld_scripttempl_files=
|
|
fi
|
|
|
|
# All files listed between the "Things-to-keep:" line and the
|
|
# "Do-last:" line will be kept. All other files will be removed.
|
|
# Directories listed in this section will have their own Sanitize
|
|
# called. Directories not listed will be removed in their entirety
|
|
# with rm -rf.
|
|
|
|
Things-to-keep:
|
|
|
|
ChangeLog
|
|
Makefile.am
|
|
Makefile.in
|
|
NEWS
|
|
README
|
|
TODO
|
|
acconfig.h
|
|
acinclude.m4
|
|
aclocal.m4
|
|
config.in
|
|
configure
|
|
configure.bat
|
|
configure.host
|
|
configure.in
|
|
configure.tgt
|
|
deffile.h
|
|
deffilep.y
|
|
dep-in.sed
|
|
emulparams
|
|
emultempl
|
|
gen-doc.texi
|
|
genscripts.sh
|
|
h8-doc.texi
|
|
ld.1
|
|
ld.h
|
|
ld.texinfo
|
|
ldcref.c
|
|
ldctor.c
|
|
ldctor.h
|
|
ldemul.c
|
|
ldemul.h
|
|
ldexp.c
|
|
ldexp.h
|
|
ldfile.c
|
|
ldfile.h
|
|
ldgram.y
|
|
ldint.texinfo
|
|
ldlang.c
|
|
ldlang.h
|
|
ldlex.h
|
|
ldlex.l
|
|
ldmain.c
|
|
ldmain.h
|
|
ldmisc.c
|
|
ldmisc.h
|
|
ldver.c
|
|
ldver.h
|
|
ldwrite.c
|
|
ldwrite.h
|
|
lexsup.c
|
|
mac-ld.r
|
|
mpw-config.in
|
|
mpw-elfmips.c
|
|
mpw-eppcmac.c
|
|
mpw-esh.c
|
|
mpw-idtmips.c
|
|
mpw-make.sed
|
|
mri.c
|
|
mri.h
|
|
pe-dll.c
|
|
po
|
|
scripttempl
|
|
stamp-h.in
|
|
sysdep.h
|
|
testsuite
|
|
|
|
Things-to-lose:
|
|
|
|
|
|
|
|
# The lines between the "Do-last:" line and the end of the file
|
|
# are executed as a /bin/sh shell script after everything else is
|
|
# done.
|
|
|
|
Do-last:
|
|
|
|
v850_files="ChangeLog configure.tgt Makefile.am Makefile.in"
|
|
if ( echo $* | grep keep\-v850e > /dev/null ) ; then
|
|
for i in $v850_files ; do
|
|
if test ! -d $i && (grep sanitize-v850e $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Keeping v850e stuff in $i
|
|
fi
|
|
fi
|
|
done
|
|
else
|
|
for i in $v850_files ; do
|
|
if test ! -d $i && (grep sanitize-v850e $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Removing traces of \"v850e\" from $i...
|
|
fi
|
|
cp $i new
|
|
sed '/start\-sanitize\-v850e/,/end-\sanitize\-v850e/d' < $i > new
|
|
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Caching $i in .Recover...
|
|
fi
|
|
mv $i .Recover
|
|
fi
|
|
mv new $i
|
|
fi
|
|
done
|
|
fi
|
|
|
|
tx49_files="ChangeLog configure.tgt"
|
|
if ( echo $* | grep keep\-tx49 > /dev/null ) ; then
|
|
for i in $tx49_files ; do
|
|
if test ! -d $i && (grep sanitize-tx49 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Keeping tx49 stuff in $i
|
|
fi
|
|
fi
|
|
done
|
|
else
|
|
for i in $tx49_files ; do
|
|
if test ! -d $i && (grep sanitize-tx49 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Removing traces of \"tx49\" from $i...
|
|
fi
|
|
cp $i new
|
|
sed '/start\-sanitize\-tx49/,/end-\sanitize\-tx49/d' < $i > new
|
|
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Caching $i in .Recover...
|
|
fi
|
|
mv $i .Recover
|
|
fi
|
|
mv new $i
|
|
fi
|
|
done
|
|
fi
|
|
|
|
r5900_files="ChangeLog configure.tgt Makefile.in Makefile.am"
|
|
if ( echo $* | grep keep\-r5900 > /dev/null ) ; then
|
|
for i in $r5900_files ; do
|
|
if test ! -d $i && (grep sanitize-r5900 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Keeping r5900 stuff in $i
|
|
fi
|
|
fi
|
|
done
|
|
else
|
|
for i in $r5900_files ; do
|
|
if test ! -d $i && (grep sanitize-r5900 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Removing traces of \"r5900\" from $i...
|
|
fi
|
|
cp $i new
|
|
sed '/start\-sanitize\-r5900/,/end-\sanitize\-r5900/d' < $i > new
|
|
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Caching $i in .Recover...
|
|
fi
|
|
mv $i .Recover
|
|
fi
|
|
mv new $i
|
|
fi
|
|
done
|
|
fi
|
|
|
|
vr4320_files="ChangeLog configure.tgt"
|
|
if ( echo $* | grep keep\-vr4320 > /dev/null ) ; then
|
|
for i in $vr4320_files ; do
|
|
if test ! -d $i && (grep sanitize-vr4320 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Keeping vr4320 stuff in $i
|
|
fi
|
|
fi
|
|
done
|
|
else
|
|
for i in $vr4320_files ; do
|
|
if test ! -d $i && (grep sanitize-vr4320 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Removing traces of \"vr4320\" from $i...
|
|
fi
|
|
cp $i new
|
|
sed '/start\-sanitize\-vr4320/,/end-\sanitize\-vr4320/d' < $i > new
|
|
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Caching $i in .Recover...
|
|
fi
|
|
mv $i .Recover
|
|
fi
|
|
mv new $i
|
|
fi
|
|
done
|
|
fi
|
|
|
|
tic80_files="ChangeLog configure.tgt Makefile.am Makefile.in"
|
|
if ( echo $* | grep keep\-tic80 > /dev/null ) ; then
|
|
for i in $tic80_files ; do
|
|
if test ! -d $i && (grep sanitize-tic80 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Keeping tic80 stuff in $i
|
|
fi
|
|
fi
|
|
done
|
|
else
|
|
for i in $tic80_files ; do
|
|
if test ! -d $i && (grep sanitize-tic80 $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Removing traces of \"tic80\" from $i...
|
|
fi
|
|
cp $i new
|
|
sed '/start\-sanitize\-tic80/,/end-\sanitize\-tic80/d' < $i > new
|
|
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Caching $i in .Recover...
|
|
fi
|
|
mv $i .Recover
|
|
fi
|
|
mv new $i
|
|
fi
|
|
done
|
|
fi
|
|
|
|
sky_files="ChangeLog configure.tgt"
|
|
if ( echo $* | grep keep\-sky > /dev/null ) ; then
|
|
for i in $sky_files ; do
|
|
if test ! -d $i && (grep sanitize-sky $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Keeping sky stuff in $i
|
|
fi
|
|
fi
|
|
done
|
|
else
|
|
for i in $sky_files ; do
|
|
if test ! -d $i && (grep sanitize-sky $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Removing traces of \"sky\" from $i...
|
|
fi
|
|
cp $i new
|
|
sed '/start\-sanitize\-sky/,/end-\sanitize\-sky/d' < $i > new
|
|
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Caching $i in .Recover...
|
|
fi
|
|
mv $i .Recover
|
|
fi
|
|
mv new $i
|
|
fi
|
|
done
|
|
fi
|
|
|
|
beos_files="ChangeLog Makefile.am Makefile.in configure.tgt"
|
|
if ( echo $* | grep keep\-beos > /dev/null ) ; then
|
|
for i in $beos_files ; do
|
|
if test ! -d $i && (grep sanitize-beos $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Keeping beos stuff in $i
|
|
fi
|
|
fi
|
|
done
|
|
else
|
|
for i in $beos_files ; do
|
|
if test ! -d $i && (grep sanitize-beos $i > /dev/null) ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Removing traces of \"beos\" from $i...
|
|
fi
|
|
cp $i new
|
|
sed '/start\-sanitize\-beos/,/end-\sanitize\-beos/d' < $i > new
|
|
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
|
|
if [ -n "${verbose}" ] ; then
|
|
echo Caching $i in .Recover...
|
|
fi
|
|
mv $i .Recover
|
|
fi
|
|
mv new $i
|
|
fi
|
|
done
|
|
fi
|
|
|
|
for i in * ; do
|
|
if test ! -d $i && (grep sanitize $i > /dev/null) ; then
|
|
echo '***' Some mentions of Sanitize are still left in ld/$i! 1>&2
|
|
fi
|
|
done
|
|
|
|
for lost in .. $ld_emulparams_files; do
|
|
if test $lost != .. && test $lost != CVS; then
|
|
if test -f emulparams/$lost; then
|
|
:
|
|
else
|
|
lost2=`echo $lost | sed -e 's/.sh$//'`
|
|
for i in Makefile.am Makefile.in configure.host configure.tgt configure.in configure; do
|
|
if fgrep $lost2 $i >/dev/null 2>&1; then
|
|
echo '***' File ld/emulparams/$lost was sanitized out but is still mentioned in ld/$i 1>&2
|
|
fi
|
|
done
|
|
fi
|
|
fi
|
|
done
|
|
|
|
for lost in .. $ld_emultempl_files; do
|
|
if test $lost != .. && test $lost != CVS; then
|
|
if test -f emultempl/$lost; then
|
|
:
|
|
else
|
|
lost2=`echo $lost | sed -e 's/.em$//'`
|
|
for i in Makefile.am Makefile.in configure.host configure.tgt configure.in configure; do
|
|
if fgrep $lost2 $i >/dev/null 2>&1; then
|
|
# There is a valid mention of beos in configure.tgt
|
|
if test $lost2 != "beos" || test $i != configure.tgt; then
|
|
echo '***' File ld/emultempl/$lost was sanitized out but is still mentioned in ld/$i 1>&2
|
|
fi
|
|
fi
|
|
done
|
|
if test -d emulparams; then
|
|
for i in emulparams/*; do
|
|
if fgrep $lost2 $i >/dev/null 2>&1; then
|
|
echo '***' File ld/emultempl/$lost was sanitized out but is still mentioned in ld/$i 1>&2
|
|
fi
|
|
done
|
|
fi
|
|
fi
|
|
fi
|
|
done
|
|
|
|
for lost in .. $ld_scripttempl_files; do
|
|
if test $lost != .. && test $lost != CVS; then
|
|
if test -f scripttempl/$lost; then
|
|
:
|
|
else
|
|
lost2=`echo $lost | sed -e 's/.sc$//'`
|
|
for i in Makefile.am Makefile.in configure.host configure.tgt configure.in configure; do
|
|
if fgrep $lost2 $i >/dev/null 2>&1; then
|
|
echo '***' File ld/scripttempl/$lost was sanitized out but is still mentioned in ld/$i 1>&2
|
|
fi
|
|
done
|
|
if test -d emulparams; then
|
|
for i in emulparams/*; do
|
|
if fgrep $lost2 $i >/dev/null 2>&1; then
|
|
echo '***' File ld/scripttempl/$lost was sanitized out but is still mentioned in ld/$i 1>&2
|
|
fi
|
|
done
|
|
fi
|
|
fi
|
|
fi
|
|
done
|
|
|
|
# This must come after all other sanitizations. Re-sanitize the .pot
|
|
# file.
|
|
if [ -n "${verbose}" ]; then
|
|
echo Re-computing files for gettext ...
|
|
fi
|
|
|
|
if [ -n "${safe}" -a ! -f po/.Recover/POTFILES.in ]; then
|
|
if [ -n "${verbose}" ]; then
|
|
echo Caching po/POTFILES.in in .Recover...
|
|
fi
|
|
mv po/POTFILES.in po/.Recover
|
|
fi
|
|
find . -name '*.[ch]' | sed -e 's,^\./,,' > po/POTFILES.in
|
|
|
|
if [ -n "${safe}" -a ! -f po/.Recover/ld.pot ]; then
|
|
if [ -n "${verbose}" ]; then
|
|
echo Caching po/ld.pot in .Recover...
|
|
fi
|
|
mv po/ld.pot po/.Recover
|
|
fi
|
|
# If this fails, Sanitization must fail.
|
|
xgettext -c -C -k_ -kN_ -f po/POTFILES.in -o po/ld.pot || exit 1
|
|
# eof
|