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