X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/e8d897309949d4c2cc7a77ba0e6ca84f071fa6e9..45c7419a4f7a4436c27ffd62b1a05724c4ce6357:/openwrt/Makefile diff --git a/openwrt/Makefile b/openwrt/Makefile index e96618818..2fdc7647d 100644 --- a/openwrt/Makefile +++ b/openwrt/Makefile @@ -1,6 +1,6 @@ -# Makefile for OpenWRT +# Makefile for OpenWrt # -# Copyright (C) 2005 by Felix Fietkau +# Copyright (C) 2005 by Felix Fietkau # Copyright (C) 1999-2004 by Erik Andersen # # This program is free software; you can redistribute it and/or modify @@ -24,6 +24,7 @@ #-------------------------------------------------------------- TOPDIR=${shell pwd} export TOPDIR + ifneq ($(DEVELOPER),) CONFIG_CONFIG_IN = Config.in.devel else @@ -33,7 +34,7 @@ CONFIG_DEFCONFIG = .defconfig CONFIG = package/config noconfig_targets := menuconfig config oldconfig randconfig \ - defconfig allyesconfig allnoconfig release tags + defconfig allyesconfig allnoconfig tags # Pull in the user's configuration file ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),) @@ -46,23 +47,7 @@ include $(TOPDIR)/rules.mk all: world .NOTPARALLEL: - -############################################################## -# -# Build the toolchain -# -############################################################## -toolchain_install: - $(MAKE) -C toolchain install - -############################################################## -# -# Make all packages -# -############################################################## - -package_install: toolchain - $(MAKE) -C package compile install +.PHONY: all world clean dirclean distclean image_clean target_clean source configtest ############################################################# # @@ -71,28 +56,19 @@ package_install: toolchain # ############################################################# - # In this section, we need .config include .config.cmd -world: $(DL_DIR) $(BUILD_DIR) configtest target_prepare $(TARGET_DIR) toolchain_install package_install target_install package_index - -.PHONY: all world clean dirclean distclean image_clean target_clean source target_prepare target_install toolchain_install package_install configtest +world: $(DL_DIR) $(BUILD_DIR) configtest + $(MAKE) toolchain/install target/compile package/compile root_clean package/install target/install package_index + @$(TRACE) Build complete. configtest: -cp .config .config.test -scripts/configtest.pl package_index: - (cd $(PACKAGE_DIR); \ - $(STAGING_DIR)/usr/bin/ipkg-make-index . > Packages \ - ) - -target_prepare: - $(MAKE) -C target prepare - -target_install: - $(MAKE) -C target install + (cd $(PACKAGE_DIR); $(STAGING_DIR)/usr/bin/ipkg-make-index . > Packages) $(DL_DIR): @mkdir -p $(DL_DIR) @@ -100,38 +76,45 @@ $(DL_DIR): $(BUILD_DIR): @mkdir -p $(BUILD_DIR) -source: $(TARGETS_SOURCE) +source: toolchain/source package/source target/source + +package/%: + @$(TRACE) $@ + $(MAKE) -C package $(patsubst package/%,%,$@) + +target/%: + @$(TRACE) $@ + $(MAKE) -C target $(patsubst target/%,%,$@) + +toolchain/%: + @$(TRACE) $@ + $(MAKE) -C toolchain $(patsubst toolchain/%,%,$@) ############################################################# # # Cleanup and misc junk # ############################################################# -image_clean: +root_clean: + @$(TRACE) root_clean + rm -rf $(BUILD_DIR)/linux-*/root $(BUILD_DIR)/root + +target_clean: root_clean rm -f $(STAMP_DIR)/.*-compile rm -f $(STAMP_DIR)/.*-install rm -rf $(BIN_DIR) - -target_clean: image_clean - rm -rf $(TARGET_DIR) -clean: target_clean - @$(MAKE) -C $(CONFIG) clean +clean: dirclean -dirclean: clean +dirclean: + @$(TRACE) dirclean + @$(MAKE) -C $(CONFIG) clean rm -rf $(BUILD_DIR) -distclean: clean - rm -rf $(STAMP_DIR) $(DL_DIR) $(BUILD_DIR) $(TOOL_BUILD_DIR) $(STAGING_DIR) +distclean: dirclean + rm -rf $(STAMP_DIR) $(DL_DIR) $(TOOL_BUILD_DIR) $(STAGING_DIR) rm -f .config* .tmpconfig.h -sourceball: distclean - set -e; \ - cd ..; \ - rm -f buildroot.tar.bz2; \ - tar -cvf buildroot.tar buildroot; \ - bzip2 -9 buildroot.tar; \ - else # ifeq ($(strip $(BR2_HAVE_DOT_CONFIG)),y) all: menuconfig @@ -175,8 +158,6 @@ randconfig: $(CONFIG)/conf -./scripts/configtest.pl allyesconfig: $(CONFIG)/conf - #@$(CONFIG)/conf -y $(CONFIG_CONFIG_IN) - #sed -i -e "s/^CONFIG_DEBUG.*/# CONFIG_DEBUG is not set/" .config -touch .config -cp .config .config.test @$(CONFIG)/conf -o $(CONFIG_CONFIG_IN) @@ -195,7 +176,3 @@ defconfig: $(CONFIG)/conf -./scripts/configtest.pl endif # ifeq ($(strip $(BR2_HAVE_DOT_CONFIG)),y) - -.PHONY: dummy subdirs release distclean clean config oldconfig \ - menuconfig tags check test depend -