xref: /OK3568_Linux_fs/buildroot/package/squashfs/squashfs.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# squashfs
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunSQUASHFS_VERSION = 4.4
8*4882a593SmuzhiyunSQUASHFS_SITE = $(call github,plougher,squashfs-tools,$(SQUASHFS_VERSION))
9*4882a593SmuzhiyunSQUASHFS_LICENSE = GPL-2.0+
10*4882a593SmuzhiyunSQUASHFS_LICENSE_FILES = COPYING
11*4882a593SmuzhiyunSQUASHFS_CPE_ID_VENDOR = squashfs_project
12*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS = XATTR_SUPPORT=1
13*4882a593Smuzhiyun
14*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQUASHFS_LZ4),y)
15*4882a593SmuzhiyunSQUASHFS_DEPENDENCIES += lz4
16*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += LZ4_SUPPORT=1 COMP_DEFAULT=lz4
17*4882a593Smuzhiyunelse
18*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += LZ4_SUPPORT=0
19*4882a593Smuzhiyunendif
20*4882a593Smuzhiyun
21*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQUASHFS_LZMA),y)
22*4882a593SmuzhiyunSQUASHFS_DEPENDENCIES += xz
23*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += LZMA_XZ_SUPPORT=1 COMP_DEFAULT=lzma
24*4882a593Smuzhiyunelse
25*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += LZMA_XZ_SUPPORT=0
26*4882a593Smuzhiyunendif
27*4882a593Smuzhiyun
28*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQUASHFS_XZ),y)
29*4882a593SmuzhiyunSQUASHFS_DEPENDENCIES += xz
30*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += XZ_SUPPORT=1 COMP_DEFAULT=xz
31*4882a593Smuzhiyunelse
32*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += XZ_SUPPORT=0
33*4882a593Smuzhiyunendif
34*4882a593Smuzhiyun
35*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQUASHFS_LZO),y)
36*4882a593SmuzhiyunSQUASHFS_DEPENDENCIES += lzo
37*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += LZO_SUPPORT=1 COMP_DEFAULT=lzo
38*4882a593Smuzhiyunelse
39*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += LZO_SUPPORT=0
40*4882a593Smuzhiyunendif
41*4882a593Smuzhiyun
42*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQUASHFS_ZSTD),y)
43*4882a593SmuzhiyunSQUASHFS_DEPENDENCIES += zstd
44*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += ZSTD_SUPPORT=1 COMP_DEFAULT=zstd
45*4882a593Smuzhiyunelse
46*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += ZSTD_SUPPORT=0
47*4882a593Smuzhiyunendif
48*4882a593Smuzhiyun
49*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQUASHFS_GZIP),y)
50*4882a593SmuzhiyunSQUASHFS_DEPENDENCIES += zlib
51*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += GZIP_SUPPORT=1 COMP_DEFAULT=gzip
52*4882a593Smuzhiyunelse
53*4882a593SmuzhiyunSQUASHFS_MAKE_ARGS += GZIP_SUPPORT=0
54*4882a593Smuzhiyunendif
55*4882a593Smuzhiyun
56*4882a593SmuzhiyunHOST_SQUASHFS_DEPENDENCIES = host-zlib host-lz4 host-lzo host-xz host-zstd
57*4882a593Smuzhiyun
58*4882a593SmuzhiyunHOST_SQUASHFS_MAKE_ARGS = \
59*4882a593Smuzhiyun	XATTR_SUPPORT=1 \
60*4882a593Smuzhiyun	XZ_SUPPORT=1 \
61*4882a593Smuzhiyun	GZIP_SUPPORT=1 \
62*4882a593Smuzhiyun	LZ4_SUPPORT=1 \
63*4882a593Smuzhiyun	LZO_SUPPORT=1 \
64*4882a593Smuzhiyun	LZMA_XZ_SUPPORT=1 \
65*4882a593Smuzhiyun	ZSTD_SUPPORT=1
66*4882a593Smuzhiyun
67*4882a593Smuzhiyundefine SQUASHFS_BUILD_CMDS
68*4882a593Smuzhiyun	$(TARGET_MAKE_ENV) $(MAKE) \
69*4882a593Smuzhiyun		CC="$(TARGET_CC)" \
70*4882a593Smuzhiyun		EXTRA_CFLAGS="$(TARGET_CFLAGS) -fgnu89-inline" \
71*4882a593Smuzhiyun		EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
72*4882a593Smuzhiyun		$(SQUASHFS_MAKE_ARGS) \
73*4882a593Smuzhiyun		-C $(@D)/squashfs-tools/
74*4882a593Smuzhiyunendef
75*4882a593Smuzhiyun
76*4882a593Smuzhiyundefine SQUASHFS_INSTALL_TARGET_CMDS
77*4882a593Smuzhiyun	$(TARGET_MAKE_ENV) $(MAKE) $(SQUASHFS_MAKE_ARGS) \
78*4882a593Smuzhiyun		-C $(@D)/squashfs-tools/ INSTALL_DIR=$(TARGET_DIR)/usr/bin install
79*4882a593Smuzhiyunendef
80*4882a593Smuzhiyun
81*4882a593Smuzhiyundefine HOST_SQUASHFS_BUILD_CMDS
82*4882a593Smuzhiyun	$(HOST_MAKE_ENV) $(MAKE) \
83*4882a593Smuzhiyun		CC="$(HOSTCC)" \
84*4882a593Smuzhiyun		EXTRA_CFLAGS="$(HOST_CFLAGS)" \
85*4882a593Smuzhiyun		EXTRA_LDFLAGS="$(HOST_LDFLAGS)" \
86*4882a593Smuzhiyun		$(HOST_SQUASHFS_MAKE_ARGS) \
87*4882a593Smuzhiyun		-C $(@D)/squashfs-tools/
88*4882a593Smuzhiyunendef
89*4882a593Smuzhiyun
90*4882a593Smuzhiyundefine HOST_SQUASHFS_INSTALL_CMDS
91*4882a593Smuzhiyun	$(HOST_MAKE_ENV) $(MAKE) $(HOST_SQUASHFS_MAKE_ARGS) \
92*4882a593Smuzhiyun		-C $(@D)/squashfs-tools/ INSTALL_DIR=$(HOST_DIR)/bin install
93*4882a593Smuzhiyunendef
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun$(eval $(generic-package))
96*4882a593Smuzhiyun$(eval $(host-generic-package))
97