bzip2: fix hardening build
[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://distfiles.gentoo.org/distfiles/ \
16         http://distcache.freebsd.org/ports-distfiles/
17 PKG_HASH:=a2848f34fcd5d6cf47def00461fcb528a0484d8edef8208d6d2e2909dc61d9cd
18 PKG_MAINTAINER:=Steven Barth <cyrus@openwrt.org>
19
20 PKG_LICENSE:=BZIP2
21 PKG_LICENSE_FILES:=LICENSE
22 PKG_CPE_ID:=cpe:/a:bzip:bzip2
23
24 include $(INCLUDE_DIR)/host-build.mk
25 include $(INCLUDE_DIR)/package.mk
26
27 define Package/bzip2/Default
28   SUBMENU:=Compression
29   URL:=http://www.bzip.org/
30 endef
31
32 define Package/libbz2
33 $(call Package/bzip2/Default)
34   SECTION:=libs
35   CATEGORY:=Libraries
36   DEPENDS:=
37   TITLE:=bzip2 library.
38 endef
39
40 define Package/libbz2/description
41         bzip2 is a freely available, patent free, high-quality
42         data compressor. This packages provides libbz2 library.
43 endef
44
45 define Package/bzip2
46 $(call Package/bzip2/Default)
47   SECTION:=utils
48   CATEGORY:=Utilities
49   DEPENDS:=+libbz2
50   TITLE:=bzip2 is a compression utility.
51 endef
52
53 define Package/bzip2/description
54         bzip2 is a freely available, patent free, high-quality
55         data compressor. This package provides the binary.
56 endef
57
58 TARGET_CFLAGS += \
59         $(FPIC)
60
61 CONFIGURE_ARGS += --prefix=/usr
62
63 MAKE_FLAGS += \
64         -f Makefile-libbz2_so \
65         CFLAGS="$(TARGET_CFLAGS)" \
66         LDFLAGS="$(TARGET_LDFLAGS)" \
67         all
68
69 define 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
76 endef
77
78 define 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
82 endef
83
84 define 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
89 endef
90
91 HOST_CFLAGS += \
92         $(FPIC)
93
94 HOST_MAKE_FLAGS+= \
95         CFLAGS="$(HOST_CFLAGS)" \
96         LDFLAGS="$(HOST_LDFLAGS)" \
97         all
98
99 HOST_CONFIGURE_ARGS+= \
100         --prefix=$(STAGING_DIR_HOSTPKG)
101
102 define Host/Install
103         $(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin/
104         $(MAKE) -C $(HOST_BUILD_DIR) PREFIX=$(STAGING_DIR_HOSTPKG)/ install
105 endef
106
107 $(eval $(call HostBuild))
108
109 $(eval $(call BuildPackage,libbz2))
110 $(eval $(call BuildPackage,bzip2))