projects
/
librecmc
/
librecmc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
084ed38
)
extend tmp/.target.mk to include target profile information - preparation for the...
author
Felix Fietkau
<nbd@openwrt.org>
Tue, 9 Jan 2007 19:15:27 +0000
(19:15 +0000)
committer
Felix Fietkau
<nbd@openwrt.org>
Tue, 9 Jan 2007 19:15:27 +0000
(19:15 +0000)
SVN-Revision: 6050
scripts/gen_target_mk.pl
patch
|
blob
|
history
diff --git
a/scripts/gen_target_mk.pl
b/scripts/gen_target_mk.pl
index 52f2a5c06d50b59ed8dcdf6e11a365d85b04e488..0e4d50a74cad2edc80c39e0c1657649abaf4cbd1 100755
(executable)
--- a/
scripts/gen_target_mk.pl
+++ b/
scripts/gen_target_mk.pl
@@
-10,6
+10,7
@@
use strict;
my @target;
my $target;
my @target;
my $target;
+my $profile;
while (<>) {
chomp;
while (<>) {
chomp;
@@
-17,18
+18,15
@@
while (<>) {
$target = {
id => $1,
board => $2,
$target = {
id => $1,
board => $2,
- kernel => $3
+ kernel => $3,
+ profiles => []
};
push @target, $target;
};
/^Target-Name:\s*(.+)\s*$/ and $target->{name} = $1;
/^Target-Path:\s*(.+)\s*$/ and $target->{path} = $1;
/^Target-Arch:\s*(.+)\s*$/ and $target->{arch} = $1;
};
push @target, $target;
};
/^Target-Name:\s*(.+)\s*$/ and $target->{name} = $1;
/^Target-Path:\s*(.+)\s*$/ and $target->{path} = $1;
/^Target-Arch:\s*(.+)\s*$/ and $target->{arch} = $1;
- /^Target-Features:\s*(.+)\s*$/ and do {
- my $f = [];
- $target->{features} = $f;
- @$f = split /\s+/, $1;
- };
+ /^Target-Features:\s*(.+)\s*$/ and $target->{features} = [ split(/\s+/, $1) ];
/^Target-Description:/ and do {
my $desc;
while (<>) {
/^Target-Description:/ and do {
my $desc;
while (<>) {
@@
-40,6
+38,17
@@
while (<>) {
/^Linux-Version:\s*(.+)\s*$/ and $target->{version} = $1;
/^Linux-Release:\s*(.+)\s*$/ and $target->{release} = $1;
/^Linux-Kernel-Arch:\s*(.+)\s*$/ and $target->{karch} = $1;
/^Linux-Version:\s*(.+)\s*$/ and $target->{version} = $1;
/^Linux-Release:\s*(.+)\s*$/ and $target->{release} = $1;
/^Linux-Kernel-Arch:\s*(.+)\s*$/ and $target->{karch} = $1;
+ /^Default-Packages:\s*(.+)\s*$/ and $target->{packages} = [ split(/\s+/, $1) ];
+ /^Target-Profile:\s*(.+)\s*$/ and do {
+ $profile = {
+ id => $1,
+ name => $1,
+ packages => []
+ };
+ push @{$target->{profiles}}, $profile;
+ };
+ /^Target-Profile-Name:\s*(.+)\s*$/ and $profile->{name} = $1;
+ /^Target-Profile-Packages:\s*(.*)\s*$/ and $profile->{packages} = [ split(/\s+/, $1) ];
}
@target = sort {
}
@target = sort {
@@
-47,8
+56,20
@@
while (<>) {
} @target;
foreach $target (@target) {
} @target;
foreach $target (@target) {
+ my ($profiles_def, $profiles_eval);
my $conf = uc $target->{kernel}.'_'.$target->{board};
$conf =~ tr/\.-/__/;
my $conf = uc $target->{kernel}.'_'.$target->{board};
$conf =~ tr/\.-/__/;
+
+ foreach my $profile (@{$target->{profiles}}) {
+ $profiles_def .= "
+ define Profile/$conf\_$profile->{id}
+ ID:=$profile->{id}
+ NAME:=$profile->{name}
+ PACKAGES:=".join(" ", @{$profile->{packages}})."
+ endef";
+ $profiles_eval .= "
+\$(eval \$(call Profile,$conf\_$profile->{id}))"
+ }
print <<EOF
ifeq (\$(CONFIG_LINUX_$conf),y)
define Target
print <<EOF
ifeq (\$(CONFIG_LINUX_$conf),y)
define Target
@@
-57,8
+78,8
@@
ifeq (\$(CONFIG_LINUX_$conf),y)
LINUX_VERSION:=$target->{version}
LINUX_RELEASE:=$target->{release}
LINUX_KARCH:=$target->{karch}
LINUX_VERSION:=$target->{version}
LINUX_RELEASE:=$target->{release}
LINUX_KARCH:=$target->{karch}
- endef
-endif
+ endef
$profiles_def
+endif
$profiles_eval
EOF
}
EOF
}