Commit 0da2e559 authored by Eric Andersen's avatar Eric Andersen
Browse files

Due to alphabetizing, the uml stuff was pulled in after uclibc.mk

causing problems.  Newer uml messes up sigcontext.h and is a pain
to build anyways.  So kill it for now.  It is trivial to build for
stock i386 and then boot the generated root_fs using uml.
parent a64ef2ba
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -134,15 +134,13 @@ else
TARGETS+=uclibc-configured binutils gcc3_3 ccache
endif

# Do you want user mode Linux (x86 only), or are you building a
# your own kernel that will run on its own?  Perhaps you have a
# kernel you have already configured and you want to use that?
# The default is to just use a set of known working kernel
# headers.  Unless you want to build a kernel, I recommend just
# using that...
# Are you building your own kernel?  Perhaps you have a kernel
# you have already configured and you want to use that?  The
# default is to just use a set of known working kernel headers.
# Unless you want to build a kernel, I recommend just using
# that...
TARGETS+=kernel-headers
#TARGETS+=linux
#TARGETS+=user-mode-linux
#TARGETS+=system-linux

# The default minimal set

make/user-mode-linux.mk

deleted100644 → 0
+0 −66
Original line number Diff line number Diff line
#############################################################
#
# Linux kernel targets
#
#############################################################
ifneq ($(filter $(TARGETS),user-mode-linux),)

LINUX_VERSION=2.4.20
LINUX_DIR=$(BUILD_DIR)/linux-$(LINUX_VERSION)
LINUX_SOURCE=linux-$(LINUX_VERSION).tar.bz2
LINUX_SITE=http://ftp.us.kernel.org/pub/linux/kernel/v2.4
LINUX_PATCH_1:=uml-patch-$(LINUX_VERSION)-6.bz2
LINUX_PATCH_1_SITE:=http://aleron.dl.sourceforge.net/sourceforge/user-mode-linux
LINUX_KCONFIG=$(SOURCE_DIR)/linux-uml.config
LINUX_KERNEL=$(BASE_DIR)/UMlinux
# Used by pcmcia-cs and others
LINUX_SOURCE_DIR=$(LINUX_DIR)

$(DL_DIR)/$(LINUX_SOURCE):
	$(WGET) -P $(DL_DIR) $(LINUX_SITE)/$(LINUX_SOURCE)

$(DL_DIR)/$(LINUX_PATCH_1):
	$(WGET) -P $(DL_DIR) $(LINUX_PATCH_1_SITE)/$(LINUX_PATCH_1)

user-mode-linux-source: $(DL_DIR)/$(LINUX_SOURCE) $(DL_DIR)/$(LINUX_PATCH_1)

$(LINUX_DIR)/.unpacked: $(DL_DIR)/$(LINUX_SOURCE) $(DL_DIR)/$(LINUX_PATCH_1)
	bzcat $(DL_DIR)/$(LINUX_SOURCE) | tar -C $(BUILD_DIR) -xvf -
	rm -rf $(BUILD_DIR)/linux
	-(cd $(BUILD_DIR); ln -sf $(LINUX_DIR) linux)
	touch $(LINUX_DIR)/.unpacked

$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
	bzcat $(DL_DIR)/$(LINUX_PATCH_1) | patch -d $(LINUX_DIR) -p1
	touch $(LINUX_DIR)/.patched

$(LINUX_DIR)/.set_arch: $(LINUX_DIR)/.patched
	$(SED) "s/^ARCH :=.*/ARCH:=um/g;" $(LINUX_DIR)/Makefile
	touch $(LINUX_DIR)/.set_arch

$(LINUX_DIR)/.configured $(BUILD_DIR)/linux/.configured:  $(LINUX_DIR)/.set_arch  $(LINUX_KCONFIG)
	cp $(LINUX_KCONFIG) $(LINUX_DIR)/.config
	$(MAKE) -C $(LINUX_DIR) oldconfig include/linux/version.h
	touch $(LINUX_DIR)/.configured

$(LINUX_DIR)/.depend_done:  $(LINUX_DIR)/.configured
	$(MAKE) -C $(LINUX_DIR) dep
	touch $(LINUX_DIR)/.depend_done

$(LINUX_DIR)/linux: $(LINUX_DIR)/.depend_done
	$(MAKE) -C $(LINUX_DIR) linux

$(LINUX_KERNEL): $(LINUX_DIR)/linux
	cp -fa $(LINUX_DIR)/linux $(LINUX_KERNEL)

user-mode-linux: $(LINUX_KERNEL)

# Renamed so it is not cleaned by default on a make clean
user-mode-linux_clean: clean
	rm -f $(LINUX_KERNEL)
	-$(MAKE) -C $(LINUX_DIR) clean

user-mode-linux-dirclean:
	rm -rf $(LINUX_DIR)

endif