fix and enable the sdk

SVN-Revision: 4037
This commit is contained in:
Felix Fietkau 2006-06-21 03:17:13 +00:00
parent 6449bbd082
commit 1f20179ce5
8 changed files with 115 additions and 93 deletions

View File

@ -40,7 +40,42 @@ config JLEVEL
help help
Number of jobs to run simultanesouly Number of jobs to run simultanesouly
source "target/sdk/Config.in"
source "toolchain/Config.in" source "toolchain/Config.in"
menu "Target Images"
config TARGET_ROOTFS_INITRAMFS
bool "ramdisk"
default n
depends LINUX_2_6
help
Embed the rootfs into the kernel (initramfs)
config TARGET_ROOTFS_JFFS2
bool "jffs2"
default y
depends !TARGET_ROOTFS_INITRAMFS
help
Build a jffs2 root filesystem
config TARGET_ROOTFS_SQUASHFS
bool "squashfs"
default y
depends !LINUX_2_6_ARUBA
depends !LINUX_2_6_XSCALE
depends !TARGET_ROOTFS_INITRAMFS
help
Build a squashfs-lzma root filesystem
config TARGET_ROOTFS_TGZ
bool "tgz"
default y if !LINUX_2_4_BRCM && !LINUX_2_6_BRCM && !LINUX_2_6_ARUBA && !LINUX_2_4_AR531X
depends !TARGET_ROOTFS_INITRAMFS
help
Build a compressed tar archive of the the root filesystem
endmenu
source "target/linux/Config.in" source "target/linux/Config.in"
source ".config.in" source ".config.in"

View File

@ -27,9 +27,12 @@ $(STAMP_DIR) $(TARGET_DIR):
%-clean: $(STAMP_DIR) $(TARGET_DIR) %-clean: $(STAMP_DIR) $(TARGET_DIR)
$(MAKE) -C $(patsubst %-clean,%,$@) clean MAKEFLAGS="$(BUILD_MAKEFLAGS)" $(MAKE) -C $(patsubst %-clean,%,$@) clean MAKEFLAGS="$(BUILD_MAKEFLAGS)"
ifeq ($(SDK),1)
GENDEP_OPTS := -s
endif
$(TOPDIR)/.pkgdeps: $(TOPDIR)/.pkginfo $(TOPDIR)/.pkgdeps: $(TOPDIR)/.pkginfo
@$(TOPDIR)/scripts/gen_deps.pl < $< > $@ || rm -f $@ @$(TOPDIR)/scripts/gen_deps.pl $(GENDEP_OPTS) < $< > $@ || rm -f $@
all: compile all: compile
clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m)) clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m))

View File

@ -5,16 +5,18 @@ all: install
$(BIN_DIR): $(BIN_DIR):
mkdir -p $(BIN_DIR) mkdir -p $(BIN_DIR)
TARGETS:=linux utils TARGETS-y := linux utils
TARGETS-$(CONFIG_SDK) += sdk
linux-compile: utils-install linux-compile: utils-install
linux-install: $(BIN_DIR) linux-install: $(BIN_DIR)
sdk-compile: linux-install
download: $(patsubst %,%-source,$(TARGETS)) download: $(patsubst %,%-source,$(TARGETS-y))
prepare: linux-prepare prepare: linux-prepare
compile: linux-compile compile: linux-compile
install: image_clean linux-install install: image_clean $(patsubst %,%-install,$(TARGETS-y))
clean: $(patsubst %,%-clean,$(TARGETS)) image_clean clean: $(patsubst %,%-clean,$(TARGETS-y)) image_clean
image_clean: FORCE image_clean: FORCE
rm -f $(BIN_DIR)/openwrt-* rm -f $(BIN_DIR)/openwrt-*

View File

@ -1,36 +1,3 @@
menu "Target Root Filesystem"
config TARGET_ROOTFS_INITRAMFS
bool "ramdisk"
default n
depends LINUX_2_6
help
Embed the rootfs into the kernel (initramfs)
config TARGET_ROOTFS_JFFS2
bool "jffs2"
default y
depends !TARGET_ROOTFS_INITRAMFS
help
Build a jffs2 root filesystem
config TARGET_ROOTFS_SQUASHFS
bool "squashfs"
default y
depends !LINUX_2_6_ARUBA
depends !LINUX_2_6_XSCALE
depends !TARGET_ROOTFS_INITRAMFS
help
Build a squashfs-lzma root filesystem
config TARGET_ROOTFS_TGZ
bool "tgz"
default y if !LINUX_2_4_BRCM && !LINUX_2_6_BRCM && !LINUX_2_6_ARUBA && !LINUX_2_4_AR531X
depends !TARGET_ROOTFS_INITRAMFS
help
Build a compressed tar archive of the the root filesystem
endmenu
menu "Kernel Configuration / Device Support" menu "Kernel Configuration / Device Support"
comment "Device specific configuration" comment "Device specific configuration"

View File

@ -1,9 +1,9 @@
config PACKAGE_SDK config SDK
bool "OpenWrt SDK" bool "Build the OpenWrt SDK"
default y if DEVEL default n
help help
Build an OpenWrt SDK.
This is essentially a stripped-down version of the buildroot This is essentially a stripped-down version of the buildroot
with a precompiled toolchain. It can be used to develop and with a precompiled toolchain. It can be used to develop and
test packages for OpenWrt before including them in the buildroot test packages for OpenWrt before including them in the buildroot

View File

@ -1,33 +1,30 @@
# $Id$ # $Id$
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_OS:=$(shell uname -s) PKG_OS:=$(shell uname -s)
PKG_CPU:=$(shell uname -m) PKG_CPU:=$(shell uname -m)
PKG_RELEASE:=1 SDK_NAME:=OpenWrt-SDK-$(BOARD)-$(KERNEL)-for-$(PKG_OS)-$(PKG_CPU)
SDK_NAME:=OpenWrt-SDK-$(PKG_OS)-$(PKG_CPU)-$(PKG_RELEASE)
SDK_BUILD_DIR:=$(BUILD_DIR)/$(SDK_NAME) SDK_BUILD_DIR:=$(BUILD_DIR)/$(SDK_NAME)
all: compile all: compile
$(BIN_DIR)/$(SDK_NAME).tar.bz2: $(BIN_DIR)/$(SDK_NAME).tar.bz2:
(cd $(STAGING_DIR); \ (cd $(STAGING_DIR); \
rm -rf info man share; \ rm -rf info man share stampfiles; \
cd usr; \ cd usr; \
rm -rf doc info man share; \ rm -rf doc info man share; \
) )
rm -rf $(SDK_BUILD_DIR) rm -rf $(SDK_BUILD_DIR)
mkdir -p $(SDK_BUILD_DIR)/dl $(SDK_BUILD_DIR)/examples $(SDK_BUILD_DIR)/package mkdir -p $(SDK_BUILD_DIR)/dl $(SDK_BUILD_DIR)/package
$(CP) $(STAGING_DIR) $(SCRIPT_DIR) $(TOPDIR)/docs $(SDK_BUILD_DIR)/ $(CP) $(STAGING_DIR) $(INCLUDE_DIR) $(SCRIPT_DIR) $(TOPDIR)/docs $(SDK_BUILD_DIR)/
$(CP) $(TOPDIR)/package/strace $(TOPDIR)/package/iproute2 $(SDK_BUILD_DIR)/examples $(CP) $(TOPDIR)/rules.mk $(TOPDIR)/.config $(SDK_BUILD_DIR)/
$(CP) $(TOPDIR)/rules.mk $(SDK_BUILD_DIR)/ $(CP) $(TOPDIR)/package/Makefile $(SDK_BUILD_DIR)/package/
$(CP) ./files/Makefile.sdk $(SDK_BUILD_DIR)/Makefile $(CP) ./files/Makefile.sdk $(SDK_BUILD_DIR)/Makefile
$(CP) ./files/README.SDK $(SDK_BUILD_DIR)/ $(CP) ./files/README.SDK $(SDK_BUILD_DIR)/
$(CP) ./files/depend.mk $(SDK_BUILD_DIR)/package/ echo OPENWRTVERSION:=$(OPENWRTVERSION) > $(SDK_BUILD_DIR)/.version.mk
$(CP) $(TOPDIR)/package/rules.mk $(SDK_BUILD_DIR)/package/
egrep '^CONFIG_(ARCH|WGET|STAGING|JLEVEL|LARGEFILE|TARGET_OPT)' $(TOPDIR)/.config > $(SDK_BUILD_DIR)/.config
find $(SDK_BUILD_DIR) -name .svn | xargs rm -rf find $(SDK_BUILD_DIR) -name .svn | xargs rm -rf
find $(SDK_BUILD_DIR) -name CVS | xargs rm -rf find $(SDK_BUILD_DIR) -name CVS | xargs rm -rf
(cd $(BUILD_DIR); \ (cd $(BUILD_DIR); \

View File

@ -1,42 +1,66 @@
# OpenWrt SDK Makefile # Makefile for OpenWrt
TOPDIR:=${shell pwd} #
# Copyright (C) 2006 by Felix Fietkau <openwrt@nbd.name>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
RELEASE:=Kamikaze
#VERSION:=2.0 # uncomment for final release
#--------------------------------------------------------------
# Just run 'make menuconfig', configure stuff, then run 'make'.
# You shouldn't need to mess with anything beyond this point...
#--------------------------------------------------------------
TOPDIR=${shell pwd}
export TOPDIR export TOPDIR
DEVELOPER:=1
include $(TOPDIR)/.version.mk
export OPENWRTVERSION
DEVELOPER=1
export DEVELOPER export DEVELOPER
include $(TOPDIR)/rules.mk all: world
include $(TOPDIR)/package/depend.mk
PACKAGES:=$(filter-out %.mk,$(shell ls $(TOPDIR)/package)) .pkginfo: FORCE
PACKAGES_PREPARE:=$(foreach package,$(PACKAGES),$(package)-prepare) ifneq ($(shell ./scripts/timestamp.pl -p .pkginfo package Makefile),.pkginfo)
PACKAGES_COMPILE:=$(foreach package,$(PACKAGES),$(package)-compile) @echo Collecting package info...
PACKAGES_CLEAN:=$(foreach package,$(PACKAGES),$(package)-clean) @-for dir in package/*/; do \
echo Source-Makefile: $${dir}Makefile; \
$(MAKE) --no-print-dir DUMP=1 -C $$dir 2>&- || true; \
done > $@
endif
all: compile package_index pkginfo-clean: FORCE
compile: $(PACKAGES_COMPILE) -rm -f .pkginfo .config.in
clean: $(PACKAGES_CLEAN)
rm -rf $(BUILD_DIR) package/%: .pkginfo FORCE
rm -rf bin $(MAKE) -C package $(patsubst package/%,%,$@) SDK=1
download: FORCE
$(MAKE) package/download
world: FORCE
$(MAKE) package/compile
clean: FORCE
rm -rf build_* bin
distclean: clean distclean: clean
rm -rf $(DL_DIR) rm -rf dl .pkg*
%-prepare: $(BUILD_DIR)
@$(MAKE) -C package/$(patsubst %-prepare,%,$@) prepare
%-compile: %-prepare
@$(MAKE) -C package/$(patsubst %-compile,%,$@) compile
%-clean:
@$(MAKE) -C package/$(patsubst %-clean,%,$@) clean
$(BUILD_DIR):
mkdir -p $@
mkdir -p $(DL_DIR)
package_index:
(cd $(PACKAGE_DIR); \
$(STAGING_DIR)/usr/bin/ipkg-make-index . > Packages \
)
.PHONY: FORCE
FORCE:

View File

@ -1,6 +0,0 @@
# You can put your package dependencies in here
# Example (make openvpn depend on openssl):
# openvpn-compile: openssl-compile
#
# Note: This file is not present in the full buildroot. There you
# have to put your package dependencies in buildroot/package/Makefile