blob: 520779c1424378c3da68174359a85b68f36976b9 [file] [log] [blame]
Stefan Reinauer18588442005-01-17 11:08:08 +00001#
2# NOTE: You need to add your libpci.a version to CFLAGS below if
3# pci-userspace.c does not build.
4#
5# If you are building on AMD64, you have to use /usr/lib64/libpci.a instead of
6# /usr/lib/...
7#
8
Stefan Reinauer850e7d42015-09-28 13:12:04 -07009TOP ?= ../..
10
11CC ?= gcc
12CFLAGS ?= -O2 -g -fomit-frame-pointer
13
Stefan Reinauer4aeff4f2010-04-16 11:45:16 +000014CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wmissing-prototypes
Stefan Reinauer850e7d42015-09-28 13:12:04 -070015CFLAGS += -Wwrite-strings -Wredundant-decls -Wstrict-aliasing -Wshadow -Wextra
Stefan Reinauer4aeff4f2010-04-16 11:45:16 +000016
Stefan Reinauer850e7d42015-09-28 13:12:04 -070017# TODO check host architecture
18CBCFLAGS = -DCONFIG_ARCH_X86=1 -Wno-sign-compare -Wno-unused-but-set-variable -Wno-unused-parameter
Li-Ta Lo81521262004-07-08 17:18:27 +000019
Stefan Reinauer850e7d42015-09-28 13:12:04 -070020INCLUDES = -Iinclude -I$(TOP)/src/device/oprom/include/
21CBINCLUDES = -I$(TOP)/src --include include/stdtypes.h
22CBINCLUDES += --include $(TOP)/src/commonlib/include/commonlib/loglevel.h
23CBINCLUDES += -include stdio.h
Li-Ta Lo81521262004-07-08 17:18:27 +000024
Stefan Reinauer850e7d42015-09-28 13:12:04 -070025SOURCE = int10.c int15.c int16.c int1a.c inte6.c testbios.c
26SOURCE += helper_exec.c helper_mem.c pci-userspace.c
27
28X86EMU = sys.c decode.c ops.c ops2.c prim_ops.c fpu.c debug.c
29X86EMU_DIR = $(TOP)/src/device/oprom/x86emu
30X86EMU_SOURCE = $(addprefix $(X86EMU_DIR)/, $(X86EMU))
31OBJECTS:=$(SOURCE:.c=.o) $(X86EMU:.c=.o)
Stefan Reinauer86051f92010-03-23 15:53:38 +000032
33LIBS=-lpci
Li-Ta Lo81521262004-07-08 17:18:27 +000034
Stefan Reinauer850e7d42015-09-28 13:12:04 -070035all: dep testbios
Li-Ta Lo81521262004-07-08 17:18:27 +000036
Stefan Reinauer850e7d42015-09-28 13:12:04 -070037testbios: $(OBJECTS)
38 printf " LINK $(notdir $@)\n"
Stefan Reinauer86051f92010-03-23 15:53:38 +000039 $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
Stefan Reinauer14e22772010-04-27 06:56:47 +000040
Stefan Reinauer850e7d42015-09-28 13:12:04 -070041dep: $(SOURCE) $(X86EMU_SOURCE) Makefile
42 $(CC) $(CFLAGS) $(INCLUDES) -MM $(SOURCE) > .dependencies
43 $(CC) $(CFLAGS) $(INCLUDES) $(CBCFLAGS) $(CBINCLUDES) -MM $(X86EMU_SOURCE) >> .dependencies
Li-Ta Lo81521262004-07-08 17:18:27 +000044
Li-Ta Lo81521262004-07-08 17:18:27 +000045clean:
Li-Ta Lo81521262004-07-08 17:18:27 +000046 rm -f *.o *~ testbios
47
Stefan Reinauer850e7d42015-09-28 13:12:04 -070048distclean: clean
49 rm -f .dependencies
50
51%.o: $(X86EMU_DIR)/%.c
52 printf " CC (x86emu) $(notdir $<)\n"
53 $(CC) $(CFLAGS) $(CBCFLAGS) $(INCLUDES) $(CBINCLUDES) -c -o $@ $<
Stefan Reinauer4aeff4f2010-04-16 11:45:16 +000054
55%.o: %.c
Stefan Reinauer850e7d42015-09-28 13:12:04 -070056 printf " CC $(notdir $<)\n"
Stefan Reinauer4aeff4f2010-04-16 11:45:16 +000057 $(CC) $(CFLAGS) $(INCLUDES) -c -o $@ $<
Stefan Reinauer850e7d42015-09-28 13:12:04 -070058
59.PHONY: all clean distclean
60.SILENT:
61
62-include .dependencies