aboutsummaryrefslogtreecommitdiff
path: root/coreutils
diff options
context:
space:
mode:
authorandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>2004-10-08 07:46:08 +0000
committerandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>2004-10-08 07:46:08 +0000
commitf6d0a8e7cb47688ed3786894219b373e87ac8a49 (patch)
treee81ce57a92acc0653374e1d262039562855d16ec /coreutils
parent5ba0134aa31b2cd9a11772fcd9e39d722347467e (diff)
downloadbusybox-w32-f6d0a8e7cb47688ed3786894219b373e87ac8a49.tar.gz
busybox-w32-f6d0a8e7cb47688ed3786894219b373e87ac8a49.tar.bz2
busybox-w32-f6d0a8e7cb47688ed3786894219b373e87ac8a49.zip
egor duda writes:
Hi! I've created a patch to busybox' build system to allow building it in separate tree in a manner similar to kbuild from kernel version 2.6. That is, one runs command like 'make O=/build/some/where/for/specific/target/and/options' and everything is built in this exact directory, provided that it exists. I understand that applyingc such invasive changes during 'release candidates' stage of development is at best unwise. So, i'm currently asking for comments about this patch, starting from whether such thing is needed at all to whether it coded properly. 'make check' should work now, and one make creates Makefile in build directory, so one can run 'make' in build directory after that. One possible caveat is that if we build in some directory other than source one, the source directory should be 'distclean'ed first. egor git-svn-id: svn://busybox.net/trunk/busybox@9320 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'coreutils')
-rw-r--r--coreutils/Makefile12
-rw-r--r--coreutils/Makefile.in7
-rw-r--r--coreutils/libcoreutils/Makefile13
-rw-r--r--coreutils/libcoreutils/Makefile.in7
4 files changed, 27 insertions, 12 deletions
diff --git a/coreutils/Makefile b/coreutils/Makefile
index b42689a26..50fdac236 100644
--- a/coreutils/Makefile
+++ b/coreutils/Makefile
@@ -17,13 +17,15 @@
17# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 17# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18# 18#
19 19
20TOPDIR:= ../ 20top_srcdir=..
21top_builddir=..
22srcdir=$(top_srcdir)/coreutils
21SHELLUTILS_DIR:=./ 23SHELLUTILS_DIR:=./
22include $(TOPDIR).config 24include $(top_builddir)/Rules.mak
23include $(TOPDIR)Rules.mak 25include $(top_builddir)/.config
24include Makefile.in 26include $(srcdir)/Makefile.in
25all: $(libraries-y) 27all: $(libraries-y)
26-include $(TOPDIR).depend 28-include $(top_builddir)/.depend
27 29
28clean: 30clean:
29 rm -f *.o *.a $(AR_TARGET) 31 rm -f *.o *.a $(AR_TARGET)
diff --git a/coreutils/Makefile.in b/coreutils/Makefile.in
index a5343c9c7..aacb813b3 100644
--- a/coreutils/Makefile.in
+++ b/coreutils/Makefile.in
@@ -19,8 +19,9 @@
19 19
20COREUTILS_AR:=coreutils.a 20COREUTILS_AR:=coreutils.a
21ifndef $(COREUTILS_DIR) 21ifndef $(COREUTILS_DIR)
22COREUTILS_DIR:=$(TOPDIR)coreutils/ 22COREUTILS_DIR:=$(top_builddir)/coreutils/
23endif 23endif
24srcdir=$(top_srcdir)/coreutils
24 25
25COREUTILS-y:= 26COREUTILS-y:=
26COREUTILS-$(CONFIG_BASENAME) += basename.o 27COREUTILS-$(CONFIG_BASENAME) += basename.o
@@ -91,3 +92,7 @@ libraries-y+=$(COREUTILS_DIR)$(COREUTILS_AR)
91 92
92$(COREUTILS_DIR)$(COREUTILS_AR): $(patsubst %,$(COREUTILS_DIR)%, $(COREUTILS-y)) 93$(COREUTILS_DIR)$(COREUTILS_AR): $(patsubst %,$(COREUTILS_DIR)%, $(COREUTILS-y))
93 $(AR) -ro $@ $(patsubst %,$(COREUTILS_DIR)%, $(COREUTILS-y)) 94 $(AR) -ro $@ $(patsubst %,$(COREUTILS_DIR)%, $(COREUTILS-y))
95
96$(COREUTILS_DIR)%.o: $(srcdir)/%.c
97 $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
98
diff --git a/coreutils/libcoreutils/Makefile b/coreutils/libcoreutils/Makefile
index 11867c602..0a1c80a41 100644
--- a/coreutils/libcoreutils/Makefile
+++ b/coreutils/libcoreutils/Makefile
@@ -17,13 +17,16 @@
17# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 17# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18# 18#
19 19
20TOPDIR:= ../../ 20top_srcdir=../..
21top_builddir=../..
22srcdir=$(top_srcdir)/coreutils/libcoreutils
21LIBCOREUTILS_DIR:=./ 23LIBCOREUTILS_DIR:=./
22include $(TOPDIR).config 24include $(top_builddir)/Rules.mak
23include $(TOPDIR)Rules.mak 25include $(top_builddir)/.config
24include Makefile.in 26include $(srcdir)/Makefile.in
27
25all: $(libraries-y) 28all: $(libraries-y)
26-include $(TOPDIR).depend 29-include $(top_builddir)/.depend
27 30
28clean: 31clean:
29 rm -f *.o *.a $(AR_TARGET) 32 rm -f *.o *.a $(AR_TARGET)
diff --git a/coreutils/libcoreutils/Makefile.in b/coreutils/libcoreutils/Makefile.in
index d0e8b3a05..cf83d7107 100644
--- a/coreutils/libcoreutils/Makefile.in
+++ b/coreutils/libcoreutils/Makefile.in
@@ -19,8 +19,9 @@
19 19
20LIBCOREUTILS_AR:=libcoreutils.a 20LIBCOREUTILS_AR:=libcoreutils.a
21ifndef $(LIBCOREUTILS_DIR) 21ifndef $(LIBCOREUTILS_DIR)
22LIBCOREUTILS_DIR:=$(TOPDIR)coreutils/libcoreutils/ 22LIBCOREUTILS_DIR:=$(top_builddir)/coreutils/libcoreutils/
23endif 23endif
24srcdir=$(top_srcdir)/coreutils/libcoreutils
24 25
25LIBCOREUTILS_SRC:= cp_mv_stat.c getopt_mk_fifo_nod.c xgetoptfile_sort_uniq.c 26LIBCOREUTILS_SRC:= cp_mv_stat.c getopt_mk_fifo_nod.c xgetoptfile_sort_uniq.c
26 27
@@ -30,3 +31,7 @@ libraries-y+=$(LIBCOREUTILS_DIR)$(LIBCOREUTILS_AR)
30 31
31$(LIBCOREUTILS_DIR)$(LIBCOREUTILS_AR): $(LIBCOREUTILS_OBJS) 32$(LIBCOREUTILS_DIR)$(LIBCOREUTILS_AR): $(LIBCOREUTILS_OBJS)
32 $(AR) -ro $@ $(LIBCOREUTILS_OBJS) 33 $(AR) -ro $@ $(LIBCOREUTILS_OBJS)
34
35$(LIBCOREUTILS_DIR)%.o: $(srcdir)/%.c
36 $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
37