parent
e6bf527f82
commit
a09235eca6
@ -1,11 +0,0 @@ |
|||||||
--- a/arch/um/Makefile-i386
|
|
||||||
+++ b/arch/um/Makefile-i386
|
|
||||||
@@ -35,7 +35,7 @@ cflags-y += -ffreestanding
|
|
||||||
# Disable unit-at-a-time mode on pre-gcc-4.0 compilers, it makes gcc use
|
|
||||||
# a lot more stack due to the lack of sharing of stacklots. Also, gcc
|
|
||||||
# 4.3.0 needs -funit-at-a-time for extern inline functions.
|
|
||||||
-KBUILD_CFLAGS += $(shell if [ $(call cc-version) -lt 0400 ] ; then \
|
|
||||||
+KBUILD_CFLAGS += $(shell if [ $(call cc-version) -lt 0403 ] ; then \
|
|
||||||
echo $(call cc-option,-fno-unit-at-a-time); \
|
|
||||||
else echo $(call cc-option,-funit-at-a-time); fi ;)
|
|
||||||
|
|
@ -1,21 +0,0 @@ |
|||||||
--- a/arch/um/Makefile-i386
|
|
||||||
+++ b/arch/um/Makefile-i386
|
|
||||||
@@ -39,4 +39,8 @@ KBUILD_CFLAGS += $(shell if [ $(call cc-
|
|
||||||
echo $(call cc-option,-fno-unit-at-a-time); \
|
|
||||||
else echo $(call cc-option,-funit-at-a-time); fi ;)
|
|
||||||
|
|
||||||
+# disable compile-time buffer checks, enabled by default on Ubuntu 8.10
|
|
||||||
+# and later
|
|
||||||
+KBUILD_CFLAGS += $(call cc-option,-U_FORTIFY_SOURCE)
|
|
||||||
+
|
|
||||||
KBUILD_CFLAGS += $(cflags-y)
|
|
||||||
--- a/arch/um/Makefile-x86_64
|
|
||||||
+++ b/arch/um/Makefile-x86_64
|
|
||||||
@@ -24,3 +24,7 @@ LINK-y += -m64
|
|
||||||
|
|
||||||
# Do unit-at-a-time unconditionally on x86_64, following the host
|
|
||||||
KBUILD_CFLAGS += $(call cc-option,-funit-at-a-time)
|
|
||||||
+
|
|
||||||
+# disable compile-time buffer checks, enabled by default on Ubuntu 8.10
|
|
||||||
+# and later
|
|
||||||
+KBUILD_CFLAGS += $(call cc-option,-U_FORTIFY_SOURCE)
|
|
@ -1,11 +0,0 @@ |
|||||||
--- a/arch/um/os-Linux/user_syms.c
|
|
||||||
+++ b/arch/um/os-Linux/user_syms.c
|
|
||||||
@@ -23,7 +23,7 @@ extern int printf(const char *, ...);
|
|
||||||
EXPORT_SYMBOL(strstr);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#ifndef __x86_64__
|
|
||||||
+#if !defined(__x86_64) || (__GNUC__ == 4 && __GNUC_MINOR__ < 3) || (__GNUC__ < 4)
|
|
||||||
extern void *memcpy(void *, const void *, size_t);
|
|
||||||
EXPORT_SYMBOL(memcpy);
|
|
||||||
#endif
|
|
@ -1,38 +0,0 @@ |
|||||||
When I compiled uml on x86_64, I got this warning:
|
|
||||||
|
|
||||||
MODPOST vmlinux.o
|
|
||||||
WARNING: vmlinux.o (.__syscall_stub.2): unexpected non-allocatable section.
|
|
||||||
Did you forget to use "ax"/"aw" in a .S file?
|
|
||||||
Note that for example <linux/init.h> contains
|
|
||||||
section definitions for use in .S files.
|
|
||||||
|
|
||||||
Because modpost checks for missing SHF_ALLOC section flag. So just
|
|
||||||
add it. :)
|
|
||||||
|
|
||||||
Signed-off-by: WANG Cong <amwang@redhat.com>
|
|
||||||
Cc: Jeff Dike <jdike@addtoit.com>
|
|
||||||
Cc: Sam Ravnborg <sam@ravnborg.org>
|
|
||||||
|
|
||||||
---
|
|
||||||
--- a/arch/um/sys-x86_64/stub.S
|
|
||||||
+++ b/arch/um/sys-x86_64/stub.S
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
#include "as-layout.h"
|
|
||||||
|
|
||||||
.globl syscall_stub
|
|
||||||
-.section .__syscall_stub, "x"
|
|
||||||
+.section .__syscall_stub, "ax"
|
|
||||||
syscall_stub:
|
|
||||||
syscall
|
|
||||||
/* We don't have 64-bit constants, so this constructs the address
|
|
||||||
--- a/arch/um/sys-i386/stub.S
|
|
||||||
+++ b/arch/um/sys-i386/stub.S
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
#include "as-layout.h"
|
|
||||||
|
|
||||||
.globl syscall_stub
|
|
||||||
-.section .__syscall_stub, "x"
|
|
||||||
+.section .__syscall_stub, "ax"
|
|
||||||
|
|
||||||
.globl batch_syscall_stub
|
|
||||||
batch_syscall_stub:
|
|
@ -1,45 +0,0 @@ |
|||||||
commit 67dac695a1f33716f3e35c2292e7391410d58751
|
|
||||||
Author: Paul Bolle <pebolle@tiscali.nl>
|
|
||||||
Date: Sun Sep 6 14:36:01 2009 +0200
|
|
||||||
|
|
||||||
um: add work around for build problems with bash 4
|
|
||||||
|
|
||||||
Building User Mode Linux fails with bash 4. The UML Makefiles use an
|
|
||||||
environment variable called CPPFLAGS_vmlinux.lds but bash 4 does not
|
|
||||||
export environment variables with a dot in their name. Add a hack to
|
|
||||||
allow building UML with bash 4 (which should not affect other shells).
|
|
||||||
|
|
||||||
Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
|
|
||||||
|
|
||||||
--- a/arch/um/Makefile
|
|
||||||
+++ b/arch/um/Makefile
|
|
||||||
@@ -99,9 +99,6 @@ CFLAGS_NO_HARDENING := $(call cc-option,
|
|
||||||
CONFIG_KERNEL_STACK_ORDER ?= 2
|
|
||||||
STACK_SIZE := $(shell echo $$[ 4096 * (1 << $(CONFIG_KERNEL_STACK_ORDER)) ] )
|
|
||||||
|
|
||||||
-CPPFLAGS_vmlinux.lds = -U$(SUBARCH) -DSTART=$(START) -DELF_ARCH=$(ELF_ARCH) \
|
|
||||||
- -DELF_FORMAT="$(ELF_FORMAT)" -DKERNEL_STACK_SIZE=$(STACK_SIZE)
|
|
||||||
-
|
|
||||||
# The wrappers will select whether using "malloc" or the kernel allocator.
|
|
||||||
LINK_WRAPS = -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc
|
|
||||||
|
|
||||||
@@ -152,4 +149,5 @@ $(SHARED_HEADERS)/kern_constants.h:
|
|
||||||
$(Q)mkdir -p $(dir $@)
|
|
||||||
$(Q)echo '#include "../../../../include/asm/asm-offsets.h"' >$@
|
|
||||||
|
|
||||||
-export SUBARCH USER_CFLAGS CFLAGS_NO_HARDENING OS HEADER_ARCH DEV_NULL_PATH
|
|
||||||
+export SUBARCH USER_CFLAGS CFLAGS_NO_HARDENING OS HEADER_ARCH DEV_NULL_PATH \
|
|
||||||
+ ELF_ARCH ELF_FORMAT STACK_SIZE START
|
|
||||||
--- a/arch/um/kernel/Makefile
|
|
||||||
+++ b/arch/um/kernel/Makefile
|
|
||||||
@@ -3,6 +3,10 @@
|
|
||||||
# Licensed under the GPL
|
|
||||||
#
|
|
||||||
|
|
||||||
+CPPFLAGS_vmlinux.lds = -P -C -U$(ARCH) -U$(SUBARCH) -DSTART=$(START) \
|
|
||||||
+ -DELF_ARCH=$(ELF_ARCH) -DELF_FORMAT="$(ELF_FORMAT)" \
|
|
||||||
+ -DKERNEL_STACK_SIZE=$(STACK_SIZE)
|
|
||||||
+
|
|
||||||
extra-y := vmlinux.lds
|
|
||||||
clean-files :=
|
|
||||||
|
|
@ -1,50 +0,0 @@ |
|||||||
--- a/arch/um/kernel/dyn.lds.S
|
|
||||||
+++ b/arch/um/kernel/dyn.lds.S
|
|
||||||
@@ -54,8 +54,21 @@ SECTIONS
|
|
||||||
.rela.got : { *(.rela.got) }
|
|
||||||
.rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
|
|
||||||
.rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
|
|
||||||
- .rel.plt : { *(.rel.plt) }
|
|
||||||
- .rela.plt : { *(.rela.plt) }
|
|
||||||
+ /* Deal with multilib libc */
|
|
||||||
+ .rel.plt :
|
|
||||||
+ {
|
|
||||||
+ *(.rel.plt)
|
|
||||||
+ PROVIDE_HIDDEN (__rel_iplt_start = .);
|
|
||||||
+ *(.rel.iplt)
|
|
||||||
+ PROVIDE_HIDDEN (__rel_iplt_end = .);
|
|
||||||
+ }
|
|
||||||
+ .rela.plt :
|
|
||||||
+ {
|
|
||||||
+ *(.rela.plt)
|
|
||||||
+ PROVIDE_HIDDEN (__rela_iplt_start = .);
|
|
||||||
+ *(.rela.iplt)
|
|
||||||
+ PROVIDE_HIDDEN (__rela_iplt_end = .);
|
|
||||||
+ }
|
|
||||||
.init : {
|
|
||||||
KEEP (*(.init))
|
|
||||||
} =0x90909090
|
|
||||||
--- a/arch/um/kernel/uml.lds.S
|
|
||||||
+++ b/arch/um/kernel/uml.lds.S
|
|
||||||
@@ -39,6 +39,21 @@ SECTIONS
|
|
||||||
*(.gnu.warning)
|
|
||||||
*(.gnu.linkonce.t*)
|
|
||||||
}
|
|
||||||
+ /* Deal with multilib libc */
|
|
||||||
+ .rel.plt :
|
|
||||||
+ {
|
|
||||||
+ *(.rel.plt)
|
|
||||||
+ PROVIDE_HIDDEN (__rel_iplt_start = .);
|
|
||||||
+ *(.rel.iplt)
|
|
||||||
+ PROVIDE_HIDDEN (__rel_iplt_end = .);
|
|
||||||
+ }
|
|
||||||
+ .rela.plt :
|
|
||||||
+ {
|
|
||||||
+ *(.rela.plt)
|
|
||||||
+ PROVIDE_HIDDEN (__rela_iplt_start = .);
|
|
||||||
+ *(.rela.iplt)
|
|
||||||
+ PROVIDE_HIDDEN (__rela_iplt_end = .);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
. = ALIGN(PAGE_SIZE);
|
|
||||||
.syscall_stub : {
|
|
@ -1,14 +0,0 @@ |
|||||||
make ZLIB_DEFLATE visible, so that we can choose whether we want it built-in
|
|
||||||
or as a module
|
|
||||||
|
|
||||||
--- a/lib/Kconfig
|
|
||||||
+++ b/lib/Kconfig
|
|
||||||
@@ -92,7 +92,7 @@ config ZLIB_INFLATE
|
|
||||||
tristate
|
|
||||||
|
|
||||||
config ZLIB_DEFLATE
|
|
||||||
- tristate
|
|
||||||
+ tristate "Zlib compression"
|
|
||||||
|
|
||||||
config LZO_COMPRESS
|
|
||||||
tristate
|
|
Loading…
Reference in new issue