--- i386/Makefile 2007-04-02 16:11:56.000000000 -0300 +++ Makefile 2007-04-02 16:11:56.000000000 -0300 @@ -1,12 +1,13 @@ # This creates the demonstration utility "lguest" which runs a Linux guest. -# We rely on CONFIG_PAGE_OFFSET to know where to put lguest binary. -# Some shells (dash - ubunu) can't handle numbers that big so we cheat. -include ../../../.config -LGUEST_GUEST_TOP := ($(CONFIG_PAGE_OFFSET) - 0x08000000) -CFLAGS:=-Wall -Wmissing-declarations -Wmissing-prototypes -O3 \ - -static -DLGUEST_GUEST_TOP="$(LGUEST_GUEST_TOP)" -Wl,-T,lguest.lds +#we could uname -i, but it seems to return unknown on a bunch locations +ARCH:=$(shell uname -m | sed s/i[3456]86/i386/) + +include $(ARCH)/defines + +CFLAGS:=-g -Wall -Wmissing-declarations -Wmissing-prototypes -O3 \ + -static -DLGUEST_GUEST_TOP="$(LGUEST_GUEST_TOP)" -Wl,-T,lguest.lds -I$(ARCH) LDLIBS:=-lz all: lguest.lds lguest --- /dev/null 2007-04-02 15:35:49.510433377 -0300 +++ i386/defines 2007-04-02 16:13:43.000000000 -0300 @@ -0,0 +1,4 @@ +# We rely on CONFIG_PAGE_OFFSET to know where to put lguest binary. +# Some shells (dash - ubunu) can't handle numbers that big so we cheat. +include ../../.config +LGUEST_GUEST_TOP := ($(CONFIG_PAGE_OFFSET) - 0x08000000) --- /dev/null 2007-04-02 15:35:49.510433377 -0300 +++ x86_64/defines 2007-04-02 16:11:56.000000000 -0300 @@ -0,0 +1,4 @@ +# For now on x86_64 we'll hard code the location of the lguest binary loader. +# But when we can get a relocatable kernel, we'll have to work to make this +# dynamic. +LGUEST_GUEST_TOP := 0x7f000000