remove redundant prerequisite
[buildroot.git] / package / coreutils / coreutils.mk
blobf141774740b91314de6d10e0f79d18e0fae6d62a
1 #############################################################
3 # coreutils
5 #############################################################
6 COREUTILS_VERSION:=6.9
7 COREUTILS_SOURCE:=coreutils-$(COREUTILS_VERSION).tar.bz2
8 #COREUTILS_SITE:=ftp://alpha.gnu.org/gnu/coreutils/
9 COREUTILS_SITE:=$(BR2_GNU_MIRROR)/coreutils
10 COREUTILS_CAT:=$(BZCAT)
11 COREUTILS_DIR:=$(BUILD_DIR)/coreutils-$(COREUTILS_VERSION)
12 COREUTILS_BINARY:=src/vdir
13 COREUTILS_TARGET_BINARY:=bin/vdir
14 BIN_PROGS:=cat chgrp chmod chown cp date dd df dir echo false hostname \
15 ln ls mkdir mknod mv pwd rm rmdir vdir sleep stty sync touch true uname
17 $(DL_DIR)/$(COREUTILS_SOURCE):
18 $(WGET) -P $(DL_DIR) $(COREUTILS_SITE)/$(COREUTILS_SOURCE)
20 $(COREUTILS_DIR)/.unpacked: $(DL_DIR)/$(COREUTILS_SOURCE)
21 $(COREUTILS_CAT) $(DL_DIR)/$(COREUTILS_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
22 toolchain/patch-kernel.sh $(COREUTILS_DIR) package/coreutils/ coreutils\*.patch
23 touch $@
25 $(COREUTILS_DIR)/.configured: $(COREUTILS_DIR)/.unpacked
26 (cd $(COREUTILS_DIR); rm -rf config.cache; \
27 $(TARGET_CONFIGURE_OPTS) \
28 $(TARGET_CONFIGURE_ARGS) \
29 ac_cv_func_strtod=yes \
30 ac_fsusage_space=yes \
31 fu_cv_sys_stat_statfs2_bsize=yes \
32 ac_cv_func_closedir_void=no \
33 ac_cv_func_getloadavg=no \
34 ac_cv_lib_util_getloadavg=no \
35 ac_cv_lib_getloadavg_getloadavg=no \
36 ac_cv_func_getgroups=yes \
37 ac_cv_func_getgroups_works=yes \
38 ac_cv_func_chown_works=yes \
39 ac_cv_have_decl_euidaccess=no \
40 ac_cv_func_euidaccess=no \
41 ac_cv_have_decl_strnlen=yes \
42 ac_cv_func_strnlen_working=yes \
43 ac_cv_func_lstat_dereferences_slashed_symlink=yes \
44 ac_cv_func_lstat_empty_string_bug=no \
45 ac_cv_func_stat_empty_string_bug=no \
46 vb_cv_func_rename_trailing_slash_bug=no \
47 ac_cv_have_decl_nanosleep=yes \
48 jm_cv_func_nanosleep_works=yes \
49 gl_cv_func_working_utimes=yes \
50 ac_cv_func_utime_null=yes \
51 ac_cv_have_decl_strerror_r=yes \
52 ac_cv_func_strerror_r_char_p=no \
53 jm_cv_func_svid_putenv=yes \
54 ac_cv_func_getcwd_null=yes \
55 ac_cv_func_getdelim=yes \
56 ac_cv_func_mkstemp=yes \
57 utils_cv_func_mkstemp_limitations=no \
58 utils_cv_func_mkdir_trailing_slash_bug=no \
59 ac_cv_func_memcmp_working=yes \
60 ac_cv_have_decl_malloc=yes \
61 gl_cv_func_malloc_0_nonnull=yes \
62 ac_cv_func_malloc_0_nonnull=yes \
63 ac_cv_func_calloc_0_nonnull=yes \
64 ac_cv_func_realloc_0_nonnull=yes \
65 jm_cv_func_gettimeofday_clobber=no \
66 am_cv_func_working_getline=yes \
67 gl_cv_func_working_readdir=yes \
68 jm_ac_cv_func_link_follows_symlink=no \
69 utils_cv_localtime_cache=no \
70 ac_cv_struct_st_mtim_nsec=no \
71 gl_cv_func_tzset_clobber=no \
72 gl_cv_func_getcwd_null=yes \
73 gl_cv_func_getcwd_path_max=yes \
74 ac_cv_func_fnmatch_gnu=yes \
75 am_getline_needs_run_time_check=no \
76 am_cv_func_working_getline=yes \
77 gl_cv_func_mkdir_trailing_slash_bug=no \
78 gl_cv_func_mkstemp_limitations=no \
79 ac_cv_func_working_mktime=yes \
80 jm_cv_func_working_re_compile_pattern=yes \
81 ac_use_included_regex=no \
82 gl_cv_c_restrict=no \
83 ./configure \
84 --target=$(GNU_TARGET_NAME) \
85 --host=$(GNU_TARGET_NAME) \
86 --build=$(GNU_HOST_NAME) \
87 --prefix=/usr \
88 --exec-prefix=/usr \
89 --bindir=/usr/bin \
90 --sbindir=/usr/sbin \
91 --libdir=/lib \
92 --libexecdir=/usr/lib \
93 --sysconfdir=/etc \
94 --datadir=/usr/share \
95 --localstatedir=/var \
96 --mandir=/usr/share/man \
97 --infodir=/usr/share/info \
98 $(DISABLE_NLS) \
99 $(DISABLE_LARGEFILE) \
100 --disable-rpath \
101 --disable-dependency-tracking \
103 touch $@
105 $(COREUTILS_DIR)/$(COREUTILS_BINARY): $(COREUTILS_DIR)/.configured
106 $(MAKE) -C $(COREUTILS_DIR)
107 rm -f $(TARGET_DIR)/$(COREUTILS_TARGET_BINARY)
109 $(TARGET_DIR)/$(COREUTILS_TARGET_BINARY): $(COREUTILS_DIR)/$(COREUTILS_BINARY)
110 $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(COREUTILS_DIR) install
111 # some things go in root rather than usr
112 for f in $(BIN_PROGS); do \
113 mv $(TARGET_DIR)/usr/bin/$$f $(TARGET_DIR)/bin/$$f; \
114 done
115 # link for archaic shells
116 ln -fs test $(TARGET_DIR)/usr/bin/[
117 # gnu thinks chroot is in bin, debian thinks it's in sbin
118 mv $(TARGET_DIR)/usr/bin/chroot $(TARGET_DIR)/usr/sbin/chroot
119 $(STRIPCMD) $(TARGET_DIR)/usr/sbin/chroot > /dev/null 2>&1
120 ifneq ($(BR2_HAVE_INFOPAGES),y)
121 rm -rf $(TARGET_DIR)/usr/share/info
122 endif
123 ifneq ($(BR2_HAVE_MANPAGES),y)
124 rm -rf $(TARGET_DIR)/usr/share/man
125 endif
126 rm -rf $(TARGET_DIR)/share/locale
127 rm -rf $(TARGET_DIR)/usr/share/doc
129 # If both coreutils and busybox are selected, make certain coreutils
130 # wins the fight over who gets to have their utils actually installed.
131 ifeq ($(BR2_PACKAGE_BUSYBOX),y)
132 coreutils: busybox $(TARGET_DIR)/$(COREUTILS_TARGET_BINARY)
133 else
134 coreutils: $(TARGET_DIR)/$(COREUTILS_TARGET_BINARY)
135 endif
137 coreutils-source: $(DL_DIR)/$(COREUTILS_SOURCE)
139 # If both coreutils and busybox are selected, the corresponding applets
140 # may need to be reinstated by the clean targets.
141 coreutils-clean:
142 $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(COREUTILS_DIR) uninstall
143 -$(MAKE) -C $(COREUTILS_DIR) clean
145 coreutils-dirclean:
146 rm -rf $(COREUTILS_DIR)
148 #############################################################
150 # Toplevel Makefile options
152 #############################################################
153 ifeq ($(BR2_PACKAGE_COREUTILS),y)
154 TARGETS+=coreutils
155 endif