Add support to build an ARM toolchain.
[ipfire-2.x.git] / lfs / coreutils
CommitLineData
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
25include Config
26
dd714b8a 27VER = 5.96
cd1a2927
MT
28
29THISAPP = coreutils-$(VER)
30DL_FILE = $(THISAPP).tar.bz2
f417cab6 31DL_FROM = $(URL_IPFIRE)
cd1a2927
MT
32DIR_APP = $(DIR_SRC)/$(THISAPP)
33
34# Normal build or /tools build.
35#
36ifeq "$(ROOT)" ""
37 TARGET = $(DIR_INFO)/$(THISAPP)
38 EXTRA_CONFIG = --prefix=/usr --disable-nls
39 EXTRA_MAKE =
40 EXTRA_INSTALL =
41else
42 TARGET = $(DIR_INFO)/$(THISAPP)-tools
43 EXTRA_CONFIG = --prefix=/tools --disable-nls --host=$(MACHINE)
44 EXTRA_MAKE =
45 EXTRA_INSTALL =
46endif
47
48###############################################################################
49# Top-level Rules
50###############################################################################
dd714b8a
MT
51
52objects =$(DL_FILE)
cd1a2927
MT
53
54$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
cd1a2927 55
dd714b8a 56$(DL_FILE)_MD5 = bf55d069d82128fd754a090ce8b5acff
cd1a2927
MT
57
58install : $(TARGET)
59
60check : $(patsubst %,$(DIR_CHK)/%,$(objects))
61
62download :$(patsubst %,$(DIR_DL)/%,$(objects))
63
64md5 : $(subst %,%_MD5,$(objects))
65
66###############################################################################
67# Downloading, checking, md5sum
68###############################################################################
69
70$(patsubst %,$(DIR_CHK)/%,$(objects)) :
71 @$(CHECK)
72
73$(patsubst %,$(DIR_DL)/%,$(objects)) :
74 @$(LOAD)
75
76$(subst %,%_MD5,$(objects)) :
77 @$(MD5)
78
79###############################################################################
80# Installation Details
81###############################################################################
82
83$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
84 @$(PREBUILD)
85 @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
51f9e7ac 86 cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/coreutils-5.96-rename-tee.patch
9b0ff0a0 87ifeq "$(ROOT)" ""
dd714b8a
MT
88 cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-uname-1.patch
89 cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-suppress_uptime_kill_su-1.patch
90 cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-i18n-1.patch
91 cd $(DIR_APP) && chmod +x tests/sort/sort-mb-tests
92 cd $(DIR_APP) && sed -i 's/_LEN 6/_LEN 20/' src/who.c
9b0ff0a0 93endif
dd714b8a
MT
94 cd $(DIR_APP) && ./configure $(EXTRA_CONFIG)
95 cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
cd1a2927
MT
96 cd $(DIR_APP) && make $(EXTRA_INSTALL) install
97 #use hostname from inet-tools
98ifeq "$(ROOT)" ""
99 rm /usr/bin/hostname
dd714b8a
MT
100 mv -v /usr/bin/{cat,chgrp,chmod,chown,cp,date,dd,df,echo} /bin
101 mv -v /usr/bin/{false,ln,ls,mkdir,mknod,mv,pwd,rm} /bin
102 mv -v /usr/bin/{rmdir,stty,sync,true,uname} /bin
103 mv -v /usr/bin/chroot /usr/sbin
104 mv -v /usr/bin/{head,sleep,nice} /bin
cd1a2927 105 ln -sf test /bin/[
857d9bf2 106 #ln -sf ../../bin/install /usr/bin
cd1a2927
MT
107 mv -f /bin/uname /bin/uname.bak
108 echo '#!/bin/bash' > /bin/uname
109 echo '/bin/uname.bak $$* | sed 's/i.86/$(MACHINE)/g'' >> /bin/uname
110 chmod 755 /bin/uname
71e32384 111 dircolors -p > /etc/dircolors
cd1a2927
MT
112else
113 rm /tools/bin/hostname
114 mv -f /tools/bin/uname /tools/bin/uname.bak
115 echo '#!/bin/bash' > /tools/bin/uname
116 echo '/tools/bin/uname.bak $$* | sed 's/i.86/$(MACHINE)/g'' >> /tools/bin/uname
117 chmod 755 /tools/bin/uname
118endif
119 @rm -rf $(DIR_APP)
120 @$(POSTBUILD)