1 # Copyright (C) 2001 MandrakeSoft S.A.
6 # http://www.linux-mandrake.com/
7 # http://www.mandrakesoft.com/
9 # This library is free software; you can redistribute it and/or
10 # modify it under the terms of the GNU Lesser General Public
11 # License as published by the Free Software Foundation; either
12 # version 2 of the License, or (at your option) any later version.
14 # This library is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 # Lesser General Public License for more details.
19 # You should have received a copy of the GNU Lesser General Public
20 # License along with this library; if not, write to the Free Software
21 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 # Makefile for the BIOS component of bochs
44 GCC32
= gcc
-m32
-fno-stack-protector
47 BX_INCDIRS
= -I..
-I
$(srcdir)/..
-I..
/iodev
-I
$(srcdir)/..
/iodev
50 BUILDDATE
= `date '+%m/%d/%y'`
51 BIOS_BUILD_DATE
= "-DBIOS_BUILD_DATE=\"$(BUILDDATE)\""
53 # -------- end configurable options --------------------------
58 $(CXX
) -c
$(BX_INCDIRS
) $(CXXFLAGS
) $(LOCAL_CXXFLAGS
) @CXXFP@
$< @OFP@
$@
61 bios
: biossums BIOS-bochs-latest BIOS-bochs-legacy
64 @RMCOMMAND@
*.o
*.a
*.s _rombios
*_.c rombios
*.txt rombios
*.sym
65 @RMCOMMAND@ usage biossums rombios16.bin
66 @RMCOMMAND@ rombios32.bin rombios32.out
72 @RMCOMMAND@ BIOS-bochs-
*
74 BIOS-bochs-legacy
: rombios.c apmbios.S biossums rombios.h
75 $(GCC32
) $(BIOS_BUILD_DATE
) -DLEGACY
-E
-P
$< > _rombiosl_.c
76 $(BCC
) -o rombiosl.s
-C-c
-D__i86__
-0 -S _rombiosl_.c
77 sed
-e
's/^\.text//' -e
's/^\.data//' rombiosl.s
> _rombiosl_.s
78 $(AS86
) _rombiosl_.s
-b tmpl.bin
-u-
-w-
-g
-0 -j
-O
-l rombiosl.txt
79 -perl
${srcdir}/makesym.perl
< rombiosl.txt
> rombiosl.sym
82 @RMCOMMAND@ _rombiosl_.s
85 rombios16.bin
: rombios.c apmbios.S biossums rombios.h
86 $(GCC32
) $(BIOS_BUILD_DATE
) -E
-P
$< > _rombios_.c
87 $(BCC
) -o rombios.s
-C-c
-D__i86__
-0 -S _rombios_.c
88 sed
-e
's/^\.text//' -e
's/^\.data//' rombios.s
> _rombios_.s
89 $(AS86
) _rombios_.s
-b tmp.bin
-u-
-w-
-g
-0 -j
-O
-l rombios.txt
90 -perl
${srcdir}/makesym.perl
< rombios.txt
> rombios.sym
91 mv tmp.bin rombios16.bin
92 .
/biossums rombios16.bin
93 @RMCOMMAND@ _rombios_.s
96 rombios32.bin
: rombios32.out rombios.h
97 objcopy
-O binary
$< $@
100 rombios32.out
: rombios32start.o rombios32.o rombios32.
ld
101 ld -o
$@
-T
$(srcdir)/rombios32.
ld rombios32start.o rombios32.o
103 rombios32.o
: rombios32.c acpi-dsdt.hex
104 $(GCC32
) -O2
-Wall
-c
-o
$@
$<
107 acpi-dsdt.hex
: acpi-dsdt.dsl
109 sed
-i
-e
's/^unsigned/const unsigned/' $@
112 rombios32start.o
: rombios32start.S
115 BIOS-bochs-latest
: rombios16.bin rombios32.bin
116 cat rombios32.bin rombios16.bin
> $@