[BusyBox] [patch] building out-of-tree
Bernhard Fischer
rep.nop at aon.at
Tue Aug 23 15:25:27 MDT 2005
Hi,
building out of tree didn't work.
Attached patch corrects this. Verified that building in-tree works as
before and out-of-tree work as expected.
Please apply.
-------------- next part --------------
\\ make -f ~/src/busybox/Makefile top_builddir=. top_srcdir=~/src/busybox
diff --exclude='*.diff' -aruNp busybox.oorig/e2fsprogs/Makefile.in busybox/e2fsprogs/Makefile.in
--- busybox.oorig/e2fsprogs/Makefile.in 2005-07-28 18:51:59.000000000 +0200
+++ busybox/e2fsprogs/Makefile.in 2005-08-23 22:28:25.000000000 +0200
@@ -18,12 +18,12 @@
#
E2FSPROGS_AR:=e2fsprogs.a
-ifndef $(E2FSPROGS_DIR)
+
E2FSPROGS_DIR:=$(top_builddir)/e2fsprogs/
-endif
+
srcdir=$(top_srcdir)/e2fsprogs
-E2FSPROGS_CFLAGS := -I$(E2FSPROGS_DIR) -include $(E2FSPROGS_DIR)e2fsbb.h
+E2FSPROGS_CFLAGS := -I$(srcdir) -include $(srcdir)/e2fsbb.h
BLKID_SRC := cache.c dev.c devname.c devno.c getsize.c llseek.c probe.c \
read.c resolve.c save.c tag.c resolve.c
@@ -63,5 +63,7 @@ libraries-y+=$(E2FSPROGS_DIR)$(E2FSPROGS
$(E2FSPROGS_DIR)$(E2FSPROGS_AR): $(patsubst %,$(E2FSPROGS_DIR)%, $(E2FSPROGS-y))
$(AR) $(ARFLAGS) $@ $(patsubst %,$(E2FSPROGS_DIR)%, $(E2FSPROGS-y))
+# for e2p/*: check if the dir exists, dude
$(E2FSPROGS_DIR)%.o: $(srcdir)/%.c
+ @[ -d $(@D) ] || mkdir -v $(@D)
$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(E2FSPROGS_CFLAGS) -c -o $@ $<
diff --exclude='*.diff' -aruNp busybox.oorig/Makefile busybox/Makefile
--- busybox.oorig/Makefile 2005-08-17 22:56:12.000000000 +0200
+++ busybox/Makefile 2005-08-23 22:29:20.000000000 +0200
@@ -37,7 +37,7 @@ endif
export srctree=$(top_srcdir)
vpath %/Config.in $(srctree)
-include $(top_builddir)/Rules.mak
+include $(top_srcdir)/Rules.mak
DIRS:=applets archival archival/libunarchive coreutils console-tools \
debianutils editors findutils init miscutils modutils networking \
@@ -219,7 +219,8 @@ include/bb_config.h: include/config.h
echo "#endif" >> $@
include/bbconfigopts.h: .config
- scripts/config/mkconfigs >include/bbconfigopts.h
+ @[ -d $(@D) ] || mkdir -v $(@D)
+ $(top_srcdir)/scripts/config/mkconfigs >include/bbconfigopts.h
finished2:
$(SECHO)
@@ -236,13 +237,13 @@ all: menuconfig
$(ALL_MAKEFILES): %/Makefile: $(top_srcdir)/%/Makefile
d=`dirname $@`; [ -d "$$d" ] || mkdir -p "$$d"; cp $< $@
-scripts/config/conf: scripts/config/Makefile Rules.mak
+scripts/config/conf: scripts/config/Makefile $(top_srcdir)/Rules.mak
$(MAKE) -C scripts/config conf
- at if [ ! -f .config ] ; then \
cp $(CONFIG_DEFCONFIG) .config; \
fi
-scripts/config/mconf: scripts/config/Makefile Rules.mak
+scripts/config/mconf: scripts/config/Makefile $(top_srcdir)/Rules.mak
$(MAKE) -C scripts/config ncurses conf mconf
- at if [ ! -f .config ] ; then \
cp $(CONFIG_DEFCONFIG) .config; \
diff --exclude='*.diff' -aruNp busybox.oorig/scripts/config/Makefile busybox/scripts/config/Makefile
--- busybox.oorig/scripts/config/Makefile 2005-04-24 21:31:01.000000000 +0200
+++ busybox/scripts/config/Makefile 2005-08-23 22:22:05.000000000 +0200
@@ -5,7 +5,7 @@
top_srcdir=../..
top_builddir=../..
srcdir=$(top_srcdir)/scripts/config
-include $(top_builddir)/Rules.mak
+include $(top_srcdir)/Rules.mak
all: ncurses conf mconf
@@ -41,6 +41,7 @@ MCONF_SRC = mconf.c
LXD_SRC = lxdialog/checklist.c lxdialog/menubox.c lxdialog/textbox.c \
lxdialog/yesno.c lxdialog/inputbox.c lxdialog/util.c \
lxdialog/msgbox.c
+
SHARED_SRC = zconf.tab.c
SHARED_DEPS := $(srcdir)/lkc.h $(srcdir)/lkc_proto.h \
lkc_defs.h $(srcdir)/expr.h zconf.tab.h
@@ -58,6 +59,7 @@ $(CONF_OBJS): %.o : $(srcdir)/%.c $(SHAR
$(HOSTCC) $(HOSTCFLAGS) -I. -c $< -o $@
$(MCONF_OBJS): %.o : $(srcdir)/%.c $(SHARED_DEPS)
+ @[ -d $(@D) ] || mkdir -v $(@D)
$(HOSTCC) $(HOSTCFLAGS) $(HOSTNCURSES) -I. -c $< -o $@
lkc_defs.h: $(srcdir)/lkc_proto.h
More information about the busybox
mailing list