]>
Commit | Line | Data |
---|---|---|
cd1a2927 | 1 | ############################################################################### |
cd1a2927 | 2 | # # |
70df8302 MT |
3 | # IPFire.org - A linux based firewall # |
4 | # Copyright (C) 2007 Michael Tremer & Christian Schmidt # | |
5 | # # | |
6 | # This program is free software: you can redistribute it and/or modify # | |
cd1a2927 | 7 | # it under the terms of the GNU General Public License as published by # |
70df8302 | 8 | # the Free Software Foundation, either version 3 of the License, or # |
cd1a2927 MT |
9 | # (at your option) any later version. # |
10 | # # | |
70df8302 | 11 | # This program is distributed in the hope that it will be useful, # |
cd1a2927 MT |
12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # |
13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # | |
14 | # GNU General Public License for more details. # | |
15 | # # | |
16 | # You should have received a copy of the GNU General Public License # | |
70df8302 | 17 | # along with this program. If not, see <http://www.gnu.org/licenses/>. # |
cd1a2927 | 18 | # # |
cd1a2927 MT |
19 | ############################################################################### |
20 | ||
21 | ############################################################################### | |
22 | # Definitions | |
23 | ############################################################################### | |
24 | ||
25 | include Config | |
26 | ||
be472d5a MT |
27 | PKG_NAME = gzip |
28 | VER = 1.3.12 | |
cd1a2927 | 29 | |
be472d5a | 30 | THISAPP = $(PKG_NAME)-$(VER) |
cd1a2927 | 31 | DL_FILE = $(THISAPP).tar.gz |
cd1a2927 MT |
32 | DIR_APP = $(DIR_SRC)/$(THISAPP) |
33 | ||
6679675b | 34 | OBJECT = $(DIR_INFO)/$(STAGE_ORDER)_$(STAGE)/$(THISAPP) |
cd1a2927 MT |
35 | |
36 | ############################################################################### | |
37 | # Top-level Rules | |
38 | ############################################################################### | |
39 | ||
88068980 MT |
40 | objects = $(DL_FILE) \ |
41 | $(THISAPP)-openbsd-owl-tmp.patch \ | |
42 | $(THISAPP)-cve-2006-4337_len.patch \ | |
43 | $(THISAPP)-cve-2006-4338.patch | |
cd1a2927 | 44 | |
6679675b | 45 | install : $(OBJECT) |
cd1a2927 | 46 | |
87703b91 | 47 | download : $(objects) |
cd1a2927 | 48 | |
87703b91 | 49 | $(objects) : |
cd1a2927 MT |
50 | @$(LOAD) |
51 | ||
cd1a2927 MT |
52 | ############################################################################### |
53 | # Installation Details | |
54 | ############################################################################### | |
55 | ||
6679675b | 56 | $(OBJECT) : |
cd1a2927 MT |
57 | @$(PREBUILD) |
58 | @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) | |
0e61af85 MT |
59 | |
60 | ifeq "$(STAGE)" "toolchain" | |
be472d5a MT |
61 | cd $(DIR_APP) && \ |
62 | for file in gzip.c lib/utimens.{c,h}; do \ | |
63 | cp -v $$file{,.orig}; \ | |
64 | sed 's/futimens/gl_&/' $$file.orig > $$file; \ | |
65 | done | |
0e61af85 | 66 | |
88068980 MT |
67 | # This patch modifies 'znew' so we don't use temporary files: |
68 | cd $(DIR_APP) && patch -Np1 -i $(DIR_PATCHES)/$(THISAPP)-openbsd-owl-tmp.patch | |
69 | ||
70 | # Fix CVE 2006-4337 | |
71 | # (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4337) and | |
72 | # CVE 2006-4338 (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-4338), | |
73 | # against malformed gzip files: | |
74 | cd $(DIR_APP) && patch -Np1 -i $(DIR_PATCHES)/$(THISAPP)-cve-2006-4337_len.patch | |
75 | cd $(DIR_APP) && patch -Np1 -i $(DIR_PATCHES)/$(THISAPP)-cve-2006-4338.patch | |
76 | ||
77 | # NO_ASM is for textrels. | |
78 | cd $(DIR_APP) && \ | |
79 | DEFS=NO_ASM \ | |
80 | ./configure \ | |
81 | $(CONFIGURE_ARCH) \ | |
82 | --prefix=$(TOOLS_DIR) | |
3d84c75d | 83 | cd $(DIR_APP) && make $(PARALLELISMFLAGS) |
be472d5a | 84 | cd $(DIR_APP) && make install |
0e61af85 MT |
85 | endif |
86 | ||
87 | ifeq "$(STAGE)" "base" | |
88 | cd $(DIR_APP) && sed -i 's/futimens/gl_&/' gzip.c lib/utimens.{c,h} | |
ed14dc4c MT |
89 | cd $(DIR_APP) && \ |
90 | ./configure \ | |
91 | $(CONFIGURE_ARCH) \ | |
92 | --prefix=/usr \ | |
93 | --bindir=/bin | |
3d84c75d | 94 | cd $(DIR_APP) && make $(PARALLELISMFLAGS) |
0e61af85 MT |
95 | cd $(DIR_APP) && make install |
96 | mv -v /bin/{gzexe,uncompress,zcmp,zdiff,zegrep} /usr/bin | |
97 | mv -v /bin/{zfgrep,zforce,zgrep,zless,zmore,znew} /usr/bin | |
98 | endif | |
99 | ||
cd1a2927 MT |
100 | @rm -rf $(DIR_APP) |
101 | @$(POSTBUILD) |