]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - lfs/unicorn
HinzugefĆ¼gt:
[people/pmueller/ipfire-2.x.git] / lfs / unicorn
1 ###############################################################################
2 # This file is part of the IPCop Firewall. #
3 # #
4 # IPCop is free software; you can redistribute it and/or modify #
5 # it under the terms of the GNU General Public License as published by #
6 # the Free Software Foundation; either version 2 of the License, or #
7 # (at your option) any later version. #
8 # #
9 # IPCop is distributed in the hope that it will be useful, #
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
12 # GNU General Public License for more details. #
13 # #
14 # You should have received a copy of the GNU General Public License #
15 # along with IPCop; if not, write to the Free Software #
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
17 # #
18 # Makefiles are based on LFSMake, which is #
19 # Copyright (C) 2002 Rod Roard <rod@sunsetsystems.com> #
20 # #
21 # Modifications by: #
22 # ??-12-2003 Mark Wormgoor < mark@wormgoor.com> #
23 # - Modified Makefile for IPCop build #
24 # #
25 # $Id: unicorn,v 1.13.2.8 2005/02/05 15:38:16 gespinasse Exp $
26 # #
27 ###############################################################################
28
29 ###############################################################################
30 # Definitions
31 ###############################################################################
32
33 include Config
34
35 VER = 0.9.0
36
37 THISAPP = bast-$(VER)
38 DL_FILE = $(THISAPP).tgz
39 DL_FROM = http://www.bewan.com/bewan/drivers
40 DIR_APP = $(DIR_SRC)/unicorn
41 ifeq "$(SMP)" ""
42 TARGET = $(DIR_INFO)/$(THISAPP)
43 else
44 TARGET = $(DIR_INFO)/$(THISAPP)-smp
45 endif
46
47 ###############################################################################
48 # Top-level Rules
49 ###############################################################################
50
51 objects = $(DL_FILE)
52
53 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
54
55 $(DL_FILE)_MD5 = 8b4f880e79d9d23029cc8f85e2f6478a
56
57 install : $(TARGET)
58
59 check : $(patsubst %,$(DIR_CHK)/%,$(objects))
60
61 download :$(patsubst %,$(DIR_DL)/%,$(objects))
62
63 md5 : $(subst %,%_MD5,$(objects))
64
65 ###############################################################################
66 # Downloading, checking, md5sum
67 ###############################################################################
68
69 $(patsubst %,$(DIR_CHK)/%,$(objects)) :
70 @$(CHECK)
71
72 $(patsubst %,$(DIR_DL)/%,$(objects)) :
73 @$(LOAD)
74
75 $(subst %,%_MD5,$(objects)) :
76 @$(MD5)
77
78 ###############################################################################
79 # Installation Details
80 ###############################################################################
81
82 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
83 @$(PREBUILD)
84 @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
85 sed -i -e 's%^CC=gcc.*$$%CC=$(KGCC)%' $(DIR_APP)/unicorn_pci/Makefile
86 sed -i -e 's%^CC=gcc.*$$%CC=$(KGCC)%' $(DIR_APP)/unicorn_usb/Makefile
87 sed -i -e 's%^PATCHLEVEL.*$$%PATCHLEVEL=4%' $(DIR_APP)/unicorn_pci/Makefile
88 sed -i -e 's%^PATCHLEVEL.*$$%PATCHLEVEL=4%' $(DIR_APP)/unicorn_usb/Makefile
89 sed -i -e 's%^COPTIONS.*$$%CXX=$(KGCC) -x c++%' $(DIR_APP)/unicorn_pci/Makefile
90 ifeq "$(SMP)" ""
91 sed -i -e 's%^KVERS.*$$%KVERS=$(KVER)%' $(DIR_APP)/unicorn_usb/Makefile
92 sed -i -e 's%^KVERS.*$$%KVERS=$(KVER)%' $(DIR_APP)/unicorn_pci/Makefile
93 else
94 sed -i -e 's%^KVERS.*$$%KVERS=$(KVER)-smp%' $(DIR_APP)/unicorn_usb/Makefile
95 sed -i -e 's%^KVERS.*$$%KVERS=$(KVER)-smp%' $(DIR_APP)/unicorn_pci/Makefile
96 endif
97 cd $(DIR_APP) && make modules
98 cd $(DIR_APP) && make only_modules_install
99 ifeq "$(SMP)" ""
100 find /lib/modules/$(KVER)/ -name '*.o' -a -type f | xargs gzip -f9
101 cd $(DIR_APP)/tools && sed -i 's%^prefix=.*$$%prefix=/usr%' Makefile
102 cd $(DIR_APP)/tools && make unicorn_status oam_ping
103 cd $(DIR_APP)/tools && make install
104 else
105 find /lib/modules/$(KVER)-smp/ -name '*.o' -a -type f | xargs gzip -f9
106 endif
107 @rm -rf $(DIR_APP)
108 @$(POSTBUILD)