From d6aaf0be5bfa8e5944d9ae44cf175f9388564ac6 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 16 Sep 2010 20:08:16 +0200 Subject: fintune rebuild stuff, fix some warnings --- Makefile | 3 ++- mk/build.mk | 45 ++++++++++++++++++++++----------------------- package/Makefile | 2 +- package/base-files/Makefile | 2 +- package/busybox/Makefile | 13 ++++--------- tools/Makefile | 7 ------- 6 files changed, 30 insertions(+), 42 deletions(-) diff --git a/Makefile b/Makefile index faf9bf831..449d3eb8a 100644 --- a/Makefile +++ b/Makefile @@ -209,7 +209,7 @@ NO_ERROR=0 @echo 'LC_ALL:=C' >>prereq.mk @echo 'MAKE:=$${GMAKE}' >>prereq.mk @echo "OStype:=$$(env uname)" >>prereq.mk - @echo "ADKtype:=$$(cat /etc/adktarget)" >>prereq.mk + @echo "ADKtype:=$$(cat /etc/adktarget 2>/dev/null)" >>prereq.mk @echo "_PATH:=$$PATH" >>prereq.mk @echo "PATH:=\$${TOPDIR}/scripts:/usr/sbin:$$PATH" >>prereq.mk @echo "SHELL:=$$(which bash)" >>prereq.mk @@ -217,6 +217,7 @@ NO_ERROR=0 CC='${CC}' CPPFLAGS='${CPPFLAGS}' \ bash scripts/scan-tools.sh @echo '===> Prerequisites checked successfully.' + @touch .adkinit @touch $@ .PHONY: prereq prereq-noerror diff --git a/mk/build.mk b/mk/build.mk index f155807e2..71fad8cae 100644 --- a/mk/build.mk +++ b/mk/build.mk @@ -65,6 +65,8 @@ noconfig_targets:= menuconfig \ tags POSTCONFIG= -@\ + if [ -f .adkinit ];then rm .adkinit;\ + else \ if [ -f .config.old ];then \ $(TOPDIR)/bin/tools/pkgrebuild;\ rebuild=0; \ @@ -79,6 +81,7 @@ POSTCONFIG= -@\ if [ $$rebuild -eq 1 ];then \ cp .config .config.old;\ fi; \ + fi; \ fi # Pull in the user's configuration file @@ -184,7 +187,6 @@ newpackage: $(SED) 's#@PKG@#$(PKG)#' $(TOPDIR)/package/$(PKG)/Makefile $(SED) 's#@VER@#$(VER)#' $(TOPDIR)/package/$(PKG)/Makefile @echo "Edit package/$(PKG)/Makefile to complete" - @echo "choose PKG_SECTION to add it to an existent submenu" root_clean: @$(TRACE) root_clean @@ -208,9 +210,8 @@ clean: done \ done rm -rf $(BUILD_DIR) $(BIN_DIR) $(TARGET_DIR) \ - ${TOPDIR}/.cfg_${ADK_TARGET}_${ADK_LIBC} \ ${TOPDIR}/package/pkglist.d - rm -f ${TOPDIR}/package/*/info.mk ${TOPDIR}/package/Depends.mk + rm -f ${TOPDIR}/package/Depends.mk cleankernel: @$(TRACE) cleankernel @@ -218,34 +219,28 @@ cleankernel: cleandir: @$(TRACE) cleandir - @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) + @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) rm -rf $(BUILD_DIR_PFX) $(BIN_DIR_PFX) $(TARGET_DIR_PFX) \ - ${TOPDIR}/.cfg* ${TOPDIR}/package/pkglist.d - rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) \ - $(TOOLS_BUILD_DIR) - rm -f .menu .tmpconfig.h ${TOPDIR}/package/*/info.mk \ + ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d + rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) $(TOOLS_BUILD_DIR) + rm -f .menu .tmpconfig.h .rebuild* \ ${TOPDIR}/package/Depends.mk ${TOPDIR}/prereq.mk \ - .busyboxcfg cleantarget: @$(TRACE) cleantarget @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) - rm -rf $(BUILD_DIR) $(BIN_DIR) $(TARGET_DIR) \ - ${TOPDIR}/.cfg_${ADK_TARGET}_${ADK_LIBC} + rm -rf $(BUILD_DIR) $(BIN_DIR) $(TARGET_DIR) rm -rf $(TOOLCHAIN_BUILD_DIR) $(STAGING_PARENT) - rm -f .tmpconfig.h ${TOPDIR}/package/*/info.mk \ - .busyboxcfg all.config .defconfig + rm -f .tmpconfig.h all.config .defconfig distclean: @$(TRACE) distclean @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) @rm -rf $(BUILD_DIR_PFX) $(BIN_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \ - ${TOPDIR}/.cfg* ${TOPDIR}/package/pkglist.d - @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) \ - $(TOOLS_BUILD_DIR) + ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d + @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) $(TOOLS_BUILD_DIR) @rm -f .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \ - .menu ${TOPDIR}/package/*/info.mk ${TOPDIR}/package/Depends.mk \ - .busyboxcfg .ADK_HAVE_DOT_CONFIG + .menu ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG .rebuild.* else # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y) @@ -432,14 +427,14 @@ menuconfig: $(CONFIG)/mconf defconfig .menu package/Config.in.auto @$(CONFIG)/mconf $(CONFIG_CONFIG_IN) ${POSTCONFIG} -guiconfig: $(CONFIG)/gconf defconfig .menu +guiconfig: $(CONFIG)/gconf defconfig .menu package/Config.in.auto @if [ ! -f .config ];then \ $(CONFIG)/conf -D .defconfig $(CONFIG_CONFIG_IN); \ fi @$(CONFIG)/gconf $(CONFIG_CONFIG_IN) ${POSTCONFIG} -_config: $(CONFIG)/conf .menu +_config: $(CONFIG)/conf .menu package/Config.in.auto -@touch .config @$(CONFIG)/conf ${W} $(CONFIG_CONFIG_IN) ${POSTCONFIG} @@ -452,10 +447,10 @@ _mconfig2: ${CONFIG}/conf modconfig .menu distclean: @$(MAKE) -C $(CONFIG) clean @rm -rf $(BUILD_DIR_PFX) $(BIN_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \ - ${TOPDIR}/.cfg* ${TOPDIR}/package/pkglist.d + ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) $(TOOLS_BUILD_DIR) @rm -f .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \ - .menu ${TOPDIR}/package/*/info.mk ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG + .menu .rebuild.* ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG endif # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y) @@ -513,7 +508,11 @@ ${TOPDIR}/bin/tools/pkgmaker: @mkdir -p $(TOPDIR)/bin/tools @$(HOSTCC) -g -o $@ tools/adk/pkgmaker.c tools/adk/sortfile.c tools/adk/strmap.c -package/Config.in.auto menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile) ${TOPDIR}/bin/tools/pkgmaker +${TOPDIR}/bin/tools/pkgrebuild: + @mkdir -p $(TOPDIR)/bin/tools + @$(HOSTCC) -g -o $@ tools/adk/pkgrebuild.c tools/adk/strmap.c + +package/Config.in.auto menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile) ${TOPDIR}/bin/tools/pkgmaker ${TOPDIR}/bin/tools/pkgrebuild @echo "Generating menu structure ..." @$(TOPDIR)/bin/tools/pkgmaker @:>.menu diff --git a/package/Makefile b/package/Makefile index e271216dd..12058a8dd 100644 --- a/package/Makefile +++ b/package/Makefile @@ -39,7 +39,7 @@ ifeq ($(ADK_TOOLCHAIN_ONLY),y) compile: $(REBUILD_PACKAGES) $(COMPILE_PACKAGES) install: $(INSTALL_PACKAGES) else -compile: base-files-compile $(REBUILD_PACKAGES) $(COMPILE_PACKAGES) +compile: $(REBUILD_PACKAGES) base-files-compile $(COMPILE_PACKAGES) install: base-files-install $(INSTALL_PACKAGES) endif diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 0bc6bb079..c0d7a0724 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -66,7 +66,7 @@ endif echo $(ADK_RUNTIME_HOSTNAME) > \ $(IDIR_BASE_FILES)/etc/hostname test -z $(ADK_RUNTIME_PASSWORD) || \ - $(SED) 's,\*NP\*,'"$$(${STAGING_TOOLS}/bin/mkcrypt \ + $(SED) 's,\*NP\*,'"$$(${TOPDIR}/bin/tools/mkcrypt \ ${ADK_RUNTIME_PASSWORD}),g" $(IDIR_BASE_FILES)/etc/shadow git log -1|head -1|sed -e 's#commit ##' \ > $(IDIR_BASE_FILES)/etc/adkversion diff --git a/package/busybox/Makefile b/package/busybox/Makefile index 1f56f057b..efae99f2a 100644 --- a/package/busybox/Makefile +++ b/package/busybox/Makefile @@ -31,15 +31,10 @@ CONFIG_STYLE:= manual BUILD_STYLE:= manual INSTALL_STYLE:= manual -${TOPDIR}/.busyboxcfg: ${TOPDIR}/.config +do-configure: grep BUSYBOX_ $(TOPDIR)/.config|sed -e 's/BUSYBOX_/CONFIG_/' > \ - ${TOPDIR}/.busyboxcfg - -${WRKBUILD}/.config: ${TOPDIR}/.busyboxcfg - cp $(TOPDIR)/.busyboxcfg ${WRKBUILD}/.config + ${WRKBUILD}/.config $(SED) 's;@IDIR@;${WRKINST};' ${WRKBUILD}/.config - -do-configure: ${WRKBUILD}/.config ifeq ($(ADK_NATIVE),y) yes '' | \ $(MAKE) V=1 \ @@ -52,7 +47,7 @@ else ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE) endif -do-build: do-configure +do-build: ifeq ($(ADK_NATIVE),y) $(MAKE) V=1 \ IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox @@ -61,7 +56,7 @@ else IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox endif -do-install: ${WRKBUILD}/.config ${SUB_INSTALLS-m} ${SUB_INSTALLS-y} +do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y} ifeq ($(ADK_NATIVE),y) $(MAKE) V=1 \ IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) install $(MAKE_TRACE) diff --git a/tools/Makefile b/tools/Makefile index b828f6765..5d0f91872 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -12,13 +12,6 @@ compile: install: $(TARGETS_INSTALL) clean: $(TARGETS_CLEAN) -$(TOOLS_BUILD_DIR): - mkdir -p $(TOOLS_BUILD_DIR) - -%-download: - $(TRACE) "tools/$(patsubst %-download,%,$@)/download " - $(MAKE) -C $(patsubst %-download,%,$@) fetch - %-compile: $(TOOLS_BUILD_DIR) $(TRACE) "tools/$(patsubst %-compile,%,$@)/compile " $(MAKE) -C $(patsubst %-compile,%,$@) compile -- cgit v1.2.3