Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
70f72acb
Commit
70f72acb
authored
Jan 02, 2003
by
Richard Henderson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[ALPHA] Makefile cleanup from Sam Ravnborg <sam@ravnborg.org>.
parent
42ca459a
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
124 additions
and
166 deletions
+124
-166
arch/alpha/Makefile
arch/alpha/Makefile
+41
-55
arch/alpha/boot/Makefile
arch/alpha/boot/Makefile
+49
-72
arch/alpha/lib/Makefile
arch/alpha/lib/Makefile
+33
-38
arch/alpha/math-emu/Makefile
arch/alpha/math-emu/Makefile
+1
-1
No files found.
arch/alpha/Makefile
View file @
70f72acb
...
...
@@ -10,13 +10,17 @@
NM
:=
$(NM)
-B
LDFLAGS_vmlinux
=
-static
-N
#-relax
CFLAGS
:=
$(CFLAGS)
-pipe
-mno-fp-regs
-ffixed-8
LDFLAGS_BLOB
:=
--format
binary
--oformat
elf64-alpha
LDFLAGS_vmlinux
:
=
-static
-N
#-relax
LDFLAGS_BLOB
:=
--format
binary
--oformat
elf64-alpha
cflags-y
:=
-pipe
-mno-fp-regs
-ffixed-8
# Determine if we can use the BWX instructions with GAS.
old_gas
:=
$(
shell
if
$(AS)
--version
2>&1 |
grep
'version 2.7'
>
/dev/null
;
then
echo
y
;
else
echo
n
;
fi
)
ifeq
($(old_gas),y)
$(error
The
assembler
'$(AS)'
does
not
support
the
BWX
instruction)
endif
# Determine if GCC understands the -mcpu= option.
have_mcpu
:=
$(
shell
if
$(CC)
-mcpu
=
ev5
-S
-o
/dev/null
-xc
/dev/null
>
/dev/null 2>&1
;
then
echo
y
;
else
echo
n
;
fi
)
...
...
@@ -27,68 +31,64 @@ have_mcpu_ev6 := $(shell if $(CC) -mcpu=ev6 -S -o /dev/null -xc /dev/null > /dev
have_mcpu_ev67
:=
$(
shell
if
$(CC)
-mcpu
=
ev67
-S
-o
/dev/null
-xc
/dev/null
>
/dev/null 2>&1
;
then
echo
y
;
else
echo
n
;
fi
)
have_msmall_data
:=
$(
shell
if
$(CC)
-msmall-data
-S
-o
/dev/null
-xc
/dev/null
>
/dev/null 2>&1
;
then
echo
y
;
else
echo
n
;
fi
)
ifeq
($(have_msmall_data),y)
CFLAGS
:=
$(CFLAGS)
-msmall-data
endif
cflags-$(have_msmall_data)
+=
-msmall-data
# Turn on the proper cpu optimizations.
ifeq
($(have_mcpu),y)
mcpu_done
:=
n
# If GENERIC, make sure to turn off any instruction set extensions that
# the host compiler might have on by default. Given that EV4 and EV5
# have the same instruction set, prefer EV5 because an EV5 schedule is
# more likely to keep an EV4 processor busy than vice-versa.
mcpu_done
:=
n
ifeq
($(CONFIG_ALPHA_GENERIC),y)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
ev5
mcpu
:=
ev5
mcpu_done
:=
y
endif
ifeq
($(mcpu_done)$(CONFIG_ALPHA_SX164)$(have_mcpu_pca56),nyy)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
pca56
mcpu
:=
pca56
mcpu_done
:=
y
endif
ifeq
($(mcpu_done)$(CONFIG_ALPHA_POLARIS)$(have_mcpu_pca56),nyy)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
pca56
mcpu
:=
pca56
mcpu_done
:=
y
endif
ifeq
($(mcpu_done)$(CONFIG_ALPHA_EV4),ny)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
ev4
mcpu
:=
ev4
mcpu_done
:=
y
endif
ifeq
($(mcpu_done)$(CONFIG_ALPHA_EV56),ny)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
ev56
mcpu
:=
ev56
mcpu_done
:=
y
endif
ifeq
($(mcpu_done)$(CONFIG_ALPHA_EV5),ny)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
ev5
mcpu
:=
ev5
mcpu_done
:=
y
endif
ifeq
($(mcpu_done)$(CONFIG_ALPHA_EV67)$(have_mcpu_ev67),nyy)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
ev67
mcpu
:=
ev67
mcpu_done
:=
y
endif
ifeq
($(mcpu_done)$(CONFIG_ALPHA_EV6),ny)
ifeq
($(have_mcpu_ev6),y)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
ev6
mcpu
:=
ev6
else
ifeq
($(have_mcpu_pca56),y)
CFLAGS
:=
$(CFLAGS)
-mcpu
=
pca56
mcpu
:=
pca56
else
CFLAGS
:=
$(CFLAGS)
-
mcpu
=
ev56
mcpu
=
ev56
endif
endif
mcpu_done
:=
y
endif
cflags-$(mcpu_done)
+=
-mcpu
=
$(mcpu)
endif
# For TSUNAMI, we must have the assembler not emulate our instructions.
# The same is true for IRONGATE, POLARIS, PYXIS.
# BWX is most important, but we don't really want any emulation ever.
ifeq
($(old_gas),y)
# How do we do #error in make?
CFLAGS
:=
--error-please-upgrade-your-assembler
endif
CFLAGS
:=
$(CFLAGS)
-Wa
,-mev6
CFLAGS
+=
$
(
cflags-y
)
-Wa
,-mev6
HEAD
:=
arch
/alpha/kernel/head.o
...
...
@@ -96,37 +96,16 @@ core-y += arch/alpha/kernel/ arch/alpha/mm/
core-$(CONFIG_MATHEMU)
+=
arch
/alpha/math-emu/
libs-y
+=
arch
/alpha/lib/
export
libs-y
MAKEBOOT
=
$(MAKE)
-C
arch
/alpha/boot
boot
:=
arch
/alpha/boot
rawboot
:
vmlinux
@
$(MAKEBOOT)
rawboot
#Default target when executing make with no arguments
all boot
:
$(boot)/vmlinux.gz
boot
:
vmlinux
@
$(MAKEBOOT)
$(boot)/vmlinux.gz
:
vmlinux
$(Q)$(MAKE)
-f
scripts/Makefile.build
obj
=
$(boot)
$@
#
# My boot writes directly to a specific disk partition, I doubt most
# people will want to do that without changes..
#
msb my-special-boot
:
vmlinux
@
$(MAKEBOOT)
msb
bootimage
:
vmlinux
@
$(MAKEBOOT)
bootimage
srmboot
:
vmlinux
@
$(MAKEBOOT)
srmboot
archclean
:
@
$(MAKEBOOT)
clean
archmrproper
:
rm
-f
include/asm-alpha/asm_offsets.h
bootpfile
:
vmlinux
@
$(MAKEBOOT)
bootpfile
bootimage bootpfile
:
vmlinux
$(Q)$(MAKE)
-f
scripts/Makefile.build
obj
=
$(boot)
$(boot)
/
$@
prepare
:
include/asm-$(ARCH)/asm_offsets.h
...
...
@@ -134,12 +113,19 @@ prepare: include/asm-$(ARCH)/asm_offsets.h
arch/$(ARCH)/kernel/asm-offsets.s
:
include/asm include/linux/version.h
\
include/config/MARKER
include/asm-$(ARCH)/asm_offsets.h.tmp
:
arch/$(ARCH)/kernel/asm-offsets.s
@
$
(
generate-asm-offsets.h
)
<
$<
>
$@
include/asm-$(ARCH)/asm_offsets.h
:
include/asm-$(ARCH)/asm_offsets.h.tmp
include/asm-$(ARCH)/asm_offsets.h
:
arch/$(ARCH)/kernel/asm-offsets.s
@
echo
-n
' Generating $@'
@
$
(
generate-asm-offsets.h
)
<
$<
>
$@
.tmp
@
$
(
update-if-changed
)
archclean
:
$(Q)$(MAKE)
-f
scripts/Makefile.clean
obj
=
$(boot)
CLEAN_FILES
+=
include/asm-
$(ARCH)
/offset.h.tmp
\
include/asm-
$(ARCH)
/offset.h
define
archhelp
echo
'* boot - Compressed kernel image (arch/alpha/boot/vmlinux.gz)'
echo
' bootimage - SRM bootable image (arch/alpha/boot/bootimage)'
echo
' bootpfile - BOOTP bootable image (arch/alpha/boot/bootpfile)'
endef
arch/alpha/boot/Makefile
View file @
70f72acb
...
...
@@ -8,58 +8,35 @@
# Copyright (C) 1994 by Linus Torvalds
#
LINKFLAGS
=
-static
-T
bootloader.lds
-uvsprintf
#-N -relax
CFLAGS
:=
$(CFLAGS)
-I
$(TOPDIR)
/include
.S.s
:
$(CPP)
$(AFLAGS)
-traditional
-o
$*
.o
$<
.S.o
:
$(CC)
$(AFLAGS)
-traditional
-c
-o
$*
.o
$<
OBJECTS
=
head.o main.o
BPOBJECTS
=
head.o bootp.o
TARGETS
=
vmlinux.gz tools/objstrip
# also needed by aboot & milo
VMLINUX
=
$(TOPDIR)
/vmlinux
OBJSTRIP
=
tools/objstrip
LIBS
:=
$(
addprefix
$(TOPDIR)
/,
$
(
libs-y
))
all
:
$(TARGETS)
@
echo
Ready to
install
kernel
in
$(
shell
pwd
)
/vmlinux.gz
# normally no need to build these:
rawboot
:
vmlinux.nh tools/lxboot tools/bootlx
msb
:
tools/lxboot tools/bootlx vmlinux.nh
(
cat
tools/lxboot tools/bootlx vmlinux.nh
)
>
/dev/rz0a
disklabel
-rw
rz0
'linux'
tools/lxboot tools/bootlx
bootimage
:
tools/mkbb tools/lxboot tools/bootlx vmlinux.nh
(
cat
tools/lxboot tools/bootlx vmlinux.nh
)
>
bootimage
tools/mkbb bootimage tools/lxboot
bootpfile
:
tools/bootph vmlinux.nh
cat
tools/bootph vmlinux.nh
>
bootpfile
host-progs
:=
tools/mkbb tools/objstrip
EXTRA_TARGETS
:=
vmlinux.gz vmlinux
\
vmlinux.nh tools/lxboot tools/bootlx tools/bootph
\
bootloader bootpheader
OBJSTRIP
:=
$(obj)
/tools/objstrip
# SRM bootable image. Copy to offset 512 of a partition.
$(obj)/bootimage
:
$(addprefix $(obj)/tools/
,
mkbb lxboot bootlx) $(obj)/vmlinux.nh
(
cat
$(obj)
/tools/lxboot
$(obj)
/tools/bootlx
$(obj)
/vmlinux.nh
)
>
$@
$(obj)
/tools/mkbb
$@
$(obj)
/tools/lxboot
@
echo
' Bootimage $@ is ready'
# BOOTP bootable image. Define INITRD during make to append initrd image.
$(obj)/bootpfile
:
$(obj)/tools/bootph $(obj)/vmlinux.nh
cat
$(obj)
/tools/bootph
$(obj)
/vmlinux.nh
>
$@
ifdef
INITRD
cat
$(INITRD)
>>
bootpfile
cat
$(INITRD)
>>
$@
endif
srmboot
:
bootdevice bootimage
dd
if
=
bootimage
of
=
$(BOOTDEV)
bs
=
512
seek
=
1
skip
=
1
tools/mkbb
$(BOOTDEV)
tools/lxboot
bootdevice
:
@
test
"
$(BOOTDEV)
"
!=
""
||
(
echo
You must specify BOOTDEV
;
exit
-1
)
vmlinux.gz
:
vmlinux
gzip
-fv9
vmlinux
# Compressed kernel image
$(obj)/vmlinux.gz
:
$(obj)/vmlinux FORCE
$(
call
if_changed,gzip
)
@
echo
' Kernel $@ is ready'
main.o
:
ksize.h
$(obj)/main.o
:
$(obj)/ksize.h
$(obj)/bootp.o
:
$(obj)/ksize.h
bootp.o
:
ksize.h
ksize.h
:
vmlinux.nh FORCE
echo
"#define KERNEL_SIZE
`
ls
-l
vmlinux.nh |
awk
'{print $$5}'
`
"
>
$@
T
$(obj)/ksize.h
:
$(obj)/vmlinux.nh FORCE
echo
"#define KERNEL_SIZE
`
ls
-l
$(obj)
/vmlinux.nh |
awk
'{print $$5}'
`
"
>
$@
T
ifdef
INITRD
[
-f
$(INITRD)
]
||
exit
1
echo
"#define INITRD_IMAGE_SIZE
`
ls
-l
$(INITRD)
|
awk
'{print $$5}'
`
"
>>
$@
T
...
...
@@ -67,36 +44,36 @@ endif
cmp
-s
$@
T
$@
||
mv
-f
$@
T
$@
rm
-f
$@
T
vmlinux.nh
:
$(VMLINUX) $(OBJSTRIP)
$(OBJSTRIP)
-v
$(VMLINUX)
vmlinux.nh
vmlinux
:
$(TOPDIR)/vmlinux
$(STRIP)
-o
vmlinux
$(VMLINUX)
tools/lxboot
:
$(OBJSTRIP) bootloader
$(OBJSTRIP)
-p
bootloader tools/lxboot
quiet_cmd_strip
=
STRIP
$@
cmd_strip
=
$(STRIP)
-o
$@
$<
$(obj)/vmlinux
:
vmlinux FORCE
$(
call
if_changed,strip
)
tools/bootlx
:
bootloader $(OBJSTRIP)
$(OBJSTRIP)
-vb
bootloader tools/bootlx
quiet_cmd_objstrip
=
OBJSTRIP
$@
cmd_objstrip
=
$(OBJSTRIP)
$
(
OSFLAGS_
$
(
@F
))
$<
$@
tools/bootph
:
bootpheader $(OBJSTRIP)
$(OBJSTRIP)
-vb
bootpheader tools/bootph
OSFLAGS_vmlinux.nh
:=
-v
OSFLAGS_lxboot
:=
-p
OSFLAGS_bootlx
:=
-vb
OSFLAGS_bootph
:=
-vb
$(OBJSTRIP)
:
$(OBJSTRIP).c
$(HOSTCC)
$(HOSTCFLAGS)
$<
-o
$@
$(obj)/vmlinux.nh
:
vmlinux $(OBJSTRIP) FORCE
$(
call
if_changed,objstrip
)
$(obj)/tools/lxboot
:
$(obj)/bootloader $(OBJSTRIP) FORCE
$(
call
if_changed,objstrip
)
tools/mkbb
:
tools/mkbb.c
$(
HOSTCC)
tools/mkbb.c
-o
tools/mkbb
$(obj)/tools/bootlx
:
$(obj)/bootloader $(OBJSTRIP) FORCE
$(
call
if_changed,objstrip
)
bootloader
:
$(OBJECTS)
$(
LD)
$(LINKFLAGS)
$(OBJECTS)
$(LIBS)
-o
bootloader
$(obj)/tools/bootph
:
$(obj)/bootpheader $(OBJSTRIP) FORCE
$(
call
if_changed,objstrip
)
bootpheader
:
$(BPOBJECTS)
$(LD)
$(LINKFLAGS)
$(BPOBJECTS)
$(LIBS)
-o
bootpheader
LDFLAGS_bootloader
:=
-static
-uvsprintf
-T
#-N -relax
LDFLAGS_bootpheader
:=
-static
-uvsprintf
-T
#-N -relax
clean
:
rm
-f
$(TARGETS)
bootloader bootimage bootpfile bootpheader
rm
-f
tools/mkbb tools/bootlx tools/lxboot tools/bootph
rm
-f
vmlinux.nh ksize.h
$(obj)/bootloader
:
$(obj)/bootloader.lds $(obj)/head.o $(obj)/main.o FORCE
$(
call
if_changed,ld
)
FORCE
:
$(obj)/bootpheader
:
$(obj)/bootloader.lds $(obj)/head.o $(obj)/bootp.o FORCE
$(
call
if_changed,ld
)
arch/alpha/lib/Makefile
View file @
70f72acb
...
...
@@ -7,58 +7,53 @@ L_TARGET := lib.a
# Many of these routines have implementations tuned for ev6.
# Choose them iff we're targeting ev6 specifically.
ev6
:=
ifeq
($(CONFIG_ALPHA_EV6),y)
ev6
:=
ev6-
endif
ev6-$(CONFIG_ALPHA_EV6)
:=
ev6-
# Several make use of the cttz instruction introduced in ev67.
ev67
:=
ifeq
($(CONFIG_ALPHA_EV67),y)
ev67
:=
ev67-
endif
ev67-$(CONFIG_ALPHA_EV67)
:=
ev67-
obj-y
=
__divqu.o __remqu.o __divlu.o __remlu.o
\
udelay.o
\
$(ev6)
memset.o
\
$(ev6)
memcpy.o
\
$
(
ev6
-y
)
memset.o
\
$
(
ev6
-y
)
memcpy.o
\
memmove.o
\
io.o
\
checksum.o
\
csum_partial_copy.o
\
$(ev67)
strlen.o
\
$(ev67)
strcat.o
\
$
(
ev67
-y
)
strlen.o
\
$
(
ev67
-y
)
strcat.o
\
strcpy.o
\
$(ev67)
strncat.o
\
$
(
ev67
-y
)
strncat.o
\
strncpy.o
\
$(ev6)
stxcpy.o
\
$(ev6)
stxncpy.o
\
$(ev67)
strchr.o
\
$(ev67)
strrchr.o
\
$(ev6)
memchr.o
\
$(ev6)
copy_user.o
\
$(ev6)
clear_user.o
\
$(ev6)
strncpy_from_user.o
\
$(ev67)
strlen_user.o
\
$(ev6)
csum_ipv6_magic.o
\
$(ev6)
clear_page.o
\
$(ev6)
copy_page.o
\
$
(
ev6
-y
)
stxcpy.o
\
$
(
ev6
-y
)
stxncpy.o
\
$
(
ev67
-y
)
strchr.o
\
$
(
ev67
-y
)
strrchr.o
\
$
(
ev6
-y
)
memchr.o
\
$
(
ev6
-y
)
copy_user.o
\
$
(
ev6
-y
)
clear_user.o
\
$
(
ev6
-y
)
strncpy_from_user.o
\
$
(
ev67
-y
)
strlen_user.o
\
$
(
ev6
-y
)
csum_ipv6_magic.o
\
$
(
ev6
-y
)
clear_page.o
\
$
(
ev6
-y
)
copy_page.o
\
strcasecmp.o
\
fpreg.o
\
callback_srm.o srm_puts.o srm_printk.o
obj-$(CONFIG_SMP)
+=
dec_and_lock.o
$(obj)/__divqu.o
:
$(obj)/$(ev6)divide.S
$(CC)
$(AFLAGS)
-DDIV
-c
-o
$(obj)
/__divqu.o
$(obj)
/
$(ev6)
divide.S
$(obj)/__remqu.o
:
$(obj)/$(ev6)divide.S
$(CC)
$(AFLAGS)
-DREM
-c
-o
$(obj)
/__remqu.o
$(obj)
/
$(ev6)
divide.S
$(obj)/__divlu.o
:
$(obj)/$(ev6)divide.S
$(CC)
$(AFLAGS)
-DDIV
-DINTSIZE
\
-c
-o
$(obj)
/__divlu.o
$(obj)
/
$(ev6)
divide.S
$(obj)/__remlu.o
:
$(obj)/$(ev6)divide.S
$(CC)
$(AFLAGS)
-DREM
-DINTSIZE
\
-c
-o
$(obj)
/__remlu.o
$(obj)
/
$(ev6)
divide.S
# The division routines are built from single source, with different defines.
AFLAGS___divqu.o
=
-DDIV
AFLAGS___remqu.o
=
-DREM
AFLAGS___divlu.o
=
-DDIV
-DINTSIZE
AFLAGS___remlu.o
=
-DREM
-DINTSIZE
$(obj)/__divqu.o
:
$(obj)/$(ev6-y)divide.S
$(cmd_as_o_S)
$(obj)/__remqu.o
:
$(obj)/$(ev6-y)divide.S
$(cmd_as_o_S)
$(obj)/__divlu.o
:
$(obj)/$(ev6-y)divide.S
$(cmd_as_o_S)
$(obj)/__remlu.o
:
$(obj)/$(ev6-y)divide.S
$(cmd_as_o_S)
arch/alpha/math-emu/Makefile
View file @
70f72acb
...
...
@@ -2,6 +2,6 @@
# Makefile for the FPU instruction emulation.
#
CFLAGS
+=
-I
.
-I
$(TOPDIR)
/
include/math-emu
-w
CFLAGS
+=
-Iinclude
/math-emu
-w
obj-$(CONFIG_MATHEMU)
+=
math.o qrnnd.o
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment