blob: 7ae089f4f4185ff14a42c3da8719e91b3c6a765c [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001#
2# Copyright (C) 2007-2008 OpenWrt.org
3#
4# This is free software, licensed under the GNU General Public License v2.
5# See /LICENSE for more information.
6#
7
8include $(TOPDIR)/rules.mk
9
10PKG_NAME:=bzip2
11PKG_VERSION:=1.0.8
12PKG_RELEASE:=1
13
14PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15PKG_SOURCE_URL:=https://sourceware.org/pub/bzip2
16PKG_HASH:=ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269
17
18PKG_MAINTAINER:=Steven Barth <cyrus@openwrt.org>
19PKG_LICENSE:=bzip2-1.0.8
20PKG_LICENSE_FILES:=LICENSE
21PKG_CPE_ID:=cpe:/a:bzip:bzip2
22
23include $(INCLUDE_DIR)/host-build.mk
24include $(INCLUDE_DIR)/package.mk
25
26define Package/bzip2/Default
27 SUBMENU:=Compression
28 URL:=https://sourceware.org/bzip2/
29endef
30
31define Package/libbz2
32$(call Package/bzip2/Default)
33 SECTION:=libs
34 CATEGORY:=Libraries
35 DEPENDS:=
36 TITLE:=bzip2 library.
37 ABI_VERSION:=1.0
38endef
39
40define Package/libbz2/description
41 bzip2 is a freely available, patent free, high-quality
42 data compressor. This packages provides libbz2 library.
43endef
44
45define Package/bzip2
46$(call Package/bzip2/Default)
47 SECTION:=utils
48 CATEGORY:=Utilities
49 DEPENDS:=+libbz2
50 TITLE:=bzip2 is a compression utility.
51endef
52
53define Package/bzip2/description
54 bzip2 is a freely available, patent free, high-quality
55 data compressor. This package provides the binary.
56endef
57
58TARGET_CFLAGS += \
59 $(FPIC)
60
61CONFIGURE_ARGS += --prefix=/usr
62
63MAKE_FLAGS += \
64 -f Makefile-libbz2_so \
65 CFLAGS="$(TARGET_CFLAGS)" \
66 LDFLAGS="$(TARGET_LDFLAGS)" \
67 all
68
69define Build/InstallDev
70 $(INSTALL_DIR) $(1)/usr/include
71 $(CP) $(PKG_BUILD_DIR)/bzlib.h $(1)/usr/include/
72 $(INSTALL_DIR) $(1)/usr/lib
73 $(CP) $(PKG_BUILD_DIR)/libbz2.so.$(PKG_VERSION) $(1)/usr/lib/
74 $(LN) libbz2.so.$(PKG_VERSION) $(1)/usr/lib/libbz2.so.1.0
75 $(LN) libbz2.so.$(PKG_VERSION) $(1)/usr/lib/libbz2.so
76endef
77
78define Package/libbz2/install
79 $(INSTALL_DIR) $(1)/usr/lib/
80 $(CP) $(PKG_BUILD_DIR)/libbz2.so.$(PKG_VERSION) $(1)/usr/lib/
81 $(LN) libbz2.so.$(PKG_VERSION) $(1)/usr/lib/libbz2.so.1.0
82endef
83
84define Package/bzip2/install
85 $(INSTALL_DIR) $(1)/usr/bin/
86 $(INSTALL_BIN) $(PKG_BUILD_DIR)/bzip2-shared $(1)/usr/bin/bzip2
87 $(INSTALL_DIR) $(1)/bin/
88 $(LN) ../usr/bin/bzip2 $(1)/bin/bzip2
89endef
90
91HOST_CFLAGS += \
92 $(FPIC)
93
94HOST_MAKE_FLAGS+= \
95 CFLAGS="$(HOST_CFLAGS)" \
96 LDFLAGS="$(HOST_LDFLAGS)" \
97 all
98
99HOST_CONFIGURE_ARGS+= \
100 --prefix=$(STAGING_DIR_HOSTPKG)
101
102define Host/Install
103 $(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin/
104 $(MAKE) -C $(HOST_BUILD_DIR) PREFIX=$(STAGING_DIR_HOSTPKG)/ install
105endef
106
107$(eval $(call HostBuild))
108
109$(eval $(call BuildPackage,libbz2))
110$(eval $(call BuildPackage,bzip2))