summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlf Samuelsson <ulf.samuelsson@atmel.com>2007-08-16 18:17:39 +0000
committerUlf Samuelsson <ulf.samuelsson@atmel.com>2007-08-16 18:17:39 +0000
commit0a9af49e0b41dc66ce0bb0d583b0241a882f2700 (patch)
treebf52255998d07b980f0ef7aea862eaf456dbb3fc
parentceef40146f64415e3e046f724029b3e13544ecaf (diff)
Ensure lzma is built *before* linux, allow system installation in /usr/local/bin
-rw-r--r--package/lzma/lzma.mk9
-rw-r--r--target/linux/Makefile.in10
-rw-r--r--toolchain/kernel-headers/Config.in11
3 files changed, 29 insertions, 1 deletions
diff --git a/package/lzma/lzma.mk b/package/lzma/lzma.mk
index 6e122eb30..ec876da75 100644
--- a/package/lzma/lzma.mk
+++ b/package/lzma/lzma.mk
@@ -48,11 +48,20 @@ $(STAGING_DIR)/bin/lzma: $(LZMA_HOST_DIR)/src/lzma/lzma
$(STAGING_DIR)/lib/liblzmadec.la
lzma-host: $(STAGING_DIR)/bin/lzma
+
lzma-host-clean:
rm -f $(STAGING_DIR)/bin/lzma
-$(MAKE) -C $(LZMA_HOST_DIR) clean
lzma-host-dirclean:
rm -rf $(LZMA_HOST_DIR)
+
+/usr/local/bin/lzma: lzma_host
+ sudo $(MAKE) DESTDIR=/usr/local -C $(LZMA_HOST_DIR) install
+ sudo $(SED) "s,^libdir=.*,libdir=\'/usr/local/lib\',g" \
+ /usr/local/lib/liblzmadec.la
+
+lzma-host-install: /usr/local/bin/lzma
+
######################################################################
#
# lzma target
diff --git a/target/linux/Makefile.in b/target/linux/Makefile.in
index f4ffd5d8d..78dcab70f 100644
--- a/target/linux/Makefile.in
+++ b/target/linux/Makefile.in
@@ -59,6 +59,14 @@ ifndef LINUX26_KERNEL
LINUX26_KERNEL=$(BINARIES_DIR)/linux-kernel-$(LINUX26_VERSION)-$(KERNEL_ARCH)
endif
+ifeq ($(BR2_KERNEL_HEADERS_LZMA),y)
+ifeq ($(BR2_KERNEL_HEADERS_LZMA_INSTALL),y)
+DEPEND_ON_HOST_LZMA:=lzma-host-install
+else
+DEPEND_ON_HOST_LZMA:=lzma-host
+endif
+endif
+
# Version of Linux AFTER patches
LINUX26_DIR=$(BUILD_DIR)/linux-$(LINUX26_VERSION)
@@ -150,7 +158,7 @@ linux26-menuconfig: $(LINUX26_DIR)/.patched host-sed
$(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) menuconfig
-[ -f $(LINUX26_DIR)/.config ] && touch $(LINUX26_DIR)/.configured
-linux26: $(INITRAMFS_TARGET) $(LINUX26_KERNEL)
+linux26: $(DEPEND_ON_HOST_LZMA) $(INITRAMFS_TARGET) $(LINUX26_KERNEL)
$(LINUX26_DIR)/.modules_installed: $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep
touch $@
diff --git a/toolchain/kernel-headers/Config.in b/toolchain/kernel-headers/Config.in
index bb24d15dc..9244f088e 100644
--- a/toolchain/kernel-headers/Config.in
+++ b/toolchain/kernel-headers/Config.in
@@ -66,6 +66,17 @@ config BR2_KERNEL_HEADERS_LZMA
initramfs filesystems. This requires the lzma
program in your development environment.
+config BR2_KERNEL_HEADERS_LZMA_INSTALL
+ bool "Install lzma in /usr/local/bin (Requires system password) for sudo"
+ default n
+ help
+ Install the lzma package in the /usr/local/bin directory
+ so it is available for future builds. This requires sudo.
+ If you do not know the system password you should not set
+ this option. If you do not have lzma installed the only way
+ to complete the linux build, ifl you apply the lzma patches
+ is to have '$(STAGING_DIR)/usr/bin' in your path.
+
config BR2_DEFAULT_KERNEL_HEADERS
string
default "2.4.25" if BR2_KERNEL_HEADERS_2_4_25