From b64d24928b353bd6c263190c903590632da6ac53 Mon Sep 17 00:00:00 2001 From: Mike Baker Date: Tue, 16 May 2006 00:32:57 +0000 Subject: [PATCH] finish up package makefile SVN-Revision: 3786 --- openwrt/Config.in | 7 +++++++ openwrt/package/Makefile | 19 ++++++++++++++----- openwrt/package/ipsec-tools/Makefile | 6 ++++++ openwrt/scripts/gen_deps.pl | 17 ++++++++++++----- 4 files changed, 39 insertions(+), 10 deletions(-) diff --git a/openwrt/Config.in b/openwrt/Config.in index 71db916c6e..ae959f683e 100644 --- a/openwrt/Config.in +++ b/openwrt/Config.in @@ -18,6 +18,10 @@ config ALL bool "Select all packages by default" default n +config WGET + string + default "wget --passive-ftp -nd" + menuconfig BUILDOPTS bool "Build Options" if DEVEL @@ -37,3 +41,6 @@ source "toolchain/Config.in" source "target/linux/Config.in" source ".config.in" +menu "busybox" +source "package/busybox/config/Config.in" +endmenu diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile index e0bd23c7ec..af746715ba 100644 --- a/openwrt/package/Makefile +++ b/openwrt/package/Makefile @@ -1,13 +1,11 @@ # Main makefile for the packages include $(TOPDIR)/rules.mk +include $(TOPDIR)/.config +include .pkgdeps + COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m)) INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y)) -all: compile -clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m)) -compile: $(COMPILE_PACKAGES) -install: base-files-install $(INSTALL_PACKAGES) - $(STAMP_DIR) $(TARGET_DIR): mkdir -p $@ @@ -15,8 +13,19 @@ $(STAMP_DIR) $(TARGET_DIR): $(MAKE) -C $(patsubst %-prepare,%,$@) prepare %-compile: $(STAMP_DIR) $(TARGET_DIR) + @echo "-> make $@" $(MAKE) -C $(patsubst %-compile,%,$@) compile %-clean: $(STAMP_DIR) $(TARGET_DIR) $(MAKE) -C $(patsubst %-clean,%,$@) clean + +.pkgdeps: $(TOPDIR)/.pkginfo FORCE + @$(TOPDIR)/scripts/gen_deps.pl < $< > $@ || rm -f $@ + +all: compile +clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m)) +compile: $(COMPILE_PACKAGES) +install: base-files-install $(INSTALL_PACKAGES) + + diff --git a/openwrt/package/ipsec-tools/Makefile b/openwrt/package/ipsec-tools/Makefile index 9e14b40075..e85f09d89c 100644 --- a/openwrt/package/ipsec-tools/Makefile +++ b/openwrt/package/ipsec-tools/Makefile @@ -12,6 +12,8 @@ PKG_SOURCE_URL:=@SF/ipsec-tools PKG_MD5SUM:=d0242a943c82c0cbf28005966ff35e21 PKG_CAT:=bzcat +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + include $(TOPDIR)/package/rules.mk define Package/ipsec-tools @@ -66,6 +68,10 @@ define Build/Configure ); endef +define Build/Compile + $(call Build/Compile/Default,install) +endef + define Package/ipsec-tools/install install -d -m0755 $(1)/etc install -d -m0755 $(1)/usr/lib/ diff --git a/openwrt/scripts/gen_deps.pl b/openwrt/scripts/gen_deps.pl index a910a9937b..ef49fa3f41 100755 --- a/openwrt/scripts/gen_deps.pl +++ b/openwrt/scripts/gen_deps.pl @@ -24,16 +24,23 @@ while ($line = <>) { }; } +$line=""; + foreach $name (sort {uc($a) cmp uc($b)} keys %pkg) { + print "package-\$(CONFIG_PACKAGE_$name) += $pkg{$name}->{src}\n"; + my $hasdeps = 0; - $line = "$pkg{$name}->{src}-compile:"; + my $depline = ""; foreach my $dep (@{$pkg{$name}->{depends}}) { if (defined $pkg{$dep}->{src} && $pkg{$name}->{src} ne $pkg{$dep}->{src}) { - $hasdeps = 1; - $line .= " $pkg{$dep}->{src}-compile"; + $depline .= " $pkg{$dep}->{src}-compile"; } } - if ($hasdeps) { - print "$line\n"; + if ($depline ne "") { + $line .= "$pkg{$name}->{src}-compile: $depline\n"; } } + +if ($line ne "") { + print "\n$line"; +}