[IA64] fix circular dependency on generation of asm-offsets.h

Fix?  One ugly hack is replaced by a different ugly hack.

Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:
Tony Luck 2005-09-13 08:50:39 -07:00
parent 2f4ba45a75
commit 82f1b07b9a
4 changed files with 11 additions and 11 deletions

View file

@ -82,17 +82,7 @@ unwcheck: vmlinux
archclean:
$(Q)$(MAKE) $(clean)=$(boot)
archprepare: include/asm-ia64/.offsets.h.stamp
include/asm-ia64/.offsets.h.stamp:
mkdir -p include/asm-ia64
[ -s include/asm-ia64/asm-offsets.h ] \
|| echo "#define IA64_TASK_SIZE 0" > include/asm-ia64/asm-offsets.h
touch $@
CLEAN_FILES += vmlinux.gz bootloader include/asm-ia64/.offsets.h.stamp
CLEAN_FILES += vmlinux.gz bootloader
boot: lib/lib.a vmlinux
$(Q)$(MAKE) $(build)=$(boot) $@

View file

@ -4,6 +4,7 @@
* to extract and format the required data.
*/
#define ASM_OFFSETS_C 1
#include <linux/config.h>
#include <linux/sched.h>

View file

@ -57,7 +57,9 @@
#include <linux/config.h>
#include <asm/fpu.h>
#ifndef ASM_OFFSETS_C
#include <asm/asm-offsets.h>
#endif
/*
* Base-2 logarithm of number of pages to allocate per task structure

View file

@ -5,7 +5,9 @@
#ifndef _ASM_IA64_THREAD_INFO_H
#define _ASM_IA64_THREAD_INFO_H
#ifndef ASM_OFFSETS_C
#include <asm/asm-offsets.h>
#endif
#include <asm/processor.h>
#include <asm/ptrace.h>
@ -51,9 +53,14 @@ struct thread_info {
}, \
}
#ifndef ASM_OFFSETS_C
/* how to get the thread information struct from C */
#define current_thread_info() ((struct thread_info *) ((char *) current + IA64_TASK_SIZE))
#define alloc_thread_info(tsk) ((struct thread_info *) ((char *) (tsk) + IA64_TASK_SIZE))
#else
#define current_thread_info() ((struct thread_info *) 0)
#define alloc_thread_info(tsk) ((struct thread_info *) 0)
#endif
#define free_thread_info(ti) /* nothing */
#define __HAVE_ARCH_TASK_STRUCT_ALLOCATOR