Expand PMF_FN_* macros.
[netbsd-mini2440.git] / sys / arch / i386 / conf / Makefile.i386
blobe6a1ea3d84e60777b219455398fc26cc258625ac
1 #       $NetBSD: Makefile.i386,v 1.165 2009/03/15 05:45:32 tsutsui Exp $
3 # Makefile for NetBSD
5 # This makefile is constructed from a machine description:
6 #       config machineid
7 # Most changes should be made in the machine description
8 #       /sys/arch/i386/conf/``machineid''
9 # after which you should do
10 #       config machineid
11 # Machine generic makefile changes should be made in
12 #       /sys/arch/i386/conf/Makefile.i386
13 # after which config should be rerun for all machines of that type.
15 # To specify debugging, add the config line: makeoptions DEBUG="-g"
16 # A better way is to specify -g only for a few files.
18 #       makeoptions DEBUGLIST="uvm* trap if_*"
20 MACHINE_ARCH=   i386
21 USETOOLS?=      no
22 NEED_OWN_INSTALL_TARGET?=no
23 .include <bsd.own.mk>
25 USE_SSP?=       yes
28 ## (1) port identification
30 I386=           $S/arch/i386
31 GENASSYM_CONF=  ${I386}/i386/genassym.cf
34 ## (2) compile settings
36 CPPFLAGS+=      -Di386
37 AFLAGS+=        -x assembler-with-cpp -traditional-cpp
40 ## (3) libkern and compat
42 OPT_MODULAR=    %MODULAR%
43 .if !empty(OPT_MODULAR)
44 KERN_AS=        obj
45 .else
46 KERN_AS=        library
47 .endif
50 ## (4) local objects, compile rules, and dependencies
52 MD_OBJS=        locore.o copy.o spl.o vector.o lock_stubs.o
53 MD_CFILES=
54 MD_SFILES=      ${I386}/i386/locore.S ${I386}/i386/copy.S ${I386}/i386/spl.S \
55                 ${I386}/i386/vector.S ${I386}/i386/lock_stubs.S
57 locore.o: ${I386}/i386/locore.S assym.h
58         ${NORMAL_S}
60 copy.o: ${I386}/i386/copy.S assym.h
61         ${NORMAL_S}
63 spl.o: ${I386}/i386/spl.S assym.h
64         ${NORMAL_S}
66 vector.o: ${I386}/i386/vector.S assym.h
67         ${NORMAL_S}
69 lock_stubs.o: ${I386}/i386/lock_stubs.S assym.h
70         ${NORMAL_S}
73 ## (5) link settings
75 TEXTADDR?=      c0100000
76 LINKFLAGS_NORMAL=       -X
77 .if (${OBJECT_FMT} == "ELF")
78 KERN_LDSCRIPT?= kern.ldscript
79 LINKFORMAT=     -T ${I386}/conf/${KERN_LDSCRIPT}
80 .else
81 LINKFORMAT=     -z
82 .endif
85 ## (6) port specific target dependencies
88 freebsd_sigcode.o i386func.o ibcs2_sigcode.o linux_support.o: assym.h
89 linux_sigcode.o lock_stubs.o svr4_sigcode.o mach_sigcode.o: assym.h
90 apmcall.o cpufunc.o cpu_in_cksum.o pnpbioscall.o bioscall.o: assym.h
91 mptramp.o: assym.h
92 acpi_wakeup_low.o busfunc.o kvm86call.o: assym.h
95 ## (7) misc settings
98 .if !make(obj) && !make(clean) && !make(cleandir)
99 .BEGIN:
100         @rm -f i386 && \
101                 ln -s $S/arch/i386/include i386
102 .endif
105 ## (8) config(8) generated machinery
107 %INCLUDES
109 %OBJS
111 %CFILES
113 %SFILES
115 %LOAD
117 %RULES
119 ## Include rules for ACPI wakecode
120 .include "$S/arch/x86/acpi/Makefile.wakecode.inc"
123 ## (9) port independent kernel machinery
125 .include "$S/conf/Makefile.kern.inc"
128 ## (10) Appending make options.
130 %MAKEOPTIONSAPPEND