]>
Commit | Line | Data |
---|---|---|
76d5aabd MT |
1 | ############################################################################### |
2 | # # | |
3 | # IPFire.org - A linux based firewall # | |
eee037b8 | 4 | # Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> # |
76d5aabd MT |
5 | # # |
6 | # This program is free software: you can redistribute it and/or modify # | |
7 | # it under the terms of the GNU General Public License as published by # | |
8 | # the Free Software Foundation, either version 3 of the License, or # | |
9 | # (at your option) any later version. # | |
10 | # # | |
11 | # This program is distributed in the hope that it will be useful, # | |
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 # | |
17 | # along with this program. If not, see <http://www.gnu.org/licenses/>. # | |
18 | # # | |
19 | ############################################################################### | |
20 | ||
21 | ############################################################################### | |
22 | # Definitions | |
23 | ############################################################################### | |
24 | ||
25 | include Config | |
26 | ||
7ef43add | 27 | VER = v2.0 |
0b289b3a | 28 | PXE_VER = 1b67a05 |
76d5aabd MT |
29 | |
30 | THISAPP = ipfire-netboot-$(VER) | |
31 | DL_FILE = $(THISAPP).tar.gz | |
c484679b | 32 | DL_FROM = https://source.ipfire.org/releases/ipfire-netboot/ |
76d5aabd MT |
33 | DIR_APP = $(DIR_SRC)/$(THISAPP) |
34 | TARGET = $(DIR_INFO)/$(THISAPP) | |
6cf219c4 | 35 | SUP_ARCH = x86_64 |
76d5aabd MT |
36 | |
37 | ############################################################################### | |
38 | # Top-level Rules | |
39 | ############################################################################### | |
40 | ||
8b690bda | 41 | objects = $(DL_FILE) ipxe-$(PXE_VER).tar.gz |
76d5aabd MT |
42 | |
43 | $(DL_FILE) = $(DL_FROM)/$(DL_FILE) | |
8b690bda | 44 | ipxe-$(PXE_VER).tar.gz = $(URL_IPFIRE)/ipxe-$(PXE_VER).tar.gz |
76d5aabd | 45 | |
9a7e4d85 PM |
46 | $(DL_FILE)_BLAKE2 = 5f66932b7be228f5a246b92352e31c99d4f4e8666da9795a6f9762c979f480fb3c2620fc128af14d396065d0c9362e1cdc10eddce2bb58901567581c0d5e8cee |
47 | ipxe-$(PXE_VER).tar.gz_BLAKE2 = 5a6b7c422856157ff1f6aeb7e835add5a2bdd6678d8cc960eae2d926709ce73803484bbe0a428022de2fbc5b018096526ba48f2172c2c25540e1dc12c7a1f8e1 | |
76d5aabd MT |
48 | |
49 | install : $(TARGET) | |
50 | ||
51 | check : $(patsubst %,$(DIR_CHK)/%,$(objects)) | |
52 | ||
53 | download :$(patsubst %,$(DIR_DL)/%,$(objects)) | |
54 | ||
9a7e4d85 | 55 | b2 : $(subst %,%_BLAKE2,$(objects)) |
76d5aabd MT |
56 | |
57 | ############################################################################### | |
9a7e4d85 | 58 | # Downloading, checking, b2sum |
76d5aabd MT |
59 | ############################################################################### |
60 | ||
61 | $(patsubst %,$(DIR_CHK)/%,$(objects)) : | |
62 | @$(CHECK) | |
63 | ||
64 | $(patsubst %,$(DIR_DL)/%,$(objects)) : | |
65 | @$(LOAD) | |
66 | ||
9a7e4d85 PM |
67 | $(subst %,%_BLAKE2,$(objects)) : |
68 | @$(B2SUM) | |
76d5aabd MT |
69 | |
70 | ############################################################################### | |
71 | # Installation Details | |
72 | ############################################################################### | |
73 | ||
74 | $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) | |
75 | @$(PREBUILD) | |
76 | @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) | |
77 | ||
78 | # Extract iPXE source | |
8b690bda | 79 | cd $(DIR_APP) && tar axf $(DIR_DL)/ipxe-$(PXE_VER).tar.gz |
bab38dad MT |
80 | cd $(DIR_APP)/ipxe-$(PXE_VER) && patch -Np1 < $(DIR_SRC)/src/patches/ipxe-fix-stringop-truncation-warning-with-gcc-8-x.patch |
81 | cd $(DIR_APP)/ipxe-$(PXE_VER) && patch -Np1 < $(DIR_SRC)/src/patches/ipxe-handle-R_X86_64_PLT32.patch | |
ac2d807d | 82 | cd $(DIR_APP)/ipxe-$(PXE_VER) && patch -Np1 < $(DIR_SRC)/src/patches/ipxe-1b67a05-be-explicit-about-fcommon-compiler-directive.patch |
852324e2 | 83 | cd $(DIR_APP)/ipxe-$(PXE_VER) && patch -Np1 < $(DIR_SRC)/src/patches/ipxe-use-the-right-sized-register-for-push.patch |
76d5aabd | 84 | cd $(DIR_APP) && rm -rfv ipxe && ln -s ipxe-$(PXE_VER) ipxe |
23164efb | 85 | cd $(DIR_APP) && make $(MAKETUNING) bin/ipxe.lkrn |
ba3cbb0c | 86 | ifeq "$(BUILD_ARCH)" "x86_64" |
23164efb | 87 | cd $(DIR_APP) && make $(MAKETUNING) bin-x86_64-efi/ipxe.efi |
02683807 | 88 | endif |
76d5aabd MT |
89 | |
90 | # Installation | |
91 | -mkdir -pv /usr/share/ipfire-netboot | |
92 | cd $(DIR_APP) && install -m 644 bin/ipxe.lkrn /usr/share/ipfire-netboot | |
ba3cbb0c | 93 | ifeq "$(BUILD_ARCH)" "x86_64" |
02683807 MT |
94 | cd $(DIR_APP) && install -m 644 bin-x86_64-efi/ipxe.efi \ |
95 | /usr/share/ipfire-netboot | |
96 | endif | |
76d5aabd MT |
97 | |
98 | @rm -rf $(DIR_APP) | |
99 | @$(POSTBUILD) |