add a packaging method that installs files into a subdirectory of bin/ instead of an ipkg
SVN-Revision: 9060
This commit is contained in:
parent
03543ec4a4
commit
97b6135462
5 changed files with 42 additions and 1 deletions
31
include/package-bin.mk
Normal file
31
include/package-bin.mk
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2007 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(DUMP),)
|
||||||
|
define BuildTarget/bin
|
||||||
|
ifdef Package/$(1)/install
|
||||||
|
ifneq ($(CONFIG_PACKAGE_$(1))$(SDK)$(DEVELOPER),)
|
||||||
|
compile: install-bin-$(1)
|
||||||
|
else
|
||||||
|
compile: $(1)-disabled
|
||||||
|
$(1)-disabled:
|
||||||
|
@echo "WARNING: skipping $(1) -- package not selected"
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
install-bin-$(1): $(STAMP_BUILT)
|
||||||
|
rm -rf $(BIN_DIR)/$(1)
|
||||||
|
$(INSTALL_DIR) $(BIN_DIR)/$(1)
|
||||||
|
$(call Package/$(1)/install,$(BIN_DIR)/$(1))
|
||||||
|
|
||||||
|
clean-$(1):
|
||||||
|
rm -rf $(BIN_DIR)/$(1)
|
||||||
|
|
||||||
|
clean: clean-$(1)
|
||||||
|
.PHONY: install-bin-$(1)
|
||||||
|
endef
|
||||||
|
endif
|
|
@ -28,6 +28,7 @@ ifneq ($(DUMP),)
|
||||||
echo "Category: $(CATEGORY)"; \
|
echo "Category: $(CATEGORY)"; \
|
||||||
echo "Title: $(TITLE)"; \
|
echo "Title: $(TITLE)"; \
|
||||||
echo "Maintainer: $(MAINTAINER)"; \
|
echo "Maintainer: $(MAINTAINER)"; \
|
||||||
|
echo "Type: $(if $(Package/$(1)/targets),$(Package/$(1)/targets),$(if $(PKG_TARGETS),$(PKG_TARGETS),ipkg))"; \
|
||||||
$(if $(KCONFIG),echo "Kernel-Config: $(KCONFIG)";) \
|
$(if $(KCONFIG),echo "Kernel-Config: $(KCONFIG)";) \
|
||||||
echo -n "Description: "; \
|
echo -n "Description: "; \
|
||||||
getvar $(call shvar,Package/$(1)/description); \
|
getvar $(call shvar,Package/$(1)/description); \
|
||||||
|
|
|
@ -25,6 +25,7 @@ include $(INCLUDE_DIR)/quilt.mk
|
||||||
include $(INCLUDE_DIR)/package-defaults.mk
|
include $(INCLUDE_DIR)/package-defaults.mk
|
||||||
include $(INCLUDE_DIR)/package-dumpinfo.mk
|
include $(INCLUDE_DIR)/package-dumpinfo.mk
|
||||||
include $(INCLUDE_DIR)/package-ipkg.mk
|
include $(INCLUDE_DIR)/package-ipkg.mk
|
||||||
|
include $(INCLUDE_DIR)/package-bin.mk
|
||||||
|
|
||||||
override MAKEFLAGS=
|
override MAKEFLAGS=
|
||||||
export CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
|
export CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
|
||||||
|
|
|
@ -361,7 +361,7 @@ sub print_package_config_category($) {
|
||||||
print "\t";
|
print "\t";
|
||||||
$pkg->{menu} and print "menu";
|
$pkg->{menu} and print "menu";
|
||||||
print "config PACKAGE_".$pkg->{name}."\n";
|
print "config PACKAGE_".$pkg->{name}."\n";
|
||||||
print "\t\ttristate \"$title\"\n";
|
print "\t\t".($pkg->{tristate} ? 'tristate' : 'bool')." \"$title\"\n";
|
||||||
print "\t\tdefault y if DEFAULT_".$pkg->{name}."\n";
|
print "\t\tdefault y if DEFAULT_".$pkg->{name}."\n";
|
||||||
foreach my $default (split /\s*,\s*/, $pkg->{default}) {
|
foreach my $default (split /\s*,\s*/, $pkg->{default}) {
|
||||||
print "\t\tdefault $default\n";
|
print "\t\tdefault $default\n";
|
||||||
|
|
|
@ -63,6 +63,7 @@ sub parse_package_metadata($) {
|
||||||
$pkg->{depends} = [];
|
$pkg->{depends} = [];
|
||||||
$pkg->{builddepends} = [];
|
$pkg->{builddepends} = [];
|
||||||
$pkg->{subdir} = $subdir;
|
$pkg->{subdir} = $subdir;
|
||||||
|
$pkg->{tristate} = 1;
|
||||||
$package{$1} = $pkg;
|
$package{$1} = $pkg;
|
||||||
push @{$srcpackage{$src}}, $pkg;
|
push @{$srcpackage{$src}}, $pkg;
|
||||||
};
|
};
|
||||||
|
@ -88,6 +89,13 @@ sub parse_package_metadata($) {
|
||||||
push @{$category{$1}->{$src}}, $pkg;
|
push @{$category{$1}->{$src}}, $pkg;
|
||||||
};
|
};
|
||||||
/^Description: \s*(.*)\s*$/ and $pkg->{description} = "\t\t $1\n". get_multiline(*FILE, "\t\t ");
|
/^Description: \s*(.*)\s*$/ and $pkg->{description} = "\t\t $1\n". get_multiline(*FILE, "\t\t ");
|
||||||
|
/^Type: \s*(.+)\s*$/ and do {
|
||||||
|
$pkg->{type} = [ split /\s+/, $1 ];
|
||||||
|
undef $pkg->{tristate};
|
||||||
|
foreach my $type (@{$pkg->{type}}) {
|
||||||
|
$type =~ /ipkg/ and $pkg->{tristate} = 1;
|
||||||
|
}
|
||||||
|
};
|
||||||
/^Config: \s*(.*)\s*$/ and $pkg->{config} = "$1\n".get_multiline(*FILE);
|
/^Config: \s*(.*)\s*$/ and $pkg->{config} = "$1\n".get_multiline(*FILE);
|
||||||
/^Prereq-Check:/ and $pkg->{prereq} = 1;
|
/^Prereq-Check:/ and $pkg->{prereq} = 1;
|
||||||
/^Preconfig:\s*(.+)\s*$/ and do {
|
/^Preconfig:\s*(.+)\s*$/ and do {
|
||||||
|
|
Loading…
Reference in a new issue