* [Buildroot] lzma, take two.
@ 2006-10-12 9:08 Thomas Lundquist
0 siblings, 0 replies; only message in thread
From: Thomas Lundquist @ 2006-10-12 9:08 UTC (permalink / raw)
To: buildroot
Just resending the fixed (and verified) lzma patches.
Thomas.
-------------- next part --------------
Index: target/ext2/Config.in
===================================================================
--- target/ext2/Config.in (revision 16312)
+++ target/ext2/Config.in (working copy)
@@ -34,6 +34,13 @@
depends on BR2_TARGET_ROOTFS_EXT2
default n
+config BR2_TARGET_ROOTFS_EXT2_LZMA
+ bool "lzma the output file"
+ depends on BR2_TARGET_ROOTFS_EXT2
+ select BR2_PACKAGE_LZMA_HOST
+ default n
+
+
config BR2_TARGET_ROOTFS_EXT2_COPYTO
string "also copy the image to..."
depends on BR2_TARGET_ROOTFS_EXT2
Index: target/ext2/ext2root.mk
===================================================================
--- target/ext2/ext2root.mk (revision 16312)
+++ target/ext2/ext2root.mk (working copy)
@@ -66,6 +66,10 @@
EXT2_TARGET := $(EXT2_BASE)
endif
+ifeq ($(strip $(BR2_TARGET_ROOTFS_EXT2_LZMA)),y)
+EXT2_TARGET := $(EXT2_BASE).lzma
+endif
+
$(EXT2_BASE): host-fakeroot makedevs genext2fs
- at find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIP) 2>/dev/null || true;
@rm -rf $(TARGET_DIR)/usr/man
@@ -102,6 +106,9 @@
$(EXT2_BASE).gz: $(EXT2_BASE)
@gzip --best -fv $(EXT2_BASE)
+$(EXT2_BASE).lzma: lzma-host $(EXT2_BASE)
+ @$(STAGING_DIR)/bin/lzma -vc $(EXT2_BASE) > $(EXT2_BASE).lzma
+
EXT2_COPYTO := $(strip $(subst ",,$(BR2_TARGET_ROOTFS_EXT2_COPYTO)))
# " stupid syntax highlighting does not like unmatched quote from above line
Index: package/lzma/lzma.mk
===================================================================
--- package/lzma/lzma.mk (revision 16312)
+++ package/lzma/lzma.mk (working copy)
@@ -6,7 +6,8 @@
LZMA_VER:=4.32.0beta3
LZMA_SOURCE:=lzma-$(LZMA_VER).tar.gz
LZMA_SITE:=http://tukaani.org/lzma/
-LZMA_DIR:=$(BUILD_DIR)/lzma-$(LZMA_VER)
+LZMA_HOST_DIR:=$(TOOL_BUILD_DIR)/lzma-$(LZMA_VER)
+LZMA_TARGET_DIR:=$(BUILD_DIR)/lzma-$(LZMA_VER)
LZMA_CFLAGS:=$(TARGET_CFLAGS)
ifeq ($(BR2_LARGEFILE),y)
LZMA_CFLAGS+=-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
@@ -18,13 +19,47 @@
$(DL_DIR)/$(LZMA_SOURCE):
$(WGET) -P $(DL_DIR) $(LZMA_SITE)/$(LZMA_SOURCE)
-$(LZMA_DIR)/.source: $(DL_DIR)/$(LZMA_SOURCE)
- $(ZCAT) $(DL_DIR)/$(LZMA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
- toolchain/patch-kernel.sh $(LZMA_DIR) package/lzma/ lzma\*.patch
- touch $(LZMA_DIR)/.source
+######################################################################
+#
+# lzma host
+#
+######################################################################
-$(LZMA_DIR)/.configured: $(LZMA_DIR)/.source
- (cd $(LZMA_DIR); rm -f config.cache ;\
+$(LZMA_HOST_DIR)/.source: $(DL_DIR)/$(LZMA_SOURCE)
+ zcat $(DL_DIR)/$(LZMA_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
+ toolchain/patch-kernel.sh $(LZMA_HOST_DIR) package/lzma/ lzma\*.patch
+ touch $(LZMA_HOST_DIR)/.source
+
+$(LZMA_HOST_DIR)/.configured: $(LZMA_HOST_DIR)/.source
+ (cd $(LZMA_HOST_DIR); rm -f config.cache ;\
+ CC="$(HOSTCC)" \
+ ./configure \
+ --prefix=/ \
+ );
+ touch $(LZMA_HOST_DIR)/.configured;
+
+$(LZMA_HOST_DIR)/src/lzma/lzma: $(LZMA_HOST_DIR)/.configured
+ $(MAKE) -C $(LZMA_HOST_DIR) all
+ touch -c $@
+
+$(STAGING_DIR)/bin/lzma: $(LZMA_HOST_DIR)/src/lzma/lzma
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LZMA_HOST_DIR) install
+
+lzma-host: uclibc $(STAGING_DIR)/bin/lzma
+
+######################################################################
+#
+# lzma target
+#
+######################################################################
+
+$(LZMA_TARGET_DIR)/.source: $(DL_DIR)/$(LZMA_SOURCE)
+ zcat $(DL_DIR)/$(LZMA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ toolchain/patch-kernel.sh $(LZMA_TARGET_DIR) package/lzma/ lzma\*.patch
+ touch $(LZMA_TARGET_DIR)/.source
+
+$(LZMA_TARGET_DIR)/.configured: $(LZMA_TARGET_DIR)/.source
+ (cd $(LZMA_TARGET_DIR); rm -f config.cache ;\
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS) $(LZMA_CFLAGS)" \
ac_cv_func_malloc_0_nonnull=yes \
@@ -33,37 +68,33 @@
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
- --exec-prefix=$(STAGING_DIR)/usr/bin \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --exec-prefix=$(TARGET_DIR)/usr/bin \
+ --libdir=$(TARGET_DIR)/lib \
+ --includedir=$(TARGET_DIR)/include \
--disable-debug \
$(DISABLE_NLS) \
$(LZMA_LARGEFILE) \
);
- touch $(LZMA_DIR)/.configured;
+ touch $(LZMA_TARGET_DIR)/.configured;
-$(LZMA_DIR)/src/lzma/lzma: $(LZMA_DIR)/.configured
- $(MAKE) -C $(LZMA_DIR) all
+$(LZMA_TARGET_DIR)/src/lzma/lzma: $(LZMA_TARGET_DIR)/.configured
+ $(MAKE) -C $(LZMA_TARGET_DIR) all
touch -c $@
-$(STAGING_DIR)/bin/lzma: $(LZMA_DIR)/src/lzma/lzma
- -cp -dpf $(LZMA_DIR)/src/lzma/lzma $(STAGING_DIR)/bin/;
- touch -c $(STAGING_DIR)/bin/lzma
-
-$(TARGET_DIR)/bin/lzma: $(STAGING_DIR)/bin/lzma
- cp -dpf $(STAGING_DIR)/bin/lzma $(TARGET_DIR)/bin/;
+$(TARGET_DIR)/usr/bin/lzma: $(LZMA_TARGET_DIR)/src/lzma/lzma
+ -cp -dpf $(LZMA_TARGET_DIR)/src/lzma/lzma $(TARGET_DIR)/bin/;
-$(STRIP) --strip-unneeded $(TARGET_DIR)/bin/lzma
touch -c $(TARGET_DIR)/bin/lzma
#lzma-headers: $(TARGET_DIR)/bin/lzma
-lzma: uclibc $(TARGET_DIR)/bin/lzma
+lzma-target: uclibc $(TARGET_DIR)/usr/bin/lzma
lzma-source: $(DL_DIR)/$(LZMA_SOURCE)
lzma-clean:
- rm -f $(TARGET_DIR)/bin/lzma
- -$(MAKE) -C $(LZMA_DIR) clean
+ rm -f $(TARGET_DIR)/usr/bin/lzma
+ -$(MAKE) -C $(LZMA_TARGET_DIR) clean
lzma-dirclean:
rm -rf $(LZMA_DIR)
@@ -73,9 +104,14 @@
# Toplevel Makefile options
#
#############################################################
-ifeq ($(strip $(BR2_PACKAGE_LZMA)),y)
-TARGETS+=lzma
+ifeq ($(strip $(BR2_PACKAGE_LZMA_HOST)),y)
+TARGETS+=lzma-host
endif
+
+ifeq ($(strip $(BR2_PACKAGE_LZMA_TARGET)),y)
+TARGETS+=lzma-target
+endif
+
#ifeq ($(strip $(BR2_PACKAGE_LZMA_TARGET_HEADERS)),y)
#TARGETS+=lzma-headers
#endif
Index: package/lzma/Config.in
===================================================================
--- package/lzma/Config.in (revision 16312)
+++ package/lzma/Config.in (working copy)
@@ -1,14 +1,22 @@
-config BR2_PACKAGE_LZMA
- bool "lzma"
+config BR2_PACKAGE_LZMA_TARGET
+ bool "Install lzma for the target system"
default n
help
- Compression utility.
+ lzma utils on the target
http://tukaani.org/lzma/
config BR2_PACKAGE_LZMA_TARGET_HEADERS
bool "lzma headers in target"
default n
- depends on BR2_PACKAGE_LZMA
+ depends on BR2_PACKAGE_LZMA_TARGET
help
Put headers files in the target.
+
+config BR2_PACKAGE_LZMA_HOST
+ bool "Install lzma for the host/build system"
+ default n
+ help
+ lzma utils on the host
+
+ http://tukaani.org/lzma/
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2006-10-12 9:08 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-12 9:08 [Buildroot] lzma, take two Thomas Lundquist
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.