Convert to ELF.

PR:		8090
Submitted by:	Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
This commit is contained in:
Steve Price 1998-10-10 04:37:24 +00:00
parent 0369843639
commit 686c761517
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=13832
8 changed files with 256 additions and 64 deletions

View File

@ -1,33 +1,69 @@
--- src/s/freebsd.h.orig Sun Jun 9 13:14:32 1996
+++ src/s/freebsd.h Wed Dec 3 17:36:40 1997
@@ -33,9 +33,16 @@
--- orig/s/freebsd.h Mon Jun 10 05:14:32 1996
+++ src/s/freebsd.h Tue Sep 29 11:35:32 1998
@@ -1,5 +1,15 @@
/* s/ file for freebsd system. */
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
-#define LIBS_TERMCAP -ltermcap
#define LIB_GCC -lgcc
+#ifdef HAVE_LIBNCURSES
+#define TERMINFO
+#define LIBS_TERMCAP -lncurses
+/* Get the correct __FreeBSD_version, even if this is before that was
+ defined. */
+#ifndef __FreeBSD__
+#define __FreeBSD_version 199401
+#elif __FreeBSD__ == 1
+#define __FreeBSD_version 199405
+#else
+#define LIBS_TERMCAP -ltermcap
+#include <osreldate.h>
+#endif
+
+
/* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up.
Earlier versions do not have shared libraries, so inhibit them.
You can inhibit them on newer systems if you wish
@@ -34,7 +44,6 @@
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
#define LIBS_TERMCAP -ltermcap
-#define LIB_GCC -lgcc
#define SYSV_SYSTEM_DIR
/* freebsd has POSIX-style pgrp behavior. */
@@ -46,7 +53,7 @@
@@ -42,12 +51,28 @@
#undef BSD_PGRPS
#define GETPGRP_NO_ARG
+#ifdef __ELF__
+
+#define LD_SWITCH_SYSTEM
+#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
+#define UNEXEC unexelf.o
+#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
+#undef LIB_GCC
+#define LIB_GCC
+
+#else /* not __ELF__ */
+
#ifndef NO_SHARED_LIBS
#define LD_SWITCH_SYSTEM -e start -dc -dp
#define HAVE_TEXT_START /* No need to define `start_of_text'. */
+#if __FreeBSD_version >= 300002
+#define START_FILES pre-crt0.o /usr/lib/aout/crt0.o
+#else /* __FreeBSD_version < 300002 */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
-#define UNEXEC unexsunos4.o
+#endif /* __FreeBSD_version < 300002 */
+#define UNEXEC unexfreebsd.o
#define RUN_TIME_REMAP
+#define LIB_GCC -lgcc
#ifndef N_TRELOFF
@@ -80,6 +87,8 @@
#define N_PAGSIZ(x) __LDPGSZ
@@ -63,6 +88,8 @@
#endif /* __FreeBSD__ */
#endif /* NO_SHARED_LIBS */
+#endif /* not __ELF__ */
+
#define HAVE_WAIT_HEADER
#define HAVE_GETLOADAVG
/*#define HAVE_GETPAGESIZE /* configure now puts this in config.h */
@@ -80,6 +107,8 @@
#define BSD 199103
#elif __FreeBSD__ == 2
#define BSD 199306

View File

@ -0,0 +1,12 @@
--- orig/unexelf.c Wed Jul 17 07:39:03 1996
+++ src/unexelf.c Wed Sep 30 09:35:47 1998
@@ -845,7 +845,9 @@
for (; symp < symendp; symp ++)
if (strcmp ((char *) (symnames + symp->st_name), "_end") == 0
- || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0)
+ || strcmp ((char *) (symnames + symp->st_name), "end") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "edata") == 0)
memcpy (&symp->st_value, &new_bss_addr, sizeof (new_bss_addr));
}

View File

@ -1,33 +1,69 @@
--- src/s/freebsd.h.orig Sun Jun 9 13:14:32 1996
+++ src/s/freebsd.h Wed Dec 3 17:36:40 1997
@@ -33,9 +33,16 @@
--- orig/s/freebsd.h Mon Jun 10 05:14:32 1996
+++ src/s/freebsd.h Tue Sep 29 11:35:32 1998
@@ -1,5 +1,15 @@
/* s/ file for freebsd system. */
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
-#define LIBS_TERMCAP -ltermcap
#define LIB_GCC -lgcc
+#ifdef HAVE_LIBNCURSES
+#define TERMINFO
+#define LIBS_TERMCAP -lncurses
+/* Get the correct __FreeBSD_version, even if this is before that was
+ defined. */
+#ifndef __FreeBSD__
+#define __FreeBSD_version 199401
+#elif __FreeBSD__ == 1
+#define __FreeBSD_version 199405
+#else
+#define LIBS_TERMCAP -ltermcap
+#include <osreldate.h>
+#endif
+
+
/* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up.
Earlier versions do not have shared libraries, so inhibit them.
You can inhibit them on newer systems if you wish
@@ -34,7 +44,6 @@
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
#define LIBS_TERMCAP -ltermcap
-#define LIB_GCC -lgcc
#define SYSV_SYSTEM_DIR
/* freebsd has POSIX-style pgrp behavior. */
@@ -46,7 +53,7 @@
@@ -42,12 +51,28 @@
#undef BSD_PGRPS
#define GETPGRP_NO_ARG
+#ifdef __ELF__
+
+#define LD_SWITCH_SYSTEM
+#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
+#define UNEXEC unexelf.o
+#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
+#undef LIB_GCC
+#define LIB_GCC
+
+#else /* not __ELF__ */
+
#ifndef NO_SHARED_LIBS
#define LD_SWITCH_SYSTEM -e start -dc -dp
#define HAVE_TEXT_START /* No need to define `start_of_text'. */
+#if __FreeBSD_version >= 300002
+#define START_FILES pre-crt0.o /usr/lib/aout/crt0.o
+#else /* __FreeBSD_version < 300002 */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
-#define UNEXEC unexsunos4.o
+#endif /* __FreeBSD_version < 300002 */
+#define UNEXEC unexfreebsd.o
#define RUN_TIME_REMAP
+#define LIB_GCC -lgcc
#ifndef N_TRELOFF
@@ -80,6 +87,8 @@
#define N_PAGSIZ(x) __LDPGSZ
@@ -63,6 +88,8 @@
#endif /* __FreeBSD__ */
#endif /* NO_SHARED_LIBS */
+#endif /* not __ELF__ */
+
#define HAVE_WAIT_HEADER
#define HAVE_GETLOADAVG
/*#define HAVE_GETPAGESIZE /* configure now puts this in config.h */
@@ -80,6 +107,8 @@
#define BSD 199103
#elif __FreeBSD__ == 2
#define BSD 199306

View File

@ -0,0 +1,12 @@
--- orig/unexelf.c Wed Jul 17 07:39:03 1996
+++ src/unexelf.c Wed Sep 30 09:35:47 1998
@@ -845,7 +845,9 @@
for (; symp < symendp; symp ++)
if (strcmp ((char *) (symnames + symp->st_name), "_end") == 0
- || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0)
+ || strcmp ((char *) (symnames + symp->st_name), "end") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "edata") == 0)
memcpy (&symp->st_value, &new_bss_addr, sizeof (new_bss_addr));
}

View File

@ -1,33 +1,69 @@
--- src/s/freebsd.h.orig Sun Jun 9 13:14:32 1996
+++ src/s/freebsd.h Wed Dec 3 17:36:40 1997
@@ -33,9 +33,16 @@
--- orig/s/freebsd.h Mon Jun 10 05:14:32 1996
+++ src/s/freebsd.h Tue Sep 29 11:35:32 1998
@@ -1,5 +1,15 @@
/* s/ file for freebsd system. */
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
-#define LIBS_TERMCAP -ltermcap
#define LIB_GCC -lgcc
+#ifdef HAVE_LIBNCURSES
+#define TERMINFO
+#define LIBS_TERMCAP -lncurses
+/* Get the correct __FreeBSD_version, even if this is before that was
+ defined. */
+#ifndef __FreeBSD__
+#define __FreeBSD_version 199401
+#elif __FreeBSD__ == 1
+#define __FreeBSD_version 199405
+#else
+#define LIBS_TERMCAP -ltermcap
+#include <osreldate.h>
+#endif
+
+
/* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up.
Earlier versions do not have shared libraries, so inhibit them.
You can inhibit them on newer systems if you wish
@@ -34,7 +44,6 @@
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
#define LIBS_TERMCAP -ltermcap
-#define LIB_GCC -lgcc
#define SYSV_SYSTEM_DIR
/* freebsd has POSIX-style pgrp behavior. */
@@ -46,7 +53,7 @@
@@ -42,12 +51,28 @@
#undef BSD_PGRPS
#define GETPGRP_NO_ARG
+#ifdef __ELF__
+
+#define LD_SWITCH_SYSTEM
+#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
+#define UNEXEC unexelf.o
+#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
+#undef LIB_GCC
+#define LIB_GCC
+
+#else /* not __ELF__ */
+
#ifndef NO_SHARED_LIBS
#define LD_SWITCH_SYSTEM -e start -dc -dp
#define HAVE_TEXT_START /* No need to define `start_of_text'. */
+#if __FreeBSD_version >= 300002
+#define START_FILES pre-crt0.o /usr/lib/aout/crt0.o
+#else /* __FreeBSD_version < 300002 */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
-#define UNEXEC unexsunos4.o
+#endif /* __FreeBSD_version < 300002 */
+#define UNEXEC unexfreebsd.o
#define RUN_TIME_REMAP
+#define LIB_GCC -lgcc
#ifndef N_TRELOFF
@@ -80,6 +87,8 @@
#define N_PAGSIZ(x) __LDPGSZ
@@ -63,6 +88,8 @@
#endif /* __FreeBSD__ */
#endif /* NO_SHARED_LIBS */
+#endif /* not __ELF__ */
+
#define HAVE_WAIT_HEADER
#define HAVE_GETLOADAVG
/*#define HAVE_GETPAGESIZE /* configure now puts this in config.h */
@@ -80,6 +107,8 @@
#define BSD 199103
#elif __FreeBSD__ == 2
#define BSD 199306

View File

@ -0,0 +1,12 @@
--- orig/unexelf.c Wed Jul 17 07:39:03 1996
+++ src/unexelf.c Wed Sep 30 09:35:47 1998
@@ -845,7 +845,9 @@
for (; symp < symendp; symp ++)
if (strcmp ((char *) (symnames + symp->st_name), "_end") == 0
- || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0)
+ || strcmp ((char *) (symnames + symp->st_name), "end") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "edata") == 0)
memcpy (&symp->st_value, &new_bss_addr, sizeof (new_bss_addr));
}

View File

@ -1,33 +1,69 @@
--- src/s/freebsd.h.orig Sun Jun 9 13:14:32 1996
+++ src/s/freebsd.h Wed Dec 3 17:36:40 1997
@@ -33,9 +33,16 @@
--- orig/s/freebsd.h Mon Jun 10 05:14:32 1996
+++ src/s/freebsd.h Tue Sep 29 11:35:32 1998
@@ -1,5 +1,15 @@
/* s/ file for freebsd system. */
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
-#define LIBS_TERMCAP -ltermcap
#define LIB_GCC -lgcc
+#ifdef HAVE_LIBNCURSES
+#define TERMINFO
+#define LIBS_TERMCAP -lncurses
+/* Get the correct __FreeBSD_version, even if this is before that was
+ defined. */
+#ifndef __FreeBSD__
+#define __FreeBSD_version 199401
+#elif __FreeBSD__ == 1
+#define __FreeBSD_version 199405
+#else
+#define LIBS_TERMCAP -ltermcap
+#include <osreldate.h>
+#endif
+
+
/* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up.
Earlier versions do not have shared libraries, so inhibit them.
You can inhibit them on newer systems if you wish
@@ -34,7 +44,6 @@
#define LIBS_DEBUG
#define LIBS_SYSTEM -lutil
#define LIBS_TERMCAP -ltermcap
-#define LIB_GCC -lgcc
#define SYSV_SYSTEM_DIR
/* freebsd has POSIX-style pgrp behavior. */
@@ -46,7 +53,7 @@
@@ -42,12 +51,28 @@
#undef BSD_PGRPS
#define GETPGRP_NO_ARG
+#ifdef __ELF__
+
+#define LD_SWITCH_SYSTEM
+#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
+#define UNEXEC unexelf.o
+#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
+#undef LIB_GCC
+#define LIB_GCC
+
+#else /* not __ELF__ */
+
#ifndef NO_SHARED_LIBS
#define LD_SWITCH_SYSTEM -e start -dc -dp
#define HAVE_TEXT_START /* No need to define `start_of_text'. */
+#if __FreeBSD_version >= 300002
+#define START_FILES pre-crt0.o /usr/lib/aout/crt0.o
+#else /* __FreeBSD_version < 300002 */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
-#define UNEXEC unexsunos4.o
+#endif /* __FreeBSD_version < 300002 */
+#define UNEXEC unexfreebsd.o
#define RUN_TIME_REMAP
+#define LIB_GCC -lgcc
#ifndef N_TRELOFF
@@ -80,6 +87,8 @@
#define N_PAGSIZ(x) __LDPGSZ
@@ -63,6 +88,8 @@
#endif /* __FreeBSD__ */
#endif /* NO_SHARED_LIBS */
+#endif /* not __ELF__ */
+
#define HAVE_WAIT_HEADER
#define HAVE_GETLOADAVG
/*#define HAVE_GETPAGESIZE /* configure now puts this in config.h */
@@ -80,6 +107,8 @@
#define BSD 199103
#elif __FreeBSD__ == 2
#define BSD 199306

View File

@ -0,0 +1,12 @@
--- orig/unexelf.c Wed Jul 17 07:39:03 1996
+++ src/unexelf.c Wed Sep 30 09:35:47 1998
@@ -845,7 +845,9 @@
for (; symp < symendp; symp ++)
if (strcmp ((char *) (symnames + symp->st_name), "_end") == 0
- || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0)
+ || strcmp ((char *) (symnames + symp->st_name), "end") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0
+ || strcmp ((char *) (symnames + symp->st_name), "edata") == 0)
memcpy (&symp->st_value, &new_bss_addr, sizeof (new_bss_addr));
}