bda2d3dcbeed035a7e5b7e5a105bce0814069c4b
[ipfire-2.x.git] / lfs / cnx_pci
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 #                                                                             #
26 ###############################################################################
27
28 ###############################################################################
29 # Definitions
30 ###############################################################################
31
32 include Config
33
34 VER        = cln
35 THISAPP    = CnxADSL-TgrATM$(VER)
36 DL_FILE    = $(THISAPP).tar.gz
37 # DL_FROM    = http://gateway.bedroom.gen.nz/~clive/adsl/thefiles/
38 DL_FROM    = http://g.esp.free.fr/download
39 # This package was send to me by mail and I have nothing changed to the original .tar.gz.
40 # Even it has the same name as the package available for download in his web-site, it is very different
41 # I hope it will be available for download in his site a day and that a proper name will allow to clearly differentiate
42 # each version.
43 DIR_APP    = $(DIR_SRC)/CnxADSL-TgrATM_k2.4.3-6.1.2.007CLN
44 ifeq "$(SMP)" ""
45   TARGET     = $(DIR_INFO)/$(THISAPP)-20041004
46 else
47   TARGET     = $(DIR_INFO)/$(THISAPP)-20041004-smp
48 endif
49
50 ###############################################################################
51 # Top-level Rules
52 ###############################################################################
53
54 objects = $(DL_FILE)
55
56 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
57
58 $(DL_FILE)_MD5 = 062afa889d23b2ea3a11938cdf2abd8d
59
60 install : $(TARGET)
61
62 check : $(patsubst %,$(DIR_CHK)/%,$(objects))
63
64 download :$(patsubst %,$(DIR_DL)/%,$(objects))
65
66 md5 : $(subst %,%_MD5,$(objects))
67
68 ###############################################################################
69 # Downloading, checking, md5sum
70 ###############################################################################
71
72 $(patsubst %,$(DIR_CHK)/%,$(objects)) :
73         @$(CHECK)
74
75 $(patsubst %,$(DIR_DL)/%,$(objects)) :
76         @$(LOAD)
77
78 $(subst %,%_MD5,$(objects)) :
79         @$(MD5)
80
81 ###############################################################################
82 # Installation Details
83 ###############################################################################
84
85 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
86         @$(PREBUILD)
87         @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xzf $(DIR_DL)/$(DL_FILE) -C /
88         cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/CnxADSL-cln-irqreturn.patch
89         cd $(DIR_APP)/KernelModule && ln -sf Makefile24 Makefile
90 ifeq "$(SMP)" ""
91         sed -i -e 's/depmod -av//' \
92                -e 's%^CC.*$$%CC=$(KGCC)%'     $(DIR_APP)/KernelModule/Makefile*
93         cd $(DIR_APP) && make KERNVER=$(KVER) -C KernelModule
94         cd $(DIR_APP) && make KERNVER=$(KVER) -C KernelModule install
95         find /lib/modules/$(KVER)/ -name '*.o' -a -type f | xargs gzip -f9
96
97         sed -i -e 's%/usr/bin.*$$%/usr/sbin%'   $(DIR_APP)/DownLoadApp/Makefile
98         sed -i -e 's%CnxTgF.hex.*$$%firmware.hex%'   $(DIR_APP)/DownLoadApp/cnxadsl.conf
99         cd $(DIR_APP) && make -C DownLoadApp 
100         cd $(DIR_APP) && make -C DownLoadApp install
101 else
102         sed -i -e 's/depmod -av//' \
103                -e 's%^CC.*$$%CC=$(KGCC)%'     $(DIR_APP)/KernelModule/Makefile*
104         cd $(DIR_APP) && make KERNVER=$(KVER)-smp -C KernelModule
105         cd $(DIR_APP) && make KERNVER=$(KVER)-smp -C KernelModule install
106         find /lib/modules/$(KVER)-smp/ -name '*.o' -a -type f | xargs gzip -f9
107 endif
108         @rm -rf $(DIR_APP)
109         @$(POSTBUILD)