1 #############################################################
5 #############################################################
6 LZMA_VERSION_STRING
:=$(subst ",,$(BR2_PACKAGE_LZMA_VERSION))
8 ifneq ($(BR2_PACKAGE_LZMA_VERSION_git
),)
9 LZMA_SITE
:=git
://ctrl.tukaani.org
/lzma-utils.git
10 LZMA_SOURCE
:=lzma-utils.
tar.gz
12 LZMA_SRCDIR
:=$(TOOL_BUILD_DIR
)/lzma-utils
13 LZMA_HOST_DIR
:=$(TOOL_BUILD_DIR
)/lzma-utils-host
14 LZMA_TARGET_DIR
:=$(BUILD_DIR
)/lzma-utils-host
15 LZMA_CONFIGURE_ARGS
:=--enable-small
18 LZMA_SOURCE
:=lzma-
$(LZMA_VERSION
).
tar.gz
20 LZMA_SITE
:=http
://tukaani.org
/lzma
/
21 LZMA_SRCDIR
:=$(TOOL_BUILD_DIR
)/lzma-
$(LZMA_VERSION
)
22 LZMA_HOST_DIR
:=$(TOOL_BUILD_DIR
)/lzma-
$(LZMA_VERSION
)-host
23 LZMA_TARGET_DIR
:=$(BUILD_DIR
)/lzma-
$(LZMA_VERSION
)
26 LZMA_CFLAGS
:=$(TARGET_CFLAGS
)
27 ifeq ($(BR2_LARGEFILE
),y
)
28 LZMA_CFLAGS
+=-D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE
-D_FILE_OFFSET_BITS
=64
30 LZMA_TARGET_BINARY
:=bin
/lzma
32 # lzma binary for use on the host
33 LZMA
=$(TOOL_BUILD_DIR
)/bin
/lzma
34 HOST_LZMA_BINARY
=$(shell $(CONFIG_SHELL
) package
/lzma
/lzmacheck.sh
)
35 HOST_LZMA_IF_ANY
=$(shell $(CONFIG_SHELL
) toolchain
/dependencies
/check-host-lzma.sh
)
38 $(DL_DIR
)/$(LZMA_SOURCE
):
39 ifeq ($(BR2_PACKAGE_LZMA_VERSION_git
),)
40 $(WGET
) -P
$(DL_DIR
) $(LZMA_SITE
)/$(LZMA_SOURCE
)
42 test -d
$(DL_DIR
)/lzma-utils
/.git || \
43 $(GIT
) clone
$(LZMA_SITE
) $(DL_DIR
)/lzma-utils
44 #(cd $(DL_DIR)/lzma-utils && ./autogen.sh)
45 (cd
$(DL_DIR
) && tar -czf
$@ lzma-utils
)
48 ######################################################################
52 ######################################################################
54 $(LZMA_SRCDIR
)/.unpacked
: $(DL_DIR
)/$(LZMA_SOURCE
)
55 $(LZMA_CAT
) $(DL_DIR
)/$(LZMA_SOURCE
) |
tar -C
$(TOOL_BUILD_DIR
) $(TAR_OPTIONS
) -
56 toolchain
/patch-kernel.sh
$(LZMA_SRCDIR
) package
/lzma
/ lzma\
*.patch
57 ifeq ($(BR2_USE_UPDATES
),y
)
58 (test -d
$(LZMA_SRCDIR
)/.git
&& cd
$(@D
) && $(GIT
) pull
&& .
/autogen.sh
)
62 $(LZMA_HOST_DIR
)/.configured
: $(LZMA_SRCDIR
)/.unpacked
64 (cd
$(LZMA_HOST_DIR
); rm -f config.cache
;\
67 $(LZMA_SRCDIR
)/configure \
72 $(LZMA_HOST_DIR
)/src
/lzma
/lzma
: $(LZMA_HOST_DIR
)/.configured
73 $(MAKE
) -C
$(LZMA_HOST_DIR
) all
76 $(STAGING_DIR
)/bin
/lzma
: $(LZMA_HOST_DIR
)/src
/lzma
/lzma
77 $(MAKE
) DESTDIR
=$(STAGING_DIR
) -C
$(LZMA_HOST_DIR
) install
78 $(SED
) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" \
79 $(STAGING_DIR
)/lib
/liblzmadec.la
81 .PHONY
: host-lzma use-lzma-host-binary build-lzma-host-binary
83 $(Q
)if
[ ! -f
"$(TOOL_BUILD_DIR)/bin/lzma" ]; then \
84 [ -d
$(TOOL_BUILD_DIR
)/bin
] || mkdir
-p
$(TOOL_BUILD_DIR
)/bin
; \
85 ln
-sf
"$(HOST_LZMA_IF_ANY)" "$(TOOL_BUILD_DIR)/bin/lzma"; \
88 build-lzma-host-binary
: $(LZMA_HOST_DIR
)/src
/lzma
/lzma
89 -rm -f
$(TOOL_BUILD_DIR
)/bin
/lzma
90 $(INSTALL
) -D
-m
0755 $(LZMA_HOST_DIR
)/src
/lzma
/lzma
$(TOOL_BUILD_DIR
)/bin
/lzma
92 host-lzma
: $(HOST_LZMA_BINARY
)
94 lzma-host
: $(STAGING_DIR
)/bin
/lzma
97 rm -f
$(STAGING_DIR
)/bin
/lzma
98 -$(MAKE
) -C
$(LZMA_HOST_DIR
) clean
100 rm -rf
$(LZMA_HOST_DIR
)
102 lzma-host-install
: /usr
/local
/bin
/lzma
104 ######################################################################
108 ######################################################################
110 #$(LZMA_TARGET_DIR)/.unpacked: $(DL_DIR)/$(LZMA_SOURCE)
111 # $(LZMA_CAT) $(DL_DIR)/$(LZMA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
112 # toolchain/patch-kernel.sh $(LZMA_TARGET_DIR) package/lzma/ lzma\*.patch
115 $(LZMA_TARGET_DIR
)/.configured
: THIS_SRCDIR
=$(LZMA_SRCDIR
)
116 $(LZMA_TARGET_DIR
)/.configured
: $(LZMA_SRCDIR
)/.unpacked
118 (cd
$(LZMA_TARGET_DIR
); rm -f config.cache
;\
119 $(TARGET_CONFIGURE_OPTS
) \
120 $(TARGET_CONFIGURE_ARGS
) \
121 CFLAGS
="$(TARGET_CFLAGS) $(LZMA_CFLAGS)" \
122 ac_cv_func_malloc_0_nonnull
=yes \
123 $(LZMA_SRCDIR
)/configure \
124 --target
=$(GNU_TARGET_NAME
) \
125 --host
=$(GNU_TARGET_NAME
) \
126 --build
=$(GNU_HOST_NAME
) \
128 --exec-prefix
=$(TARGET_DIR
)/usr
/bin \
129 --libdir=$(TARGET_DIR
)/lib \
130 --includedir=$(TARGET_DIR
)/include \
133 $(DISABLE_LARGEFILE
) \
134 $(LZMA_CONFIGURE_ARGS
) \
138 $(LZMA_TARGET_DIR
)/src
/lzma
/lzma
: $(LZMA_TARGET_DIR
)/.configured
139 $(MAKE
) -C
$(LZMA_TARGET_DIR
) all
142 $(TARGET_DIR
)/$(LZMA_TARGET_BINARY
): $(LZMA_TARGET_DIR
)/src
/lzma
/lzma
143 $(INSTALL
) -D
-m
0755 $(LZMA_TARGET_DIR
)/src
/lzma
/lzma
$@
144 -$(STRIPCMD
) $(STRIP_STRIP_UNNEEDED
) $@
147 #lzma-headers: $(TARGET_DIR)/$(LZMA_TARGET_BINARY)
149 lzma-target
: uclibc
$(TARGET_DIR
)/$(LZMA_TARGET_BINARY
)
151 lzma-source
: $(DL_DIR
)/$(LZMA_SOURCE
)
154 -$(MAKE
) -C
$(LZMA_TARGET_DIR
) clean
155 rm -f
$(TARGET_DIR
)/usr
/bin
/lzma
160 #############################################################
162 # Toplevel Makefile options
164 #############################################################
165 ifeq ($(BR2_PACKAGE_LZMA_HOST
),y
)
167 HOST_SOURCE
+=lzma-source
170 ifeq ($(BR2_PACKAGE_LZMA_TARGET
),y
)
174 #ifeq ($(BR2_PACKAGE_LZMA_TARGET_HEADERS),y)
175 #TARGETS+=lzma-headers