diff options
author | marcel <marcel@FreeBSD.org> | 1999-12-23 19:59:47 +0000 |
---|---|---|
committer | marcel <marcel@FreeBSD.org> | 1999-12-23 19:59:47 +0000 |
commit | 95103d131256d6e42c877c35c6f106d54703473c (patch) | |
tree | df52ce78bc761eab64e099930da15e011289b385 /sys | |
parent | ed6a1fb0ef00f1388cfb6aebfd3157733fe49e4c (diff) | |
download | FreeBSD-src-95103d131256d6e42c877c35c6f106d54703473c.zip FreeBSD-src-95103d131256d6e42c877c35c6f106d54703473c.tar.gz |
Use genassym(1) and <sys/assym.h> to generate assembler symbols.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/alpha/linux/linux_genassym.c | 23 | ||||
-rw-r--r-- | sys/i386/linux/linux_genassym.c | 23 | ||||
-rw-r--r-- | sys/modules/linux/Makefile | 11 |
3 files changed, 13 insertions, 44 deletions
diff --git a/sys/alpha/linux/linux_genassym.c b/sys/alpha/linux/linux_genassym.c index 5d962a6..b555486 100644 --- a/sys/alpha/linux/linux_genassym.c +++ b/sys/alpha/linux/linux_genassym.c @@ -1,24 +1,11 @@ /* $FreeBSD$ */ +#include <sys/assym.h> #include <sys/param.h> #include <i386/linux/linux.h> -#define offsetof(type, member) ((size_t)(&((type *)0)->member)) -#define OS(s, m) ((u_int)offsetof(struct s, m)) - -int main __P((void)); -int printf __P((const char *, ...)); - -int -main() -{ - printf("#define\tLINUX_SIGF_HANDLER %u\n", - OS(linux_sigframe, sf_handler)); - printf("#define\tLINUX_SIGF_SC %u\n", OS(linux_sigframe, sf_sc)); - printf("#define\tLINUX_SC_GS %u\n", OS(linux_sigcontext, sc_gs)); - printf("#define\tLINUX_SC_EFLAGS %u\n", - OS(linux_sigcontext, sc_eflags)); - - return (0); -} +ASSYM(LINUX_SIGF_HANDLER, offsetof(linux_sigframe, sf_handler)); +ASSYM(LINUX_SIGF_SC, offsetof(linux_sigframe, sf_sc)); +ASSYM(LINUX_SC_GS, offsetof(linux_sigcontext, sc_gs)); +ASSYM(LINUX_SC_EFLAGS, offsetof(linux_sigcontext, sc_eflags)); diff --git a/sys/i386/linux/linux_genassym.c b/sys/i386/linux/linux_genassym.c index 5d962a6..b555486 100644 --- a/sys/i386/linux/linux_genassym.c +++ b/sys/i386/linux/linux_genassym.c @@ -1,24 +1,11 @@ /* $FreeBSD$ */ +#include <sys/assym.h> #include <sys/param.h> #include <i386/linux/linux.h> -#define offsetof(type, member) ((size_t)(&((type *)0)->member)) -#define OS(s, m) ((u_int)offsetof(struct s, m)) - -int main __P((void)); -int printf __P((const char *, ...)); - -int -main() -{ - printf("#define\tLINUX_SIGF_HANDLER %u\n", - OS(linux_sigframe, sf_handler)); - printf("#define\tLINUX_SIGF_SC %u\n", OS(linux_sigframe, sf_sc)); - printf("#define\tLINUX_SC_GS %u\n", OS(linux_sigcontext, sc_gs)); - printf("#define\tLINUX_SC_EFLAGS %u\n", - OS(linux_sigcontext, sc_eflags)); - - return (0); -} +ASSYM(LINUX_SIGF_HANDLER, offsetof(linux_sigframe, sf_handler)); +ASSYM(LINUX_SIGF_SC, offsetof(linux_sigframe, sf_sc)); +ASSYM(LINUX_SC_GS, offsetof(linux_sigcontext, sc_gs)); +ASSYM(LINUX_SC_EFLAGS, offsetof(linux_sigcontext, sc_eflags)); diff --git a/sys/modules/linux/Makefile b/sys/modules/linux/Makefile index 7c5a53e..1e7a5ce 100644 --- a/sys/modules/linux/Makefile +++ b/sys/modules/linux/Makefile @@ -14,12 +14,10 @@ MAN8= linux.8 # CFLAGS+= -DDEBUG EXPORT_SYMS=_linux_mod -CLEANFILES= linux_assym.h linux_genassym linux_genassym.o +CLEANFILES= linux_assym.h linux_genassym.o -build-tools: linux_genassym - -linux_assym.h: linux_genassym - ./linux_genassym > linux_assym.h +linux_assym.h: linux_genassym.o + genassym -o ${.TARGET} ${.ALLSRC} linux_locore.o: linux_locore.s linux_assym.h ${CC} -c -x assembler-with-cpp -DLOCORE -DKERNEL ${CFLAGS} \ @@ -28,9 +26,6 @@ linux_locore.o: linux_locore.s linux_assym.h linux_genassym.o: linux_genassym.c linux.h @ machine ${CC} -c ${CFLAGS} -UKERNEL ${.IMPSRC} -linux_genassym: linux_genassym.o - ${CC} -static ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.ALLSRC} - opt_compat.h: echo "#define COMPAT_43 1" > opt_compat.h |